Предмет: Информатика, автор: vlad43589

Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое трёхзначных чисел или сообщает, что таких чисел нет (выводит NO).
Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Программа должна вывести среднее арифметическое трёхзначных чисел или вывести NO, если таких чисел нет.

Ответы

Автор ответа: Аноним
0

#include <iostream>

#include <vector>

using namespace std;

int am_dig(int k){

   int res = 0;

   while(k > 0){

       res++;

       k /= 10;

   }

   return res;

}

double average(vector<double> a){

   double sum = 0;

   for(auto i: a)

       sum += i;

   return sum/a.size();

}

int main() {

   vector<double> a;

   double x = 1;

   while(x != 0){

       cin >> x;

       if(am_dig(x) == 3)

           a.push_back(x);

   }

   if(a.size() == 0)

       cout << "NO";

   else

       cout << average(a);

}


vlad43589: какой это язык?
vlad43589: мне на паскале надо было а не с++ (((
vlad43589: ну да, тут моя ошибка
Похожие вопросы
Предмет: Литература, автор: ДарьяМордвинова
Предмет: Математика, автор: ларллпоап