Предмет: Информатика,
автор: mnbnml
Помогите!! Написать программу, которая подсчитывает среднее арифметическое всех чисел кратных 3 из диапазона от 1 до 52?
если можно то с полным объяснением что, как и где? спасибо
Ответы
Автор ответа:
2
//Язык Pascal
Program Test;
//Объявляем переменные
Var i, counter, sum: integer; arifmetic: real;
Begin
//Присваиваем значение 0 переменным
counter := 0;
sum := 0;
//Используем цикл for для хода по данному диапазону чисел
//В переменную sum добавляем все числа, которые кратны 3
//Увеличиваем счетчик counter для подсчета количества чисел, которые кратны 3
for i := 1 to 52 do
begin
if (i mod 3 = 0) then
begin
sum := sum + i;
counter := counter + 1;
end;
end;
//Считаем средне арифметическое (сумма всех чисел / их количество)
arifmetic := sum / counter;
//Выводим результат на экран
Writeln('Средне арифметическое = ', arifmetic);
End.
Program Test;
//Объявляем переменные
Var i, counter, sum: integer; arifmetic: real;
Begin
//Присваиваем значение 0 переменным
counter := 0;
sum := 0;
//Используем цикл for для хода по данному диапазону чисел
//В переменную sum добавляем все числа, которые кратны 3
//Увеличиваем счетчик counter для подсчета количества чисел, которые кратны 3
for i := 1 to 52 do
begin
if (i mod 3 = 0) then
begin
sum := sum + i;
counter := counter + 1;
end;
end;
//Считаем средне арифметическое (сумма всех чисел / их количество)
arifmetic := sum / counter;
//Выводим результат на экран
Writeln('Средне арифметическое = ', arifmetic);
End.
Приложения:
Автор ответа:
1
Первое число в диапазоне [1;52], кратное 3, это само число 3. А дальше надо к нему каждый раз по 3 прибавлять, получая числа 6, 9, 12 и т.д.
Увы (а точнее, ура!), вот все решение задачи. Фактически, одна строка.
// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!
begin
Range(3,52,3).Average.Println
end.
Результат
27
Объяснения.
Конструкция Range(3,52,3) порождает последовательность чисел от 3 с шагом 3, пока очередное число не превысит 52.
.Average принимает эти числа и находит их среднее арифметическое.
.Println выводит значение, вычисленное .Average
Увы (а точнее, ура!), вот все решение задачи. Фактически, одна строка.
// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!
begin
Range(3,52,3).Average.Println
end.
Результат
27
Объяснения.
Конструкция Range(3,52,3) порождает последовательность чисел от 3 с шагом 3, пока очередное число не превысит 52.
.Average принимает эти числа и находит их среднее арифметическое.
.Println выводит значение, вычисленное .Average
Похожие вопросы
Предмет: Українська мова,
автор: Cat2282
Предмет: Математика,
автор: Аноним
Предмет: Литература,
автор: smartvsem0
Предмет: Математика,
автор: hgfghv
Предмет: Химия,
автор: Аноним