Program primer;
procedure random(c,x,y:integer; var r:integer);
begin
case c of
1 : r:=Random(ABS(Y)+ABS(x)+1)+x;
2 : r:=Random(ABS(Y)+ABS(x)+1)+y;
3 : r:=Random(Y-x+1)+x;
4 : r:=Random(x-y+1)+y;
5 : r:=Random(x+y);
6 : r:=Random(ABS(x+y))-ABS(x+y);
7 : r:=x;
8 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(x);
9 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(y);
end;
end;
var
a,b: array of array of integer;
i,j,x,y,c,m,p,sum:integer; begin
Randomize;
sum:=0;
writeln('Кол-во строк и столбцов массива? //X,Y\\ ');
read(i,j); //Размерность массива
writeln('Диапазон чисел //от X,до Y\\ ');
read(x,y); //и диапазон генерации вводятся с клавиатуры.
if (x=y) then
c:=7
else
if(x<0) and (y<0) then
if (x<y) then
c:=8
else
c:=9
else
if (x=0) or (y=0) then
if(x<0) or (y<0) then
c:=6
else
c:=5
else
if(x<0) or (y<0) then
if (x<y) then
c:=1
else
c:=2
else
if (x<y) then
c:=3
else
c:=4;
SetLength(a,i);
for m:=0 to i-1 do
SetLength(a[m],j);
SetLength(b,i);
for m:=0 to i-1 do
SetLength(b[m],j);
for m:=0 to i-1 do begin
writeln();
for p:=0 to j-1 do begin
random(c,x,y,a[m,p]); {Заполнить двумерный массив случайными числами.}
sum:=sum+a[m,p]; {вычисляет сумму всех элементов массива}
write (a[m,p]:3,' ':3);
end;
end;
c:=0;
writeln('summa=',sum);
for m:=0 to i-1 do begin {Затем организовать новый массив В }
writeln();
for p:=0 to j-1 do begin
if (a[m,p] <0) then begin
b[m,p]:=1; {в котором заменить отрицательные элементы исходного массива на 1} inc(c); {Подсчитать количество замен. }
end
else
b[m,p]:=a[m,p]; {а значения остальных элементов оставить без изменения }
write(b[m, p]:3, ' ':3);
end;
end;
writeln('kol=',c);
a:=NIL;
b:=NIL;
end.
// ABC Pascal
<em>Как-то так будет выглядеть ответ</em>
<em>UPD: 4 и 5 варианты стоит</em><u><em> поменять местами</em></u><em>.</em>
Const n=20;
var
a:array[1..n] of integer;
i,j,t,x,i1,i2:integer;
begin
Randomize;
Writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(21);
Write(a[i],' ')
end;
Writeln;
for i:=1 to n-1 do
for j:=1 to n-i do
if a[j]<a[j+1] then begin
t:=a[j];
a[j]:=a[j+1];
a[j+1]:=t
end;
Writeln('Отсортированный массив:');
for i:=1 to n do Write(a[i],' ');
Writeln;
write('x = ');
readln(x);
i1:=1;
i2:=n;
repeat
i:=(i1+i2) div 2;
if a[i]>x then i1:=(i1+i2) div 2+1;
if a[i]<x then i2:=(i1+i2) div 2-1;
until (a[i]=x)or(i1>i2);
if a[i]=x then begin
writeln('Искомый(ые) номер(а) элемента(ов):');
while (i>0)and(a[i]=x) do
i:=i-1;i:=i+1;
while (i<=n)and(a[i]=x) do begin
write(i,' '); i:=i+1; <span>end;</span>
end
else writeln('Элемент не найден');
writeln;
end.
Pascal ABC.
1)
A = 7; B = 3
A mod B = 0 ⇒ 7 mod 3 = 0 ⇒ 1 = 0 ⇒ Нет
A = A*B = 7*3 = 21
Ответ: A = 21
2)
A = 12; B = 4
A mod B = 0 ⇒ 12 mod 4 = 0 ⇒ 0 = 0 ⇒ Да
A = A div B = 12 div 4 = 3
Ответ: A = 3