Максим Ардушин
Гуру
(4092)
11 лет назад
begin
var a:integer;
a:=3;
if (a=12) or (a=1) or (a=2) then writeln(‘зима’);
if (a=3) or (a=4) or (a=5) then writeln(‘весна’);
if (a=6) or (a=7) or (a=8) then writeln(‘лето’);
if (a=9) or (a=10) or (a=11) then writeln(‘осень’);
end.
kb3
Мыслитель
(9722)
11 лет назад
vgs: array [0..4] of string;
….
vgs[0]:=’Зима’;
vgs[1]:=’Весна’;
vgs[2]:=’Лето’;
vgs[3]:=’Осень’;
….
function vg(i:byte):string;// i – номер месяца от 1 до 12
begin
i:=(i div 3)mod 4; //теперь i номер квартала от 0 до 3
vg:=vgs[ i ];
end;
//а 4 условных оператора это плохо
jestero 11 / 11 / 2 Регистрация: 17.02.2014 Сообщений: 947 |
||||
1 |
||||
Определить время года по номеру месяца15.07.2014, 13:02. Показов 30263. Ответов 5 Метки нет (Все метки)
Подскажите, пожалуйста, почему не компилируется?
0 |
6805 / 4564 / 4817 Регистрация: 05.06.2014 Сообщений: 22,438 |
|
15.07.2014, 13:14 |
2 |
Кавычку забыли после слова осень.
0 |
Почетный модератор 64285 / 47584 / 32739 Регистрация: 18.05.2008 Сообщений: 115,182 |
|
15.07.2014, 13:36 |
3 |
почему не компилируется? Тау и будете после каждой синтаксической ошибки истерить?
0 |
11 / 11 / 2 Регистрация: 17.02.2014 Сообщений: 947 |
|
15.07.2014, 14:28 [ТС] |
4 |
Puporev, не всегда понимаю что имеет в виду компилятор.
0 |
1646 / 1075 / 1081 Регистрация: 03.07.2013 Сообщений: 4,507 |
|
15.07.2014, 16:05 |
5 |
что имеет в виду компилятор. Компилятор обычно сообщает в какой строке ошибка и какого типа ошибка. Просто потрудитесь перевести ошибку на русский (если она на аглицком) и присмотреться к указанной строке.
0 |
bormant Модератор 7533 / 4394 / 2784 Регистрация: 22.11.2013 Сообщений: 12,584 Записей в блоге: 1 |
||||
16.07.2014, 12:22 |
6 |
|||
Проверять номер месяца можно в самом case, дополнительный if не нужен:
1 |
Case3. Дан номер месяца — целое число в диапазоне 1–12 (1 — январь, 2 февраль и т. д.). Вывести название соответствующего времени года («зима», «весна», «лето», «осень»).
Решение:
Delphi/Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 |
program Case3; var M:Integer; begin Write(‘Введите номер месяца: ‘); Readln(M); Case M of 12,1,2 : Writeln(‘зима’); 3..5 : Writeln(‘весна’); 6..8 : Writeln(‘лето’); 9..11 : Writeln(‘осень’); end; end. |
Другие задачи из раздела Case можно посмотреть здесь.
Напишите программу в Паскаль, которая получает номер месяца и выводит его название и время года.
Пример : Введите номер месяца : 5 Этот месяц – май, время года – весна.
Пример : Введите номер месяца : 15 Неверный номер месяца.
Вы находитесь на странице вопроса Напишите программу в Паскаль, которая получает номер месяца и выводит его название и время года? из категории Информатика.
Уровень сложности вопроса рассчитан на учащихся 10 – 11 классов. На странице
можно узнать правильный ответ, сверить его со своим вариантом и обсудить
возможные версии с другими пользователями сайта посредством обратной связи.
Если ответ вызывает сомнения или покажется вам неполным, для проверки
найдите ответы на аналогичные вопросы по теме в этой же категории, или создайте
новый вопрос, используя ключевые слова: введите вопрос в поисковую строку,
нажав кнопку в верхней части страницы.
program months; uses crt; type Period=record months: array[1..12] of string; season: array[1..4] of string; end; {Объявлен тип, содержащий в себе массив из месяцев и массив из времен года} const ms1: array[1..12] of string = ('Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'); ms2: array[1..4] of string = ('Весна', 'Лето', 'Осень', 'Зима'); var Date: Period; Num, i: Byte; begin ClrScr; for i:=1 to 12 do begin Date.months[i]:=ms1[i]; Date.season[i]:=ms2[i]; end; {----------} Write('Введите число от 1 до 12: '); Readln(Num); {----------} Write('Месяц: ', Date.months[num]); Writeln; if (num >= 3) and (num <= 5) then Write('Время года: ', Date.season[1]); if (num >= 6) and (num <= 8) then Write('Время года: ', Date.season[2]); if (num >= 9) and (num <= 11) then Write('Время года: ', Date.season[3]); if (num = 12) or (num <= 2) then Write('Время года: ', Date.season[4]); Readln; end.