Обозначения:
A=x∈A
B=x∈{2;4;...;12}
C=x∈{3;6;...;15}
------------------------------------------
B→((C*¬A)→¬B)=1
¬B+¬(C*¬A)+¬B=1
¬B+¬C+A=1
A+( ¬B+¬C )=1 (тк A+¬A=1, то ¬A=¬B+¬C )
¬A=¬B+¬C
¬¬A=¬(¬B+¬C)
A=B*C ( A - состоит из общих элементов В и С)
А={6;12}
6+12=18
ответ 18
Значит так...очередная нудная программа с простым алгоритмом.
Печатает начальный массив, потом диагональ(в уже измененном массиве), потом новый массив, потом число элементов 19..59, произведение диагонали, сумму элементов столбца s.
program test;
uses crt;
var
arr:array[1..8,1..8] of integer;
i,j,cou,pr,s,sum:integer;
begin
clrscr;
randomize;
pr:=1;
s:=7;
for i:=1 to 8 do
begin
for j:=1 to 8 do
begin
arr[i,j]:=random(127)+2;
write(arr[i,j],' ');
end;
writeln;
end;
writeln;
for i:=1 to 8 do
for j:=1 to 8 do
begin
if (arr[i,j]>18) and (arr[i,j]<60) then
begin
cou:=cou+1;
arr[i,j]:=0;
end;
if i=j then
begin
pr:=pr+arr[i,j];
write(arr[i,j],' ');
end;
if j=s then
sum:=sum+arr[i,j];
end;
writeln;writeln;
for i:=1 to 8 do
begin
for j:=1 to 8 do
write(arr[i,j],' ');
writeln;
end;
writeln;
writeln(cou);
writeln(pr);
writeln(sum);
readln;
end.
I=600Кбайт=600*2^10байт
К=60*х*64
i=2байта
x=600*2^10/
------------- = 10*2^3=320
2*60*2^6
основное - скорость и точность
а дальше уже зависит от возможностей программы
например просмотр промежуточных результатов
выставление точности расчетов
задание алгоритма расчета любой сложности
быстрый перерасчет при изменении начальных данных
динамическое изменение результатов в зависимости от исменения условий
Степень числа.
Например, 1*10^2+4*10^1+3*10^0+5*10^-1
будет записана как 1*
+4*
+3*