2. Известно сопротивление каждого из элементов электриче- ской цепи. Все элементы соединены последовательно. Най- дите общее сопротивление цепи. Решите задачу с использо- ванием цикла for.
Var a,b,p,n,x,i:integer; begin writeln('Сколько примеров будешь решать:'); readln(n); for i:=1 to n do begin a:=random(10)+1; b:=random(10)+1; write('Сколько будет ',a,'+',b,'='); readln(x); if x=a+b then begin p:=p+1; writeln('Правильно'); end else writeln('Неверно'); end; writeln('Число правильных ответов: ',p); if p=n then writeln('Отлично, ты превосходно знаешь арифметику'); if (p<n) and (p/n>0.75) then writeln('Хорошо, ты неплохо знаешь арифметику'); if (p/n<=0.75) and (p/n>0.5) then writeln('Удовлетворительно, ты средне знаешь арифметику'); if (p/n<=0.5) and (p>0) then writeln('Плохо, ты не знаешь арифметику'); if p=0 then writeln('Отвратительно, ты абслютно не знаешь арифметику'); end.
Можно сделать, чтобы не только на сложение, а на все 4 действия.
const n=10; var a:array[1..n] of integer; i,min,max:integer; begin for i:=1 to n do a[i]:=random(50); for i:=1 to n do write(a[i]:4); writeln; min:=32000; max:=-32000; for i:=1 to n do if a[i]<min then min:=a[i]; for i:=1 to n do if a[i]>max then max:=a[i]; writeln('минимальный элемент массива = ',min); writeln('максимальный элемент массива= ',max); end.
2.
const n=10; var a:array[1..n] of integer; i,j,p:integer; begin for i:=1 to n do a[i]:=random(20); for i:=1 to n do write(a[i]:4); writeln; for i:=1 to n-1 do begin for j:=1 to n-1 do if a[j]<=a[j+1] then begin p:=a[j]; a[j]:=a[j+1]; a[j+1]:=p; end; end; for i:=1 to n do write(a[i]:4); end.
begin
writeln('Сколько примеров будешь решать:');
readln(n);
for i:=1 to n do
begin
a:=random(10)+1;
b:=random(10)+1;
write('Сколько будет ',a,'+',b,'=');
readln(x);
if x=a+b then
begin
p:=p+1;
writeln('Правильно');
end
else writeln('Неверно');
end;
writeln('Число правильных ответов: ',p);
if p=n then writeln('Отлично, ты превосходно знаешь арифметику');
if (p<n) and (p/n>0.75) then writeln('Хорошо, ты неплохо знаешь арифметику');
if (p/n<=0.75) and (p/n>0.5) then writeln('Удовлетворительно, ты средне знаешь арифметику');
if (p/n<=0.5) and (p>0) then writeln('Плохо, ты не знаешь арифметику');
if p=0 then writeln('Отвратительно, ты абслютно не знаешь арифметику');
end.
Можно сделать, чтобы не только на сложение, а на все 4 действия.
const n=10;
var a:array[1..n] of integer;
i,min,max:integer;
begin
for i:=1 to n do a[i]:=random(50);
for i:=1 to n do write(a[i]:4);
writeln;
min:=32000; max:=-32000;
for i:=1 to n do
if a[i]<min then min:=a[i];
for i:=1 to n do
if a[i]>max then max:=a[i];
writeln('минимальный элемент массива = ',min);
writeln('максимальный элемент массива= ',max);
end.
2.
const n=10;
var a:array[1..n] of integer;
i,j,p:integer;
begin
for i:=1 to n do a[i]:=random(20);
for i:=1 to n do write(a[i]:4);
writeln;
for i:=1 to n-1 do begin
for j:=1 to n-1 do
if a[j]<=a[j+1] then begin
p:=a[j]; a[j]:=a[j+1]; a[j+1]:=p;
end;
end;
for i:=1 to n do write(a[i]:4);
end.