информатика, посмотрите что не верно))
надо программу чтобы определяла по дате знак зодиака, что тут не верно? ?
теперь так, тоже не работает))
надо программу чтобы определяла по дате знак зодиака, что тут не верно? ?
теперь так, тоже не работает))
z и d при вводе надо разделять пробелом а не точкой.
Программа, хотя и компилируется, но написана весьма коряво.
if <условие> then
...
else if <условие> then
...
else ...и т. д.
Точки с запятыми после else не нужно, иначе у тебя просто получается блок else с пустым оператором ";"
z должно присваивать значение, то есть z:=01, а у тебя просто z=01.
и else не нужен в конце.
и тебе не кажется, что у тебя два условия одинаковых?
нет там не присвоение а условие это правильно. между "2 с" должен быть знак. и последний елс лишний и условие 2 надо менять
program zodiak;
var
z, d: Integer; { месяц, день рождения }
begin
{ Воод данных }
Write('Месяц рождения: ');
ReadLn(z);
Write('День рождения: ');
ReadLn(d);
Write('Ваш знак зодиака: ');
{ Обработка данных }
case z of
1: if d < 21 then WriteLn('козерог') else WriteLn('водолей');
2: if d < 19 then WriteLn('водолей') else WriteLn('рыбы');
3: if d < 21 then WriteLn('рыбы') else WriteLn('овен');
{ и тд }
end;
end.
Вы вводимые данные объявили как тип integer, а вводите дробные значения, вот программа и выдает ошибку.
Предлагаю вам такой вариант решения вашей задачи
У тебя была ошибка при вводе значения (в изначальной программе) !
Нужно было вводить 2 числа через пробел:
20 02