Составить программу на языке паскаль, которая создает массив из 10 элементов целочисленного типа и заполняет массив первыми 10 четными числами (начиная с числа 2). программа должна вывести значения последних 3 элементов массива.
Const last = 3;//сколько последних const count = 10;//всего чисел var arr:array [1..count] of Integer; i,a:Integer; begin while i<count do begin a+=1; if a mod 2 = 0 then begin i+=1; arr[i]:= a; end; end; for i:= 1 to last do WriteLn(arr[count-last+i]); end.
Во второй строчке видим операторы 'if' и 'then', которые переводятся с английского как 'если' и 'тогда' соответственно. Т. е. если, как бы, перевести вторую строчку на русский язык, то получим следующее: "если a < 5 тогда" Таким находящаяся после then функция выполняется только в том случае, если выражение между if и then верно.
Разберем фрагмент кода: a := 10; if a < 5 then a := 5; Понятно, что на первой строчке переменная 'a' приравнивается к 10. Затем на второй строчке идет условие a < 5. Подставляем 'a': 10<5 — неравенство не верно, поэтому 'a := 5; ' не будет выполнено в этой программе, и 'a' не изменилось, и по-прежнему равно 10.
Рассмотрим еще один фрагмент a := 15; if a > 10 then a := 10;
В первой строке 'a' приравнивается к 15. Затем идет условие a>10, 15>10 — верно, поэтому выполняем следующую строку и приравниваем 'a' к 10. В итоге 'a' становится равным 10
1. 10 2. 12 3. 3 4. 22 5. 15 6. 34 7. 3 Часть 2 1. Var n:integer; Begin Write('Введи число '); Readln(n); if (n mod 2) = 0 then write(n,' чётное) else write(n,' нечётное); End. 2. Var a,b:integer; Begin Write('Введи числа '); Readln(a,b); if a>b then Begin Write('a = ',b*a,' b = ',a+b) else write('a = ',a+b,' b = ',a*b); End. 3. Var n:integer; Begin write('Введи двузначное число '); Readln(n); if ((n div 10) = 6) or ((n mod 10) = 6) then write('6 присутствует') else write('6 нет в этом числе'); End.
const count = 10;//всего чисел
var
arr:array [1..count] of Integer;
i,a:Integer;
begin
while i<count do
begin
a+=1;
if a mod 2 = 0 then
begin
i+=1;
arr[i]:= a;
end;
end;
for i:= 1 to last do
WriteLn(arr[count-last+i]);
end.