Паскаль. Данная программа работает, но только при некоторых значениях a[i]. Я думаю, что дело в этом условии (a[j])>(a[i]). Если a[j] примет отрицательное значение, то в ответе выйдет "не найдено", так же будет выведено не найдено если первое число в массиве не удовлетворяет условию(a[i] mod 2=0) and (a[i]>0), но является самым маленьким. Я понимаю почему, помогите исправить.


const
n=8;
var a:array[1..n] of integer;
j,i:integer;
begin
for i:=1 to n do
read(a[i]);
j:=1;
for i:=1 to n do
begin
if ((a[j])>(a[i])) and (a[i] mod 2=0) and (a[i]>0) then
j:=i
end;
if (a[j] mod 2=0) and (a[j]>0) then
write(a[j])
else
write('не найдено');
end.

Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Copyright © 2024 SCHOLAR.TIPS - All rights reserved.