Переписать программу с использованием функций - C (СИ)

Узнай цену своей работы

Формулировка задачи:

#include <stdio.h>
#include <conio.h>
int ar[5];
void main(void)
{  clrscr();
printf("введите пять чисел");
  for(int i=0;i<5;i++)  scanf("%d",&ar[i]);  
  float Sum=ar[0];
  for(i=1;i<5;i++)  if(ar[i]>0) Sum=Sum+ ar[i];
  for(i=0;i<5;i=i+1)printf(“%5d”, ar[I]);
  printf("The sum is %f",Sum);
  getch ();
}
помогите плиз записать при помощи функций эту задачу

Решение задачи: «Переписать программу с использованием функций»

textual
Листинг программы
#include <iostream>
 
void input(float *a, size_t m);
void output(float *a, size_t m);
float sum(float *a, size_t m);
 
int main(void)
{
    setlocale(0, "");
    size_t n;
    std::cout << "Введите размерность массива -> ";
    std::cin >> n;
    float *vector = new float[n];
    input(vector, n);
    output(vector, n);
    sum(vector, n);
    delete[] vector;
    system("pause");
    return 0;
}
 
void input(float *a, size_t m)
{
    std::cout << "Введите " << m << " чисел: ";
    for(size_t i = 0; i < m; ++i)       
        std::cin >> a[i];
}
 
void output(float *a, size_t m)
{
    std::cout << "Состояние массива: " << std::endl;
    for(size_t i = 0; i < m; ++i)
        std::cout << a[i] << '\t';
    std::cout << std::endl << std::endl;
}
 
float sum(float *a, size_t m)
{
    float summ = 0;
    for(size_t i = 0; i < m; ++i)
        if (a[i] > 0)
            summ += a[i];
    std::cout << "Сумма положительных элементов массива: " << summ;
    std::cout << std::endl << std::endl;
    return summ;
}

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

  1. В функции main считывается размерность массива с помощью ввода с клавиатуры и сохраняется в переменную n типа size_t.
  2. Динамически выделяется память под массив vector типа float размером n с помощью оператора new.
  3. Вызывается функция input, которая считывает n чисел и сохраняет их в массив vector.
  4. Вызывается функция output, которая выводит состояние массива vector на экран.
  5. Вызывается функция sum, которая вычисляет сумму положительных элементов массива vector и выводит ее на экран.
  6. Выделяется память под массив vector освобождается с помощью оператора delete[].
  7. Программа ожидает нажатия любой клавиши с помощью system(pause).
  8. Программа завершается с кодом 0. В функции input считываются n чисел и сохраняются в массив a. В функции output выводится состояние массива vector на экран. В функции sum вычисляется сумма положительных элементов массива vector и выводится на экран.

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


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

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

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