4.
program p3;
uses Robot;
procedure Square2;
begin
right;
paint;
down;
paint;
left;
paint;
up;
paint
end;
var i,j:integer;
begin
Task('p3');
for i := 1 to 6 do
begin
Square2;
if i<=5 then
begin
for j := 1 to 2 do left;
for j := 1 to 2 do up
end
end
end.
5.
program p4;
uses Robot;
procedure Square2;
begin
paint;
right;
paint;
down;
paint;
left;
paint;
up
end;
var i:integer;
begin
Task('p4');
Square2;
for i:= 1 to 2 do right;
Square2;
for i:= 1 to 2 do down;
Square2;
for i:= 1 to 2 do left;
Square2;
for i:= 1 to 2 do up
end.
Объяснение:
Второй вариант 5-го задания с двумя процедурами
program p4;
uses Robot;
procedure Square2;
begin
paint;
right;
paint;
down;
paint;
left;
paint;
up
end;
procedure Square;
var i:integer;
begin
Square2;
for i:= 1 to 2 do right;
Square2;
for i:= 1 to 2 do down;
Square2;
for i:= 1 to 2 do left;
Square2;
for i:= 1 to 2 do up
end;
begin
Task('p4');
Square
end.
Программа Pascal:
var ag,x,x1,s1,s2,sp:integer;
a1,a2:array[0..3] of integer;
begin
while (a1[0]=a1[1]) or (a1[1]=a1[2]) or (a1[2]=a1[3]) or (a1[3]=a1[0]) or (a1[1]=a1[3]) or (a1[2]=a1[0]) do
begin
x:=random(8999)+1000;
ag:=10000;
for var i1:=0 to 3 do
begin
a1[i1]:= (x mod ag) div (ag div 10);
ag:=ag div 10;
end;
end;
while x<>x1 do
begin
x1:=0;
while (x1<1000) or (9999<x1) do
begin
writeln; write('Введите 4ехзначное число = '); readln(x1);
end;
ag:=10000;
for var i2:=0 to 3 do
begin
a2[i2]:= (x1 mod ag) div (ag div 10);
ag:=ag div 10;
end;
s1:=0;
if (a2[0]=a1[0]) then s1:=s1+1;
if (a2[1]=a1[1]) then s1:=s1+1;
if (a2[2]=a1[2]) then s1:=s1+1;
if (a2[3]=a1[3]) then s1:=s1+1;
writeln('Число быков = ',s1);
s2:=0;
if (a2[0]=a1[0]) or (a2[0]=a1[1]) or (a2[0]=a1[2]) or (a2[0]=a1[3]) then s2:=s2+1;
if (a2[1]<>a2[0]) or (a2[1]<>a2[2]) or (a2[1]<>a2[3]) then
if (a2[1]=a1[0]) or (a2[1]=a1[1]) or (a2[1]=a1[2]) or (a2[1]=a1[3]) then s2:=s2+1;
if (a2[2]<>a2[0]) or (a2[2]<>a2[1]) or (a2[2]<>a2[3]) then
if (a2[2]=a1[0]) or (a2[2]=a1[1]) or (a2[2]=a1[2]) or (a2[2]=a1[3]) then s2:=s2+1;
if (a2[3]<>a2[0]) or (a2[3]<>a2[1]) or (a2[3]<>a2[2]) then
if (a2[3]=a1[0]) or (a2[3]=a1[1]) or (a2[3]=a1[2]) or (a2[3]=a1[3]) then s2:=s2+1;
writeln('Число коров = ',s2-s1);
sp:=sp+1;
writeln('Попытка ',sp);
end;
writeln; write('ПОЗДРАВЛЯЮ, ВЫ УГАДАЛИ ЧИСЛО!');
end.
2048/1024=2кб
4*2=8кбайт