Текущее среднее. Числа [latex]x_{1},x_{2},..[/latex] последовательно поступают с устройства ввода. Все числа хранить в памяти нет необходимости; после ввода каждого числа нужно вычислить и напечатать среднее значение всех введенных чисел: [latex]S_{n}=\frac{1}{n}\sum_{k=1}^{n}x_{k}[/latex].
Вводим переменную равную нулю, которую в дальнейшем используем в цикле для вычисления суммы всех введенных чисел, переменную которая будет обозначать количество чисел и конечно же переменную в которую будем записывать наши числа.
Создаем цикл, в котором «n» раз будем считывать «x» и суммировать при помощи переменной «s», а затем делить на «текущее» количество переменных в цикле при помощи счетчика цикла.
Тесты:
[latex]n=4[/latex]
[latex]x[/latex] | Числа: | Результат: |
[latex]x_{1}[/latex] | 1 | 1, 4, 5.33333, 46. |
[latex]x_{2}[/latex] | 7 | |
[latex]x_{3}[/latex] | 8 | |
[latex]x_{4}[/latex] | 168 |
[latex]n=6[/latex]
[latex]x[/latex] | Числа: | Результат: |
[latex]x_{1}[/latex] | 9.5 | 9.5, 6.7, 4.40042, 506.8, 399.418, 342.849. |
[latex]x_{2}[/latex] | 3.9 | |
[latex]x_{3}[/latex] | -0.19873 | |
[latex]x_{4}[/latex] | 2014 | |
[latex]x_{5}[/latex] | -30.11 | |
[latex]x_{6}[/latex] | 60 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#include <iostream> using namespace std; int main() { double a,s,n,m; //Переменная s-сумма всех введенных чисел, a-наши числа, n-количество всех введенных чисел и b-конечный результат, а именно среднее значение всех введенных чисел. cin >>n; s=0; for(int k=1; k<=n; ++k){ // Цикл по k от 1 до n. cin >>a; s=s+a; m=s/k; cout <<m; if(k<n) cout <<", "; else cout <<"."; } return 0; } |
Прочтите условие.
«после ввода КАЖДОГО числа нужно вычислить и напечатать»
Меньше по ночам писать надо. Исправил.. стало на 1 переменную меньше.
Да, по ночам лучше спать.
Но опять неправильно.
И перестаньте жульничать с тестами.
Не отвлекайтесь на программирование пока не сдадите остальные экзамены.
Всё. Исправил.
Марк, ложитесь спать и сдавайте другие экзамены.
Потом сосчитаете на бумажке ответы для первого теста и исправите программу.
Пока могу подсказать, что среднеарифметическое чисел 1, 7 и 8 не равно 4.
Я уже исправил!
Зачтено. Даже отступы можете не исправлять. только ложитесь уже спать 🙂
Отступы? после «if», «else»?