Var z:array[1..16] of integer; k:array[1..16] of real; i,p,s:integer; max:real; Begin randomize; for i:=1 to 16 do z[i]:=random(101); write('Z='); for i:=1 to 16 do write(z[i],' '); writeln; writeln; p:=0; s:=0; for i:=1 to 16 do if (i mod 2)<>0 then begin s:=s+z[i]; p:=p*z[i]; end; writeln('P=',p); writeln('S=',s); writeln; for i:=1 to 16 do k[i]:=z[i]*exp(ln(i*z[i])/3); write('K='); for i:=1 to 16 do write(k[i]:0:0,' '); max:=k[1]; for i:=1 to 16 do if k[i]>max then max:=k[i]; writeln; writeln('max=',max:0:0); for i:=1 to 16 do if k[i]=max then k[i]:=0; write('K='); for i:=1 to 16 do write(k[i]:0:0,' '); End.
Петя не может быть правым в обоих случаях так как получиться что и петя и женя написали на 5, а тк не может быть по условию. дальше подбираем под петю два оставшихся случая, при том что петя сказал 2 раза правду, но этого не может быть т.к. тогда женя говорит либо 2 неправды либо 50на50, говоря две неправды он противоречит пете о том что он не писал на 5 а говоря правду неправду противоречит и пете и саше. значит петя определенно сказал правду неправду, тогда подставив жене неправду а саше правду получаем что на 5 написал петя.
Var z:array[1..16] of integer; k:array[1..16] of real; i,p,s:integer; max:real;
Begin
randomize;
for i:=1 to 16 do z[i]:=random(101);
write('Z=');
for i:=1 to 16 do write(z[i],' ');
writeln;
writeln;
p:=0;
s:=0;
for i:=1 to 16 do
if (i mod 2)<>0 then
begin
s:=s+z[i];
p:=p*z[i];
end;
writeln('P=',p);
writeln('S=',s);
writeln;
for i:=1 to 16 do k[i]:=z[i]*exp(ln(i*z[i])/3);
write('K=');
for i:=1 to 16 do write(k[i]:0:0,' ');
max:=k[1];
for i:=1 to 16 do
if k[i]>max then max:=k[i];
writeln;
writeln('max=',max:0:0);
for i:=1 to 16 do
if k[i]=max then k[i]:=0;
write('K=');
for i:=1 to 16 do write(k[i]:0:0,' ');
End.