![]() |
Люди, в чем ошибка? просит поставить ";" перед вторым else. Но оно там не нужно
Program formula;
var a, b, c, d, e, g, k, l, m, n, p, t, v: real; begin writeln('введите коэффициенты уравнения '); readln(a, b, c); d:= (b * b) - (4 * a * c); if d < 0 then writeln('уравнение не имеет решений ') else begin if d = 0 then e:= (-b)/ (2 * a); g:= sqrt(e); k:= g * (-1); writeln('уравнение имеет два корня ', g:6:3, ' è ', k:6:3) else begin if d > 0 then l:= ((-b) + sqrt(d))/(2 * a); m:= ((-b) - sqrt(d))/(2 * a); n:= sqrt(l); p:= n * (-1); t:= sqrt(m); v:= t * (-1); writeln('уравнение имеет четыре корня: ', n:6:3, ' ; ', p:6:3, ' и ', t:6:3, ' ; ', v:6:3); end end end. |
Друг мой, всё очень просто))
Дело в том, что первый твой ELSE привязан к первому IFу (и это правильно) Далее следует второй ELSE, а второго IFа ПЕРЕЛ ним нету. ELSE идёт исключительно в связки с IF ( а точнее после него) Пример: Если а=б то с=а+б ИНАЧЕ с=2*а А ты написал примерно следующее: Если <условие> то сделай действие один ИНАЧЕ1 действие 2 ИНАЧЕ2 действие 3 ИНАЧЕ2 (он же второй ELSE) не привязан к условию (IF) P,S, Наверное тебе уже не нужен ответ, т.к. ты писал пост аж 29 марта, но тем не менее)) |
| Текущее время: 16:11. Часовой пояс GMT +4. |
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2007-2016, PCHelpForum.ru.