Опять паскаль... Задана арифметическая прогрессия 2; 2,8; … . Сколько членов прогрессии...

0 голосов
148 просмотров

Опять паскаль...
Задана арифметическая прогрессия 2; 2,8; … . Сколько членов прогрессии нужно сложить, чтобы полученная сумма стала >20.


Информатика (14 баллов) | 148 просмотров
0

Это и без Паскаля можно решить, зная формулу суммы членов арифметической прогрессии ))

0

задана прогрессия именно "2; 2,8" или может быть другая прогрессия задана?

0

именно эта

Дано ответов: 2
0 голосов

A := 2.0;
i := 1;
while (a < 20) do
begin
a := a + a + 0.8;
inc(i);
end;
writeln(i);


(1.0k баллов)
0

Увы, но вы проверяете сами значения прогрессии... А нужно сумму членов прогрессии. Не сходится с условиями задачи.

0 голосов

Ну наверно так: 
program qq;
 var i:integer; sum,num:real;
Begin
 num=2;
 sum:=2;
 i:=1;
 while(sum<=20)<br> Begin
  i:=i+1;
  num:=num+0.8;
  sum:=sum+(sum+num);
 End;
 Writeln('Количество членов прогрессии: ', i);
End.

(30 баллов)
0

Тогда всё прекрасно работает. Забыл убрать, так как сначала с одной переменной сделать хотел. :)

0

Ну и несколько ошибок, таких как num:=2 и while(sum<=20)do

0

извините, для меня это сложно, а вообще можно как то попроще сделать?

0

program qq;
var i:integer; sum,num:real;
Begin
num=2;
sum:=2;
i:=1;
while(sum<=20)<br> Begin
i:=i+1;
num:=num+0.8;
sum:=sum+(sum+num);
End;
Writeln('Количество членов прогрессии: ', i);
End.

0

program qq;
var i:integer; sum:real;
Begin
sum:=2;
i:=0;
while(sum<=20)do<br> Begin
i:=i+1;
sum:=sum+(2+i*0.8);
End;
Writeln('Количество членов прогрессии: ', i+1);
End.

0

чувствую себя полной дурой, а можно чтобы программа сама рассчитала шаг прогрессии?)

0

шаг же 0.8

0

2.8-2=0.8 это и есть шаг прогрессии.по условию же

0

хорошо, можно еще одну программу Вам скину?

0

Протабулировать функцию y= cos x2+sin x2 на интервале [-п/2,п/2] с шагом п/10.