Другие языки программирования и технологии

Заполнить матрицу из 7 строк и 7 столбцов случайными числами в интервале [10;90]

Заполнить матрицу из 7 строк и 7 столбцов случайными числами в интервале [10;90] и вывести на экран. Обнулить элементы отмеченный зеленым фоном и вывести полученную матрицу на экран.
третий вариант, смотри позже в комментариях (а нет, 3-й вариант перепиши у Pandacrash)

uses crt;
var case_num, i, j: integer;
ch: char;
mas: array [1..100,1..100] of integer;
const n=7;
begin
clrscr;
textcolor (green);
writeln (' for Exit press "9"... ');
textcolor (white);
writeln (' введите любой символ для заполнения матрицы (* или 0)... ');
readln(ch);
for i:=1 to n do
for j:=1 to n do
mas[i,j]:=random(81)+10;
while ch <> '9' do
begin
clrscr;
writeln (' Выберите варианты заполнения матрицы 1, 2, 3 ...');
readln (case_num);
case case_num of

1 : begin
for i:=1 to n do
begin
for j:=1 to n do
if ((i>=2) and (i<=n-1) and (j>=2) and (j<=n-1)) then write (ch: 3)
else write (mas[i,j]:3);
writeln;
end;
repeat until keypressed;
end;

2: begin
for i:=1 to n do
begin
for j:=1 to n do
if ( (i+j)>n) and (j<n) and (i = i) and (j < n-i+2)) or ((j > = n-i+1) and (j < = i)) then write (ch: 3)
else write (mas[i,j]:3);
writeln;
end;
repeat until keypressed;
end;

9: exit;
else
begin
writeln (' Допущена ошибка при вводе ...for Exit press "9"...');
repeat until keypressed;
end;
end;
end;
writeln;
end.
CF
Camvirt For Girls
24 309
Лучший ответ
И чиво это?
Андрей Кузьмин
Андрей Кузьмин
67 543
Pascal?

Ну вот короче, все кроме 3-его варианта. 3-ий вариант не до конца.

var a:array[1..7,1..7] of integer; i,j:integer;
begin
writeln('matrix: ');
for i := 1 to 7 do begin
for j := 1 to 7 do begin
a[i,j] := random(81)+10;
write(a[i,j]:3);
end;
writeln;
end;
writeln;
writeln('result: ');
for i := 1 to 7 do begin
for j := 1 to 7 do begin

// вариант1
//if ((i<>1) and (j<>1) and (i<>7) and (j<>7)) then a[i,j] := 0;

// вариант2
//if ((i<>0)and(i<>7)and(j<>0)and(j<>7)and(i>7-j)) then a[i,j] := 0;

// вариант3
//if ((round(7/2)-i<j)and(i-round(7/2)<j)and(j-round(7/2)<i){and(round(7/2)-j<i)}) then a[i,j] := 0;
write(a[i,j]:3);
end;
writeln;
end;
end.
Алексей Петров
Алексей Петров
13 080