Представим таблицу в виде: (см. Рис. 1) Получаем уравнение 8 + b1 + 4 = 2*b1 + (b1+2) + 4 Отсюда: b1 = 3. Получаем (см. Рис. 2)
Далее, заметим, что сумма по горизонтали и по диагонали равна 15. Заполняем таблицу (см. Рис. 3)
ответ: С2 = 9
Решение 2.
Заданным свойством (иметь одинаковую сумму по горизонталям, вертикалям и диагоналям) обладает единственный МАГИЧЕСКИЙ КВАДРАТ (не учитывая его повороты и отражения относительно осей). Это магический квадрат 3х3 с магической суммой 15 (см. Рис. 4)
Program n1; const n=10; var a: array[1..n] of integer; n3,n2,min,max,i,imin,imax,t: integer; begin randomize; writeln('введите диапазон (a;b) :'); write('a='); readln(n3); write('b='); readln(n2); write('сгенерированный массив: '); for i:=1 to n do begin a[i]:=random(n2-n3+1)+n3; write(a[i],' '); end; writeln; min:=a[1]; for i:=2 to n do if a[i]<min then min:=a[i]; for i:=1 to n do if a[i]=min then begin imin:=i; break; end; max:=a[1]; for i:=2 to n do if a[i]>max then max:=a[i]; for i:=1 to n do if a[i]=max then begin imax:=i; break; end; t:=a[imax]; a[imax]:=a[imin]; a[imin]:=t; write('полученный массив: '); for i:=1 to n do write(a[i],' '); end.
Представим таблицу в виде: (см. Рис. 1)
Получаем уравнение
8 + b1 + 4 = 2*b1 + (b1+2) + 4
Отсюда:
b1 = 3.
Получаем (см. Рис. 2)
Далее, заметим, что сумма по горизонтали и по диагонали равна 15.
Заполняем таблицу (см. Рис. 3)
ответ: С2 = 9
Решение 2.
Заданным свойством (иметь одинаковую сумму по горизонталям, вертикалям и диагоналям) обладает единственный МАГИЧЕСКИЙ КВАДРАТ (не учитывая его повороты и отражения относительно осей).
Это магический квадрат 3х3 с магической суммой 15 (см. Рис. 4)
ответ: С2 = 9
const n=10;
var a: array[1..n] of integer;
n3,n2,min,max,i,imin,imax,t: integer;
begin
randomize;
writeln('введите диапазон (a;b) :');
write('a=');
readln(n3);
write('b=');
readln(n2);
write('сгенерированный массив: ');
for i:=1 to n do
begin
a[i]:=random(n2-n3+1)+n3;
write(a[i],' ');
end;
writeln;
min:=a[1];
for i:=2 to n do if a[i]<min then min:=a[i];
for i:=1 to n do if a[i]=min then begin
imin:=i;
break;
end;
max:=a[1];
for i:=2 to n do if a[i]>max then max:=a[i];
for i:=1 to n do if a[i]=max then begin
imax:=i;
break;
end;
t:=a[imax];
a[imax]:=a[imin];
a[imin]:=t;
write('полученный массив: ');
for i:=1 to n do write(a[i],' ');
end.