• Предмет: Информатика
  • Автор: den32145
  • Вопрос задан 4 месяца назад

ДАЮ 40 БАЛОВ! По дате рождения определить знак зодиака. обозначить d - день, и - месяц на паскале и использовать boolean 17 января

Ответы

Ответ дал: kulibaina
1

Ответ:

program ZodiacSign;

var

 d, i: integer;

 isCapricorn: boolean;

begin

 write('Введите день рождения: ');

 readln(d);

 write('Введите месяц рождения: ');

 readln(i);

 isCapricorn := (i = 12) and (d >= 22) or (i = 1) and (d <= 19);

 if isCapricorn then

   writeln('Ваш знак зодиака: Козерог')

 else if (i = 1) and (d >= 20) or (i = 2) and (d <= 18) then

   writeln('Ваш знак зодиака: Водолей')

 else if (i = 2) and (d >= 19) or (i = 3) and (d <= 20) then

   writeln('Ваш знак зодиака: Рыбы')

 else if (i = 3) and (d >= 21) or (i = 4) and (d <= 19) then

   writeln('Ваш знак зодиака: Овен')

 else if (i = 4) and (d >= 20) or (i = 5) and (d <= 20) then

   writeln('Ваш знак зодиака: Телец')

 else if (i = 5) and (d >= 21) or (i = 6) and (d <= 21) then

   writeln('Ваш знак зодиака: Близнецы')

 else if (i = 6) and (d >= 22) or (i = 7) and (d <= 22) then

   writeln('Ваш знак зодиака: Рак')

 else if (i = 7) and (d >= 23) or (i = 8) and (d <= 22) then

   writeln('Ваш знак зодиака: Лев')

 else if (i = 8) and (d >= 23) or (i = 9) and (d <= 22) then

   writeln('Ваш знак зодиака: Дева')

 else if (i = 9) and (d >= 23) or (i = 10) and (d <= 22) then

   writeln('Ваш знак зодиака: Весы')

 else if (i = 10) and (d >= 23) or (i = 11) and (d <= 21) then

   writeln('Ваш знак зодиака: Скорпион')

 else if (i = 11) and (d >= 22) or (i = 12) and (d <= 21) then

   writeln('Ваш знак зодиака: Стрелец');

end.

Объяснение:

Оператор "and" (і) поверне значення "True", якщо обидва операнди (d >= 20 and i == 2) є "True". Таким чином, у нашому випадку, якщо d більше або дорівнює 20 і місяць рівний 2 (лютий), то це значить, що знак зодіаку - Водолій. Якщо це умова не виконується, то перевіряється наступна умова.

Вас заинтересует