1)Решите пример: F= ( 1 & 0) ^ ( 0^1) *
0
1
10
11
2)Как называется операция логического равенства *
Конъюнкция
Инверсия
Импликация
Эквиваленция
3)Напишите результат операции импликации со значениями: 1 0 *
1
0
10
11
4)Напишите результат операции "Эквиваленции" со значениями: 0 0 *
1
0
10
11
5)Напишите результат операции "Конъюнкции" со значениями: 1 1 *
1
0
10
11
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