Помогите сделать программу ** Pascal

0 голосов

Помогите сделать программу на Pascal


image

спросил от (62 баллов) в категории Информатика
1 Ответ
0 голосов
ответил от Начинающий (792 баллов)
 
Лучший ответ

Program pr1;
var s, i, j, N;
begin
readln(N);
s:=0;
for i:=1 to N do begin
for j:=1 to i do
s:=s*j; //честно говоря, задание некорректно, так как под знаком произведения ничего нет. Если имеется ввиду перемножение числа само на себя заменить j на s.
s:=s+s
end;
writeln('The sum is ', s)
end.

оставил комментарий от (62 баллов)

окей, спасибо )

оставил комментарий от Начинающий (792 баллов)

Еще добавлю от себя, что в цикле можно чуть удобоваримее реализовать все таки сложение в конце, запускаем еще одну переменную в var, оттуда в перемножение вместо s вставляем tmp, а в сложение: s=s+tmp;
и все. Так выглядит чище.

оставил комментарий от (62 баллов)

как я понял это переменная и есть tmp ?

оставил комментарий от Начинающий (792 баллов)

по сути, мы просто складываем результаты перемножения. У меня там получилось удваивание, но это частный случай. Блок кода:

оставил комментарий от Начинающий (792 баллов)

s=s*j

оставил комментарий от Начинающий (792 баллов)

меняем на tmp=tmp*j

оставил комментарий от Начинающий (792 баллов)

затем просто складываем с эской: s=s+tmp

оставил комментарий от Начинающий (792 баллов)

в конце снова единичим tmp - tmp:=1;

оставил комментарий от Начинающий (792 баллов)

тогда возьмем все возможные случаи. но опять же некорректная запись знака произведения все косит, не совсем ясно, что мы должна там перемножать :)

оставил комментарий от (62 баллов)

ну ладно, вроде разобрался )))

...