Здравствуйте составить граф-схему по заданию: Нужно нарисовать граф-схему вычисления количества чисел, равных С1 (Характеристика последовательности чисел с1,с2 сn) по программе
RD #40
WR 30
RD #10
WR 31
RD #0
WR 32
RD @30
WR 34
M1: RD @30
SUB 34
JNZ M2
RD 32
ADD #1
WR 32
M2: RD 30
ADD #1
WR 30
RD 31
SUB #1
WR 31
JNZ M1
RD 32
OUT
Const
N = 20;
Var
MX:array[1..N] of integer;
i,k:integer;
Begin
ClrScr;
Randomize;
k:=0;
Write('Исходный массив:');
For i:=1 to N do
Begin
MX[i]:=random(10);
Write(' ',MX[i]);
if MX[i] mod 2 <> 0 then k:=k+1;
End;
WriteLn;
WriteLn('Количество нечётных элементов: ',k);
Write('Преобразованный массив:');
For i:= 1 to N do
Begin
MX[i]:=MX[i]-k;
Write(' ',MX[i])
End;
ReadLn
End.
uses Crt;
Const
N = 13;
Var
A:array[1..N] of integer;
i,Max,Min:integer;
Begin
ClrScr;
Randomize;
Min:=1;
Max:=1;
Write('Исходный массив:');
For i:= 1 to N do
Begin
A[i]:=random(44)+17;
Write(' ',A[i]);
if A[Min]>A[i] then Min:=i;
if A[Max]<A[i] then Max:=i;
End;
WriteLn;
WriteLn('Max = ',A[Max]);
WriteLn('Min = ',A[Min]);
WriteLn('Max - Min = ',A[Max]-A[Min]);
ReadLn
End.
Const
N = 13;
Var
MM:array[1..N] of byte;
B:byte;
i,Max:integer;
Begin
Randomize;
Max:=1;
Write('Исходный массив:');
For i:= 1 to N do
Begin
MM[i]:=random(90)+10;
Write(' ',MM[i]);
if MM[i]>MM[Max] then Max:=i;
End;
WriteLn;
WriteLn('Max(MM) = MM[',Max,'] = ',MM[Max]);
Write('Новый массив:');
B:=MM[1];
MM[1]:=MM[Max];
MM[Max]:=B;
For i:= 1 to N do
Write(' ',MM[i])
End.
Var A,d,S:integer;
Begin
Write('Искомые числа:');
For A:= 300 to 600 do
Begin
S:=A+1;
d:=A div 2;
While d>1 do
Begin
if A mod d = 0 then S:=S+d;
d:=d-1
End;
if S = 50 then Write(' ',A);
End
End.
Программа, разумеется, не выдаст ни одного числа, т.к. каждое число делится на себя и на единицу. То есть сумма делителей всегда будет больше 301.
Если не брать в расчёт само число и единицу, то программа будет выглядеть так:
Var A,d,S:integer;
Begin
Write('Искомые числа:');
For A:= 300 to 600 do
Begin
S:=0;
d:=A div 2;
While d>1 do
Begin
if A mod d = 0 then S:=S+d;
d:=d-1
End;
if S = 50 then Write(' ',A);
End
End.
Результат работы программы:
Искомые числа: 301 481 589