#include <stdio.h> #include <stdlib.h> int main() { int numbers_nikitka; while(1) { printf("Выберите номер программы: 15, 22, 27, 38 ,45\n"); scanf("%d", &numbers_nikitka); switch (numbers_nikitka) { case 15: printf("программа номер 15\n"); int n, a, s, k; printf("Введите число которое хотите перевернуть: \n"); scanf("%i", &a); for (n = a, s = 0; n != 0; n = n / 10) { k = n % 10; s = s * 10 + k; // Переворачивает число } printf("%i", s);// - Перевёрнутое число printf("\n"); break; case 22: printf("программа номер 22\n"); printf("Напишите до какого числа будем искать простые числа \n"); int p, o, g, i, u, v, A[300000] = {}; scanf("%d", &v); for (i = 0, u = 2; u < v; u++) { for (p = 0, o = 2; o < u; o++) if (u % o == 0) { p = 1; break; } // проверка на простое число if (p == 0) A[i++] = u; //Запись в массив, если делители дошли до числа A[i] = 0; //Выводит простые числа до v, только по методу флага } for (int g = 0; g < i; ++g) { printf(" %d", A[g]); } printf("\n"); break; case 27: printf("программа номер 27\n"); int ii, val, m, nn; printf("Напишите чило которое мы разложим на простые множители\n"); int C[1000]; scanf_s("%d", &val); nn = 1000; for (ii = 0; ii < nn - 1 && val != 1; ii++) { for (m = 2; val % m != 0; m++); //Поиск простого числа делителя val /= m; C[ii] = m; //Накопитель элементов } C[ii] = 0; for (int j = 0; j < ii; j++) printf(" %d", C[j]); //Разложение числа на простые множители printf("\n"); break; case 38: printf("программа номер 38\n"); printf("введите из скольких чисел будет состоять массив\n"); int si, sn, j, mm, b, ss, kk, massiv1, dobavit1; scanf_s("%d", &massiv1); int c[100]; for (si = 0; si < massiv1; si++) { scanf_s("%d", &dobavit1); c[si] = dobavit1; } sn = massiv1; for (si = kk = mm = 0; si < sn; si++) if (c[si] == c[si + 1]) kk++; //Проверка на одинаковые подряд идущие else { if (kk > mm) mm = kk, b = si - kk; //Поиск максимума kk = 1; } printf("%i, %i\n", mm, b); // Программа выводит количество первых чисел, встречающихся в массиве более одного раза, с указанием того, после какого элемента эти пары появляются в массиве. printf("\n"); break; case 45: printf("программа номер 45\n"); printf("введите из скольких чисел будет состоять массив\n"); int D[1000]; int jj, ns, is, ks, max, massiv,dobavit; scanf_s("%d", &massiv); for (jj = 0; jj < massiv; jj++) { scanf_s("%d", &dobavit); D[jj] = dobavit; } int B[10]; ns = massiv; for (jj = 0, max = D[0]; jj < ns; jj++) //max = максимальный элемент if (D[jj] > max) max = D[jj]; for (jj = 0; jj < massiv; jj++) { for (ks = 0, is = 1; is < ns; is++) //Сортировка if (D[is] < D[ks]) ks = is; B[jj] = D[ks]; D[ks] = max; } for (is = 0; is < massiv; is++) { printf("B[%i]: %i\n",is, B[is]); // Сортирует массив А выводя его по возрастанию. } break; } } }