ответ: у тебя не правильное .в начале нужно найти максимальное число не оканч.на 3 , а потом вывести макс. число оканчивающееся на 3.ты разберись. но если ты шаришь в икт и просто не знаешь , как задать условие ,то там нужно через целые и кратные (div/mod) в твоем случае будет как-то так
if a mod 10=3 and a> max then max: =a
ну если ты ленивая жо#а то вот:
var a,b,k,max: integer;
begin
writeln('введите количество чисел > > n ');
readln(n);
max: =0;
for k: = 1 to n do;
begin
writeln('введите числа > > a ');
readln(a);
if (a mod 10=3) and (a> max) then max: =a
end;
writeln('самое больше число оканчивающееся на 3 -',max)
end.
в полной правильности я не уверен(т.к у меня нету паскаля),проверь компилятором
/// PascalABC.Net 3.4.2, 2053(11.05.19)
var
a, n: longint;
text: textfile;
function myMod(num, power, divider: longint): longint;
var
rest, i: longint;
begin
rest:=1;
divider := abs(divider);
for i := 1 to power do
begin
rest := rest * num;
rest := rest mod divider;
end;
myMod := rest;
end;
begin
assign(text, 'input.txt');
{rewrite(text);
writeln(text, 109);
close(text);}
reset(text);
read(text, a);
writeln('a=', a);
close(text);
n := 1;
repeat
n := n + 1;
until MyMod(n, n, a) = 0;
assign(text, 'output.txt');
rewrite(text);
writeln(text, n);
close(text);
{reset(text);
read(text, n);
writeln('n=', n);
close(text);}
end.