apetrov13
?>

Напишите мне данное от program до end. (тема "циклы"- pascal abc) написать программу, которая вычисляет сумму первых в членов ряда: 1, 3, 5, количество суммированных членов ряда задаётся во время работы программы. ниже примерно рекомендуемый вид экрана во время работы программы. вычисление частичной суммы ряда: 1, 3, 5, введите количество суммированных членов ряда -> 1-5 сумма первых 15 членов ряда равна 330.

Информатика

Ответы

Kharkina1328
Program zhn;
var
  i,n,sum:integer;
begin
  writeln('Вчисление суммы членов последовательности: 1,3,5,7...');
  write('Введите количество членов для сложения:');
  readln(n);
  for i:=1 to n*2 do begin
    if i mod 2 <> 0 then sum:=sum+i; //Проверяем что бы число было нечетным
  end;
  writeln('Сумма ',n,' членов прогресии = ',sum);
end.
mmreznichenko
Честно, не поняла ваш код вообще. Почему нет цикла? Предлагаю свое решение:
1)Cначала заполняем массив случайными числами от 2 до 5 (включительно)
2)Потом выводим его (Для проверки)
3) Потом считаем оценки. Но сначала нужно обнулить переменные( В самом начале это делали), а то получится кака (:

program N_0547847;
var
    b, c, d, f, i:integer;
    a: array [1..20] of integer;
begin;
randomize;
b:=0; c:=0; d:=0; f:=0;
for i:=1 to 20 do begin
  a[i]:=random(4)+2; 
  write(a[i],' '); end; 
writeln;
for i:=1 to 20 do begin
    if a[i]=2 then  b:=b+1;
    if a[i]=3 then  c:=c+1;
    if a[i]=4 then  d:=d+1;
    if a[i]=5 then   f:=f+1;
end;
writeln('Двоек: ', b); 
writeln('Троек: ', c); 
writeln('Четверок: ',d);
writeln('Пятерок: ',f);
end.   
Shteinbakh

ответ: 110.

Объяснение:

Максимально подробно.

В начале программы переменная s равна 0, n - 10.

Далее идет цикл "for" от 0 до n, то есть от 0 до 10.

Цикл "for" - последовательность команд, которые программа будет выполнять какое-то количество раз (в данном случае 11 раз:

для "i" равного 0,1,2,3,4,5,6,7,8,9 и 10).

Последовательность команд описывается между словами begin и end:

if і = n-i then s:=s+A[i]+A[i+1];

Рассмотрим подробнее эту строчку. В ней проверяется равенство:

i = n-i

Если это равенство верно, то программа переходит к инструкции, описанной после слова then: s:=s+A[i]+A[i+1];

Если же неверно - программа переходит к следующему значению i.

n - число постоянное и нигде не меняется, оно равно 10, то есть условие выглядит так:

i = 10-i

Когда такое возможно? "i" у нас меняется от 0 до 10 включительно. Посмотрим. Для этого мысленно продумаем весь ход работы программы. В начале i равно 0. Смотрим условие:

0 = 10 - 0

Неверно. 0 не равно 10. Далее программа переходит к следующему i, то есть единице.

i=1: 1 = 10 - 1

Тоже неверно. 1 не равно 9.

i=2: 2 = 10 - 2 Неверно. 2 не равно 8.

i=3: 3 = 10 - 3 Неверно. 3 не равно 7.

i=4: 4 = 10 - 4 Неверно. 4 не равно 6.

i=5: 5 = 10 - 5

Верно. Если это равенство верно, то программа переходит к инструкции, описанной после слова then: s:=s+A[i]+A[i+1];

Здесь к переменной "s", которая изначально равна нулю, прибавляется сама s, то есть 0, и значение элементов массива "A" под индексами i и i+1.

i у нас равно 5.

Следовательно: s=0+A[5]+A[5+1]

Или s=0+A[5]+A[6].

Посмотрим на массив:

(0,10,20,30,40,50,60,70,80,90,100)

A[0]=0, A[1]=10.

Значит пятый элемент равен 50, а шестой - 60.

Следовательно наше выражение:

s=0+A[5]+A[6] = 0 + 50 + 60 = 110.

Но на этом работа программы не закончена.

Цикл будет выполняться до тех пор, пока "i" не станет равно 10.

Идем дальше.

i=6: 6 = 10 - 6 Неверно. 6 не равно 4.

i=7: 7 = 10 - 7 Неверно. 7 не равно 3.

i=8: 8 = 10 - 8 Неверно. 8 не равно 2.

i=9: 9 = 10 - 9 Неверно. 9 не равно 1.

i=10: 10 = 10 - 10 Неверно. 10 не равно 0.

Теперь "i" равно 10, цикл больше выполняться не будет.

ответ: 110.

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

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

Напишите мне данное от program до end. (тема "циклы"- pascal abc) написать программу, которая вычисляет сумму первых в членов ряда: 1, 3, 5, количество суммированных членов ряда задаётся во время работы программы. ниже примерно рекомендуемый вид экрана во время работы программы. вычисление частичной суммы ряда: 1, 3, 5, введите количество суммированных членов ряда -> 1-5 сумма первых 15 членов ряда равна 330.
Ваше имя (никнейм)*
Email*
Комментарий*

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

shymilin19951783
mail9
Борисовна
Adabir20156806
lenacari
evrotrastop64
Панков1101
Новицкий1107
elena-novikova-1992
АннаМаргарита
Дмитрий Бундин
brand
samoilovcoc
Хасанбиевич Колесников716
Стародубцева_Васильевич485
6примеров нарушение свойств информации