Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <locale.h>
- #include <stdlib.h>
- #include <time.h>
- int main()
- {
- srand(time(NULL));
- setlocale (LC_ALL, "Russian");
- int n;
- int *a;
- int count = 0, menu;
- int f, k;
- print("Для начала введите размер массива: ");
- do {
- k = scanf("%d", &n);
- if (k == 1) {
- if (n <= 0) {
- printf("Размер массива должен быть положительным и не равняться нулю!");
- printf("Попробуйте снова: ");
- f = 1;
- }
- else {
- f = 0;
- }
- }
- else {
- printf("Нужно ввести целое положительное число!");
- printf("Попробуйте снова: ");
- f = 1;
- }
- }
- while (f);
- printf("Меню пользователя: ");
- printf("1. Заполнить массив.");
- printf("2. Обработать массив.");
- printf("3. Вывести массив на экран.");
- printf("4. Выход.");
- do {
- do {
- k = scanf("%d", &menu);
- if (menu == 1) {
- f=0;
- if (menu == 4) {
- return 0;
- }
- }
- else {
- print("Ошибка! Введите число, соответстующее пункту меню:");
- f=1;
- }
- }
- while (f);
- switch (menu) {
- case 1: printf("Введите 1, если хотите заполнить массив самостоятельно.");
- printf("Иначе, если хотите заполнить массив случайными значениями.");
- int t;
- do {
- k = scanf("%d", &t);
- if (k == 1) {
- if (t == 1) {
- a = new int[n];
- for (int i = 0; i < n; i++) {
- scanf("%d", &a[i]);
- }
- printf("Массив заполнен.");
- f=0;
- }
- else {
- a = new int[n];
- for (int i = 0; i < n; i++) {
- a[i]=rand();
- }
- printf("Массив заполнен.");
- f=0;
- }
- }
- else {
- printf("Вводить нужно целые числа.");
- print("Попробуйте ещё раз: ");
- f=1;
- }
- }
- while (f);
- break;
- case 2: printf("Сейчас массив обработается согласно требованиям задачи.");
- for (int i = 0; i < n; i += 2) {
- a[i]=0;
- }
- for (int i = 0; i < n; i++) {
- if (a[i] == 0) {
- count++;
- }
- }
- printf("Массив обработан! Элементы с нечетными позициями заменены на нули.");
- printf("Количество нулевых элементов: %d", count);
- break;
- case 3: for (int i = 0; i < n; i++) {
- printf("a[%d] = %d", i, a[i]);
- }
- break;
- case 4: printf("Программа завершена.");
- break;
- default: printf("Неизвестная ошибка.");
- print("Попробуйте снова: ");
- break;
- }
- }
- while (menu != 4);
- delete []a;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment