Вычисление сумм, количества и произведений элементов массива - C (СИ)
Формулировка задачи:
Задание 1. Вычисление сумм, количества и произведений элементов массива
В каждой из задач данного раздела предполагается, что задан массив чисел. Программа должна:
1)Вводить размерность и элементы исходного массива;
2)Найти среднее арифметическое ненулевых чисел и количество чисел, по величине небольших A и стоящих на четных местах.
Задание 2. Выделение минимального элементов массива
В каждой из задач данного раздела предполагается, что задан массив чисел. Программа должна:
1) сгенерировать элементы исходного массива с помощью датчика случайных чисел;
2) Найти минимальный элемент и поменять его местами с последним элементом массива.
3) выводить:
§ исходный массив,
§ минимальный элемент массива и его номер,
§ массив, полученный в результате выполнения задания.
Задание 3. Формирование нового массива
В каждой из задач данного раздела заданы два массива случайных значений. Требуется сформировать новый массив по алгоритму, указанному в задании. Программа должна:
1) генерировать случайным образом элементы исходных массивов;
2) Сформировать массив из элементов первого массива, больших последнего элемента второго массива, и элементов второго массива, меньших последнего элемента первого массива.
3) выводить:
§ исходные массивы,
§ сформированный массив, если он был сформирован. В противном случае – соответствующее сообщение.
Помогите пожалуйста все это нужно написать на С.Кто что может плиз
Решение задачи: «Вычисление сумм, количества и произведений элементов массива»
textual
Листинг программы
#include <stdlib.h> #include <time.h> #include <conio.h> #include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL, "RUSSIAN"); int n,i,z=0,a; float s,q=0; while(!fflush(stdin)&&printf("Введите размерность = ")&&!scanf("%i",&n)); while(!fflush(stdin)&&printf("Введите А = ")&&!scanf("%i",&a)); int *mas = (int*)malloc(n*sizeof(int)); printf("\nВвод данных\n\n"); for (i = 0;i<n;i++) { while(!fflush(stdin)&&printf("mas[%i] = ",i+1)&&!scanf("%i",&mas[i])); } printf("\nМассив: "); for(int i = 0; i < n; i++) { printf("%i ", mas[i]); } for (i = 0;i<n;i++) { if(mas[i]!=0) { q+=mas[i]; } if(i%2==0 && mas[i]<=a) { z++; } } s=q/n; printf("\n\nСреденее арифметическое ненулевых чисел = %0.2f",s); printf("\nКоличество чисел не больших по величине %i = %i",a,z); getch(); return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы:
- stdlib.h - для функций malloc и free
- time.h - для функции srand и rand, используемых для инициализации генератора случайных чисел
- conio.h - для функции getch, используемой для приостановки выполнения программы до нажатия клавиши
- printf.h - для функции printf
- locale.h - для функции setlocale, используемой для установки текущей локали
- Задаем переменные:
- n - размер массива
- i - цикловой счетчик
- z - количество чисел, не больших по величине
- a - число, сравниваемое с элементами массива
- s - среднее арифметическое ненулевых чисел
- Выводим сообщение и призыв к вводу:
- Вводим размерность массива
- Вводим число a
- Выделяем память под массив:
- Используем malloc для выделения памяти под массив
- Просим ввести данные в массив:
- Используем цикл for для прохода по всем элементам массива
- В каждой итерации просим ввести значение элемента и сохраняем его в соответствующем элементе массива
- Выводим массив:
- Используем цикл for для прохода по всем элементам массива
- Выводим каждый элемент массива на отдельной строке
- Подсчитываем количество чисел, не больших по величине a:
- Используем цикл for для прохода по всем элементам массива
- Проверяем, является ли элемент нечетным и меньше a
- Если да, увеличиваем счетчик z на 1
- Подсчитываем среднее арифметическое ненулевых чисел:
- Используем цикл for для прохода по всем элементам массива
- Проверяем, является ли элемент ненулевым
- Если да, увеличиваем сумму на значение элемента
- После завершения цикла, делим сумму на количество ненулевых элементов и сохраняем результат в переменной s
- Выводим результаты:
- Выводим среднее арифметическое ненулевых чисел
- Выводим количество чисел, не больших по величине a
- Завершаем программу:
- Используем функцию getch для приостановки выполнения программы до нажатия клавиши
- Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д