alexeylipatov
?>

Пользователь выводит с клавиатуры числа P - первый член прогрессии, R -разность прогрессии и число N. Написать программу которая выводит на экран суммы членов арифметической прогрессии не привышающую N​

Информатика

Ответы

atlantika7

Program abc;

var P,R,N,D,A,C: integer;

var B:real;

begin

  write('Введите число P(Первый член прогрессии) - ');

 Read(P);

   write('Введите число R(Разность прогрессии) - ');

 Read(R);

   write('Введите число N(Число которое не может привышаться) - ');

 Read(N);

  D:=2*P;

  A:=D+R*(N-1);

  B:=A/2*N;

 If  (B>N) then writeln('ответ превышает число N')

  else Writeln('Сумма членов арифметической прогрессии:' B);

end.

Быстро прочекал что такое арифметическая прогрессия и попытался написать код. Не суди строго если что-то не так)

ilyushin-e
1) Дискретность - алгоритм должен состоять из отдельных пунктов.
2) Понятность - каждая команда должна быть понятна исполнителю.
3) Результативность - алгоритм должен приводить к заранее продуманному результату.
4) Массовость - он должен решать не одну задачу, а круг таких задач.
5) Определенность - не должно быть команд, которые исполнитель воспримит неоднозначно.

Н-р:
1) 1. Повернуть направо.
    2. Пройти 2 шага.
    3. Повернуть налево.
2) Не должно быть таких команд:
    1. Пройти 2 шага
    2. Зачикиниться
3) К примеру, рецепт бутерброда приведет тебя к готовому бутеру (если, конечно, ты поборишь свою лень и встанешь, чтобы приготовить его)
4) Н-р, формула расчета притяжения между телами должна быть ориентирована на различные тела, а не на, к примеру, только Землю и Луну.
5) Не должно быть, н-р, таких команд:
  1. Повернуть направо
  2. Пройти 2 шага
  3. Украсть.
  4. Пройти 2 шага назад.
  5. Дойти до Машки с пятого подъезда.
bakerkirill
uses crt;
var s:string;
     i,j:byte;
begin
 clrscr;
writeln('Введите строку, содержащую точки, как по 1, так и группами:');
readln(s);
if (length(s)>1)and(copy(s,1,2)='..') then{если в начале строки более 1 точки}
  begin
                                    {или строка вообще из точек}
   while (s[1]='.')and(length(s)>0) do delete(s,1,1);
   insert('...',s,1);
 end; if(length(s)>2)and(s<>'...') then{если осталось более 2 сиволов, начнем                                   проверять с конца}  
begin   i:=length(s)-2;  
while i>=1 do
  if (s[i]<>'.')and(copy(s,i+1,2)='..') then
   begin  
  while (s[i+1]='.')and(i+1<=length(s)) do delete(s,i+1,1);    
 insert('...',s,i+1);  
   i:=i-1;
    end  
else i:=i-1;
 end;
write(s);
readln
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Пользователь выводит с клавиатуры числа P - первый член прогрессии, R -разность прогрессии и число N. Написать программу которая выводит на экран суммы членов арифметической прогрессии не привышающую N​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Тресков946
yfetyukov
Роман Александр66
fixer2006
Vasilevna_Mikhail19
happych551
Dmitriy2211104
Svetlana191
yakovlevasvetlanalvovna209
kenni19868
Salko17
StudioArtNails
mariapronina720126
Voronov434
abadaeva