Program mas_1; var n, i: integer;
a: array[1..10] of integer;
begin
randomize;
for i:=1 to 10 do a[i]:=random(100);
for i:=1 to 10 do write (a[i],' ');
i:=0;
repeat
i:=i+1;
until (a[i]=50) or (i=10);
if a[i]=50 then write('Элемент ',i) else write('Нет')
end.
Напишите перевод
порядок выполнения:
1) Сначала определится a> 10
2) Потом not(a>10)
3) Дальше a < 10 и его not(a<10)
4) Дальше or между двумя этими выражениями
5) И в конце определится and между 4 и (a<b)
Но это только логический предпологаемый порядок. То есть я различных языках программирования по-разному. Например оптимизатор в пайтоне может посчитать сразу последний (a<b) и больше ничего не считать или например not(a>10) or not(a<10) сразу посчитать как True и так далее.
При a = 5 и b = 10:
True, то есть истинна
Var
N,A:integer;
Begin
Write('N = ');Read(N);
A:=0;
While N>0 do
Begin
if (N mod 10) > A then A:= N mod 10;
N:=N div 10;
End;
Write(A)
End.
Var
N,A,B:integer;
C:boolean;
Begin
Write('N = ');Read(N);
A:=-1;
B:=-2;
C:=false;
While N>0 do
Begin
if A=B then C:=true;
if N>0 then
Begin
A:=N mod 10;
N:=N div 10;
End;
if A=B then C:=true;
if N>0 then
Begin
B:=N mod 10;
N:=N div 10;
End;
End;
if A=B then C:=true;
if C then Write('Есть')
else Write('Нет')
End.
Подробнее - на -