Другие языки программирования и технологии

Помогите найти ошибку. Программа не работает. Пишет ELSE без IF. Не могу понять в чем дело.

REM x - vvodimiy argument, F,G - vspomogatel'nie funkcii, Y - rezul'tat. Vipolnil Plaxin Oleg.
DEFSNG A-Z
INPUT "Znachenie argumenta"; x
F = 0
G = 0
IF (x < -3) THEN G = EXP(x)
ELSE
IF (x >= -3) THEN F = 2 * x + 1
END IF
IF (x >= 0) THEN F = COS(x)
ELSE
IF (F > 0) AND (F < .5) THEN G = sqrt(F) - 1
END IF
Y = 3 * x * x * x + SIN(F) - G * G * G * G
PRINT "Pri x="; x; "znachenie funkcii Y="; Y
END
Timur Nihlo
Timur Nihlo
7
Вообще, чтобы хотя бы что-то понять, надо знать исходную задачу, а ты ее не привел. Тогда, только так:

DEFSNG A-Z

INPUT "Znachenie argumenta"; x
F = 0
G = 0

IF (x < -3) THEN
    G = EXP(x)
ELSEIF (x >= 0) THEN
    F = COS(x)
ELSEIF (x >= -3) THEN
    F = 2 * x + 1
END IF

IF (F > 0) AND (F < .5) THEN
    G = sqrt(F) - 1
END IF

Y = 3 * x * x * x + SIN(F) - G * G * G * G

PRINT "Pri x="; x; "znachenie funkcii Y="; Y
Se
Sergey
52 130
Лучший ответ
Ой-ей-ей.. .

IF (первое) (x < -3) THEN (первое) G = EXP(x)
ELSE (первое)
IF (второе) (x >= -3) THEN (второе) F = 2 * x + 1
END IF (второе)
IF (третье) (x >= 0) THEN (третье) F = COS(x)
ELSE (откуда? )
IF (четвертое) (F > 0) AND (F < .5) THEN (четвертое) G = sqrt(F) - 1
END IF (четвертое)
(где закрывается первое? )

Языка программирования не знаю. Но - вот так, случайно, не заработает?
IF (x < -3) THEN G = EXP(x)
ELSE
F = 2 * x + 1
END IF
IF (x >= 0) THEN F = COS(x)
ELSE
IF (F > 0) AND (F < .5) THEN G = sqrt(F) - 1
END IF
END IF
Н Али
Н Али
86 475
Прочитай про правила записи условного оператора.
IF (x < -3) THEN G = EXP(x)
ELSE
- так нельзя. Есть разные формы условного оператора, ты недопустимо смешал их.

DEFSNG A-Z
INPUT "Znachenie argumenta"; X
F=0 : G=0
IF X<-3 THEN G=EXP(X) ELSE F=2*x+1
IF X>=0 THEN F=COS(X) ELSE IF F>0 AND F<.5 THEN G=SQR(F)-1
Y=3*X^3+SIN(F)-G^4
PRINT "Pri x="; X; "znachenie funkcii Y="; Y
Николай Седых
Николай Седых
50 295