Ребят, помогите пожалуйста, проблема с циклами. Обойдусь без предысторий с "хорошим учителем"...
Нужно написать циклы while и repeat/until. Обязательно с оператором if, ибо учитель просит, так как он необходим.
Область "определения" от x=-10 и x=10
Выражение такое: y = корень из (5-x)
Проблема заключается в том, что цикл я составил и он работал, но в качестве значения y под некоторыми значениями x выводилось некое NaN. (Собственно из-за этого if и просится)
Как убрать в принципе знаю, но понятия не имею как оформить.
Кому не лень, просьба помочь...
p.s. Напишите цикл полностью, от корки до корки, прошу...
Ответы
Ответ дал:
0
Ответ:
x := -10
while x <= 10 do begin
{Обязательно надо сделать проверку на знак}
{Потому что корень из отрицательных чисел не вычисляется}
{Результатом будет NaN - неопределённое значение}
if 5-x >= 0 then
y := sqrt(5-x);
x := x + 1
end;
{==============================================}
x := -10;
repeat
if 5 - x > 0 then y := sqrt( 5 - x);
x := x + 1;
until x >= 10;
Объяснение:
Вот и весь цикл
dementor228365:
Слушай, а вот там где Nan раньше появлялся, как мне в операторе write записать, к примеру, слово 'error', после y?
Я наверное плохо объясняю, но я столбиком делаю. И у меня вот
Х=-1 l 2.44... X=0 l 2.236...
в операторе if добавь ветку else write('error');
извиняй, я уже сплю. с телефона не оч. удобно отвечать
Дружище, прости меня, если сильно помешал. Спокойной ночи, надеюсь разберусь дальше
Огромная просьба к тебе... Напиши две программы, вот прям полностью, если понял суть моей проблемы. Если что это два разных задания, ну, это так, для галочки.
Мне нужно, чтобы когда y, на местах где он "не получается", писалось слово error
А так оно перед х пишется
В общем проблема такая, вкратце, нужное слово пишется перед х, а мне нужно, чтобы оно писалось после y, им где раньше NaN было
Вас заинтересует
2 года назад
2 года назад
8 лет назад
8 лет назад
9 лет назад