Найти сумму первых тысячи чисел кратных двойке и тройке одновременно и их средне арифметическое

Найти сумму первых тысячи чисел кратных двойке и тройке одновременно и их средне арифметическое
Гость
Ответ(ы) на вопрос:
Гость
int i,k,sum,arif; i=0; k=0; while(i<=1000){ if(k%2==0 && k%3==0){ i++; sum+=k; } k++; } arif = sum/i; std::cout << "Среднее арифметическое = " << arif; std::cout << endl << "Сумма чисел = " << sum;
Гость
Немного теории. Если число одновременно кратно a и b, то она кратно и их произведению, т.е. a x b. В нашем случае числа должны быть кратны 2х3=6. первое натуральное число, кратное 6, это 6. Далее следуют 12, 18, ... Задача сводится к нахождению суммы ряда 6+12+18+...+6*n, где n=1000, т.е. s=6+12+18+...+6000. Это сумма арифметической прогрессии и она может быть найдена по формуле: [latex]\displaystyle s= \frac{a_1+a_n}{2}\times n[/latex] Среднее арифметическое такого ряда будет равно сумме, деленной на количество членов ряда n: [latex]\displaystyle \mathrm avg= \left(\frac{a_1+a_n}{2}\times n\right)/ n=\frac{a_1+a_n}{2}[/latex] Теперь можно решить задачу даже "в уме": avg=(6+6000)/2=3003, s=3003x1000=3003000. Это будут контрольные значения для проверки работы программы. //PascalAC.Net 3.0, сборка 1066 const   n=1000; var   i:integer;   s:longint; begin   s:=0;   for i:=1 to 1000 do s:=s+6*i;   Writeln('Сумма=',s,', среднее арифметическое=',s/n) end. Результат выполнения программы: Сумма=3003000, среднее арифметическое=3003
Не нашли ответ?
Ответить на вопрос
Похожие вопросы