Иллюстрированный самоучитель по С++ для начинающих

Решения (задачи 140-158)

Задача 150.

// Проверяет, отсортирован ли массив по возрастанию
#include <stdio.h> #include <conio.h> #define НВ 5 void main()
i
int a[HB]; // массив
int к; // индекс
int ok; // 1 – последовательность неубывающая
printf("Проверка, упорядочен ли массив\п");
printf("по возрастаникЛп");
printf("Введите массив (%i целых чисел ", НВ);
printf ("в одной строке) и нажмите Enter\n");
for (k =0; k < НВ; k++) scanf("%i", &a[k]); к = 0; ок = 1; do {
if (a[k] > ок = 0;
} while (к < НВ-1 && ок); printf("Элементы массива "); if (!ок)
printf("не упорядочены ");
printf("по возрастаниюХп");
printf("Хп Для завершения работы нажмите Enter");
getch();

Задача 151.

// Проверяет, сколько раз число встречается в массиве
finclude <stdio.h>
tinclude <conio.h>
#define HB 5 // размер массива
void main()
int a[HB]; // массив
int obr; // искомое число (образец)
int n; // кол-во элементов массива,
// значение которых равно образцу int i; // индекс
printf("Введите массив (%i ", HB);
printf("целых чисел в одной строке)\п");
printf(" › "); for (i = 0; i < HB; i++)
scanf("%i",&a[i]);
printf("Введите образец для сравнения › ");
scanf("%i", &obr); n = 0; for (i = 0; i < HB; i++)
if (a[i] == obr) n++;
if (n)
printf("Число %i встречается в массиве %i раз",
obr, п); else printf("Ни один элемент массива не равен образцу")
printf("\ц Для завершения работы нажмите Enter");
getch();

Задача 153.

// Сортировка массива методом прямого выбора
iinclude <stdio.h>
#include <conio.h>
#define SZ 5 // размер массива
void main () int a[SZ]; // массив of integer;
int i; // номер элемента, от которого ведется noi
// минимального эл-та int min;
// номер минимального элемента в части
// массива от i до верхней границы массива int j;
// номер эл-та, сравниваемого с минимальным int buf;
// используется при обмене эл-тов массива int k;
// индекс для ввода и вывода printf("ХпСортировка массива\п");
printf("Введите массив (в одной строке %i", SZ); printf("целых чисел) и нажмите Enter\n");
printf(" › "); for (k =0; k < SZ; k++) scanf("%i", &a[k]);
printf("Сортировка…\n"); for (i = 0; i < SZ-1; i++) // поиск минимального эл-та
// в части массива от а[1] до последнего эл-та
min = i;
for (j = i+1; j < SZ; j
if (a[j] < a[min]) min = j; // поменяем местами a[min] и a[i]
buf = a[i]; a [i] = a [min]; a[min] = buf;
// цикл сортировки закончен // отладочная печать
// выведем, промежуточное состояние массива for (k =0; к < SZ; к++)
printf("%i ", а[к]); printf ("\n");
// выведем отсортированный массив printf("Массив отсортированХп"); for (к =0; к < SZ; к++)
printf("%i ", а[к]); printf("\n");
printf("\п Для завершения работы нажмите Enter");
getch();
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.