Отчет по лабораторной работе 2 По учебной дисциплине Алгоритмические языки и программирование
Скачать 227.48 Kb.
|
Московский Авиационный Институт (Национальный исследовательский университет) Факультет №3 Системы управления, информатика и электроэнергетика Кафедра 304 Отчет по лабораторной работе №2 По учебной дисциплине «Алгоритмические языки и программирование» Группа: М3О-104Б-19 Вариант №7
Москва 2020Задание Из входного файла, названного input.txt считать строку маленьких латинских букв(не более 80). Начиная с 7 символа: 1)Удалить 7 символов 2)Пропустить 7 символов 3)Заменить 7 символов на последовательность цифр 4)Отсортировать методом быстрой сортировки в сторону убывания. 5)Вывести получившуюся строку на экран и в файл output.txt Блок схема Код программы //Lab_Rab_2 KOPANENKO_ARTYOM_M3O-104B-19_7_VARIANT_16/05/2020 #include #include #include char deleted(char a[80], long ot, long sk) { int i,j,k=0; i=j=0; --ot; sk=sk+ot-1; do{ if((i { a[j]=a[i]; j++; } i++; }while(a[i]!='\0'); for(k=j;k<=i;k++){ a[k]=*""; }; return(*a); } char zamena(char a[80], long ot) { int k=0,k1=0; char c[80],d[80]; char b[]="1234567"; strcpy(c,a); strcpy(d,a); strcpy(c+ot,b); k=strlen(c); k1=strlen(a); for(int n=k1;n>=k;n--) {c[n]=d[n];} for(n=1;n<=k1;n++) {a[n]=c[n];} return(*a); } char quickSortR(char a[80], int N) { int i = 0, j = N; char temp, p; p = a[N]; do { while ( a[i] < p ) i++; while ( a[j] > p ) j--; if (i <= j) { temp = a[i]; a[i] = a[j]; a[j] = temp; i++; j--; } } while ( i<=j ); if ( j > 0 ) quickSortR(a, j); if ( N > i ) quickSortR(a+i, N-i); return(*a); } main(){ int j=0; clrscr(); char vvod[80]; FILE *fin,*fout; fin=fopen("input.txt","r"); fout=fopen("output.txt","w"); printf("vveli stroku\n"); /*printf("vveditye stroku\n"); gets(vvod);*/ fgets(vvod,80,fin); printf(vvod); printf(" - sobral \n"); deleted(vvod,7,7); printf(vvod); printf(" - udalil \n"); while(vvod[j]!='\0'){ j++; }; printf(vvod); printf(" - propustil \n"); zamena(vvod,14); printf(vvod); printf(" - zamenil \n"); quickSortR(vvod, j-1); printf(vvod); printf(" - sortanul "); fprintf(fout,vvod); printf("vivod v fail"); printf(" end"); getch(); fclose(fout); return(0); } Р езультат Вывод В ходе выполнения лабораторной работы была считана буквенная строка из файла input.txt. Из этой строки были удалены 7 символов, пропущены 7 символов и заменены 7 символов на последовательность цифр. Затем полученная строка была отсортирована методом быстрой сортировки в сторону убывания. В конце полученная строка была выведена на экран и в файл output.txt. |