Результат виконання програми

Оглядові запитання

1. З чим проводяться маніпуляції порівняння з рядками та символами в всередині комп’ютера?

2. Як виводиться виявлення колів?

3. Який стандарт виконується для латиниці?

4. Що виконує функція strcmp?

5. Що визначає символ порівняння!=?

6. Що визначає символ порівняння ==?

7. Що визначає символ порівняння <=?

8. Що визначає символ порівняння >?

9. Що визначає вираз i++?

10. Що визначає вираз +=i?

11. Що визначає вираз i--?

12. Що визначає функція cout<<


Лабораторна робота № 24. Сортування масивів рядків

Мета:

Здобути навики використання середовища розробки мови C++, познайомитися з сортування масивів рядків, здобути навички написання програм.

Короткі теоретичні відомості до роботи.

Розглянемо програму сортування масиву рядків tL і tR по алфавіту за допомогою функцій strcmp і strcpy.

Зручно сортувати масиви показників. Задаємо масив рядків t і відповідний йому масив показників . Сортувати масив t, безпосередньо змінючи значення показників, неможливо, тому що імена показників на елементи-рядки за визначенням є константні показники, а для масиву показників цого обмеження немає.

//файл PART3\3_13.ccp

// сортування по алфавіту

#include <string.h> //функція обробки рядків

#include “c:\CPP\SUBPROG\\roll.h”

#include “c:\CPP\SUBPROG\\roll_txt.h”

typedef char STRING;

typedef char *STRING; //ввід псевдоніму для типу char і char *

main () { clrscr();

cout<<” ВХІДНІ МАСИВИ “<<end1;

STRING tL[6][10] = {“one”, “two”, “three”, “four ”};

cout<<”масив tL (латиниця:)”;

for (i=0; i<6; i++) cout<< tL[i]; cout<<end1;

STRING tR[6][10] = {“один”, “два”, “три”, “чотире ”};

cout<<”масив tR (кирилиця): ”;

for (i=0; i<6; i++) cout<< tR[i]; cout<<end1;

cout<<”\n ВІДСОРТОВАНІ МАСИВИ “<<end1;

for (i=0; i<5; i++) for (j=i+1; j<6; j++)

{ if (strcmp(tL[i], tL[j])>0)

{ STRING tt[10]; strcpy(tt, tL[j]);

strcpy(tL[j], tL[i]); strcpy(tL[i], tt); }; };

for (i=0; i<6; i++) cout<< tL[i]; cout<<end1;

for (i=0; i<5; i++) for (j=i+1; j<6; j++)

{ if (strcmp(tR[i]), (tR[j])>0)

{ STRING tt[10]; strcpy(tt, tR[j]);

strcpy(tR[j], tR[i]); strcpy(tL[i], tt); }; };

for (i=0; i<6; i++) cout<< tR[i]; cout<<end1;

pause(9);

cout<<”\n ВХІДНИЙ МАСИВ “<<end1;

STRING t[9][10] = {“one”, “two”, “three”, “four ”,

“шість”, “six”, “восім”, “сім”};

cout<<”масив t (змішаний): \n”;

for (i=0; i<9; i++) cout<< t[i]; cout<<end1;

STRING tP[9]; //масив показників

for (i=0; i<9; i++) tP[i]=t[i[;

cout<<”масив показників tP(змішаний): \n”;

for (i=0; i<9; i++) cout<<tP[i]; //вивід масива показників

cout<<end1 <<”\n ВІДСОРТОВАНИЙ МАСИВ” <<end1;

for (i=0; i<8; i++) { for (j=i+1; j<9; j++)

if (strcmp(tP[i]), (tP[j])>0)

{char *tt=tP[i]; tP[i]=tP[j];tP[j]=tt; }; };

cout<<”масив tP(змішаний): \n”;

for (m=0; m<9; m++) cout<< tP[m]; cout<<end1;

pause(0); return 0; }


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: