Вычисление сумм, количества и произведений элементов массива - 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;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы:
    • stdlib.h - для функций malloc и free
    • time.h - для функции srand и rand, используемых для инициализации генератора случайных чисел
    • conio.h - для функции getch, используемой для приостановки выполнения программы до нажатия клавиши
    • printf.h - для функции printf
    • locale.h - для функции setlocale, используемой для установки текущей локали
  2. Задаем переменные:
    • n - размер массива
    • i - цикловой счетчик
    • z - количество чисел, не больших по величине
    • a - число, сравниваемое с элементами массива
    • s - среднее арифметическое ненулевых чисел
  3. Выводим сообщение и призыв к вводу:
    • Вводим размерность массива
    • Вводим число a
  4. Выделяем память под массив:
    • Используем malloc для выделения памяти под массив
  5. Просим ввести данные в массив:
    • Используем цикл for для прохода по всем элементам массива
    • В каждой итерации просим ввести значение элемента и сохраняем его в соответствующем элементе массива
  6. Выводим массив:
    • Используем цикл for для прохода по всем элементам массива
    • Выводим каждый элемент массива на отдельной строке
  7. Подсчитываем количество чисел, не больших по величине a:
    • Используем цикл for для прохода по всем элементам массива
    • Проверяем, является ли элемент нечетным и меньше a
    • Если да, увеличиваем счетчик z на 1
  8. Подсчитываем среднее арифметическое ненулевых чисел:
    • Используем цикл for для прохода по всем элементам массива
    • Проверяем, является ли элемент ненулевым
    • Если да, увеличиваем сумму на значение элемента
    • После завершения цикла, делим сумму на количество ненулевых элементов и сохраняем результат в переменной s
  9. Выводим результаты:
    • Выводим среднее арифметическое ненулевых чисел
    • Выводим количество чисел, не больших по величине a
  10. Завершаем программу:
    • Используем функцию getch для приостановки выполнения программы до нажатия клавиши
    • Возвращаем 0, чтобы указать, что программа успешно завершилась

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы