Дана задача(Паскаль):
дана последовательность x1<x2<...<xn вещественных чисел и вещественное число y. Написать программу для вычисления такого k,
что xk<y<xk+1. (здесь 1,2,n,k,k+1 - нижние индексы чисел)
Я написал программу, но что-то в ней не так, посмотрите пожайлуста и исправьте, где не так.
var
x,y:real;
k,n:byte;
mas:array[1..100] of real;
begin
writeln('vvesti y');
readln(y);
writeln('vvesti n');
readln(n);
for k:=1 to n do
readln(mas[k]);
if (mas[k]<y) and (mas[k+1]>y) then writeln(k) else
writeln('y ne udovletvoryaet usloviu');
readln;
end.
Исправьте ошибки
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
М-да. После прохождения цикла, k у тебя равно n, соответственно ты делаешь проверку для последнего введённого числа и ещё одного невведённого. В зависимости от компилятора, у тебя n+1 элемент массива либо содержит 0, либо мусор.
Даже самый дурацкий замысел можно воплотить мастерски