Объясню на примере первой задачи.
Перед нами написана программа (алгоритм) на языке псевдокода.
В начале программы объявляются переменные, с которыми мы будем работать. В данном случае, объявляются переменные s и n целочисленного типа (цел). Дальше идет присвоение переменной s значения 1. нц говорит о том, что дальше идет цикл. Каждую его итерацию (шаг) будет выполняться его тело (все, что между нц и кц). Конструкция для x от n до m говорит о том, что каждую итерацию переменная x будет увеличиваться на единицу (если указан шаг, т.е. конструкция выглядит так: для x от n до m шаг y, то будет увеличиваться на y) от числа n до числа m. Как только x будет равна m, цикл прекратится и будут выполняться действия после него. В нашем случае переменной n присваивается 3, выполняется тело s:=s*3. Т.е. после этого шага s будет равна 9. Теперь новая итерация. Переходим в начало цикла. Переменной n присваивается 4 (в предыдущий раз было 3). И опять выполняется действие s:=s*3. s становится равной 27. Потом опять новая итерация. И так далее. Когда n будет равна 5 ,то произойдет последняя итерация. Дальше пойдет вывод s, который после 4 итераций (n от 2-х до 5-ти включительно) будет равна 81.
Итерации более детально:
1. n = 2; s = 1*3 = 3
2. n = 3; s = 3*3 = 9
3. n = 4; s = 9*3 = 27
4. n = 5; s = 27*3 = 81
Все, цикл завершился.
ответы:
1) 81
2) 50
Итерации более детально:
1. n = 3; s = 0+2*3 = 6
2. n = 4; s = 6+2*4= 14
3. n = 5; s = 14+2*5 = 24
4. n = 6; s = 24+2*6 = 36
5. n = 7; s = 36+2*7 = 50
3) 13
4) 11
5) 121
6) 120
7) 38
8) 20
9) 40
Заметим, что в данной задаче указан шаг (step 2). Это значит, что каждую итерацию k будет увеличиваться не на 1-цу, а на 2-ку.
Итерации более детально:
1. k = 6; s = 0+10 = 10
2. k = 8; s = 10+10 = 20
3. k = 10; s = 20+10 = 30
4. k = 12; s = 30+10 = 40
у = ах2 – b для х изменяющегося от –7 до +12 с шагом +1.Значения а и b ввести с клавиатуры.Решить эту задачу с использованием всехвидов циклов (FOR, WHILE, REPEAT)}var a,b,x,y:integer;beginwriteln('привет,я alconafft');writeln('введи заначения перeменных а и б');writeln('введи значение а');readln(a);writeln('введи значение b');readln(b);writeln('хорошо,теперь протабулируем ф-цию на заданном отрезке,поехали))');for x:=-7 to 12 do//парметрический циклbeginy:=a*x*2-b;writeln('значение у= ',y,' при х= ',x);end;writeln('цикл с постусловием');x:=-7;repeatinc(x);y:=a*x*2-b;writeln('значение у= ',y,' при х= ',x);until(x=12);x:=-7;writeln('цикл с предусловием');while x<12 dobegininc(x);y:=a*x*2-b;writeln('значение у= ',y,' при х= ',x);end;end.
Подробнее - на -
uses crt;
const
n=10;
m=8;
var
A:array[1..n,1..m] of integer;
cur,up,right,down,left,qw,i,j:integer;
begin;
randomize;
writeln(' Alphaeus ');writeln;
writeln ('Програма пошуку всіх елементів масиву А[1..n, 1..m], що менші, ніж усі сусідні');
for i:=1 to n do
begin
for j:=1 to m do
begin
A[i,j]:=random(101)-50;
write(A[i,j]:3, ' ');
end;
writeln;
end;
writeln;
qw:=0;
for i:=1 to n do
for j:=1 to m do
begin
cur:= A[i,j];
up:=0; right:=0;down:=0;left:=0;
if i>1 then
begin
if cur<A[i-1,j] then up:=1;
end
else up:=1;
if i<n then
begin
if cur<A[i+1,j] then down:=1;
end
else down:=1;
if j>1 then
begin
if cur<A[i,j-1] then left:=1;
end
else left:=1;
if j<m then
begin
if cur<A[i,j+1] then right:=1;
end
else right:=1;
if up+right+down+left=4 then
begin
qw:=qw+1;
writeln('Елемент масиву À[',i,',',j,'], що рівний ',A[i,j]:3,', є меншим за своїх сусідів');
end;
end;
writeln('Всього таких елементів: ',qw);
end.