Bài 3:
Cách làm: Cho mảng 2 chiều a[n,n]. Ta xét đường chèo (1,1) -> (n,n) (tạm gọi giá trị ô là i).
Nếu như i là số nguyên tố:
Khi ta có được số nguyên tố, ta thực hiện kiểm tra nếu
65 <= i và i <= 90
hoặc là 97 <= i và i <= 122
Định nghĩa max: là số nguyên tố lớn nhất trong đường chéo
Định nghĩa hàm prime(x): là hàm kiểm tra số nguyên tố
Trường hợp đặc biệt
3
2 2 2
2 2 2
2 2 2
program alpha;
uses crt;
var a : array[1..100, 1..100] of integer;
n : integer;
i,j : integer;
max : integer;
f,g : text;
function prime(x : integer) : boolean;
var ii : integer;
begin
if (x < 2) then exit(false);
for ii := 2 to round(sqrt(x)) do
if (x mod ii = 0) then exit(false);
exit(true);
end;
BEGIN
clrscr;
assign(f, 'alpha.inp'); reset(f);
readln(f, n);
for i := 1 to n do
for j := 1 to n do read(f, a[i,j]);
close(f);
max := -1;
for i := 1 to n do
begin
if (prime( a[i,i] ) = true) then
if (a[i,i] > max) then max := a[i,i];
end;
assign(g, 'alpha.out'); rewrite(g);
if (max = -1) then write(g, max)
else
begin
if (65 <= max) and (max <= 90) then write(g, char(max))
else if (97 <= max) and (max <= 122) then write(g, char(max))
else write(g, -1);
end;
close(g);
END.