Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 29.09.2011
Сообщений: 9
1

Установить ограничение на ввод количества дней в месяце

15.03.2012, 21:02. Показов 936. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В проге нужно сделать ограничение дней в месяце чтоб нельзя например было ввести в феврале (2) число больше 28. Год не высокосный.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
program p1;
 var      K:1..12;
     l:integer;
     z:integer;
begin
writeln ('введи номер месяца=');
readln (K);
writeln('введи день месяца=');
readln (l);
           case K  of 
                1: writeln (l);
                2: begin z:=31+l; writeln (z) end;
                3: begin z:=59+l; writeln (z)end;
                4: begin z:=90+l; writeln (z)end;
                5: begin z:=120+l; writeln (z)end;
                6: begin z:=151+l; writeln (z)end;
                7: begin z:=181+l; writeln (z)end;
                8: begin z:=212+l; writeln (z)end;
                9: begin z:=243+l; writeln (z)end;
                10: begin z:=273+l; writeln (z)end;
                11: begin z:=303+l; writeln (z)end;
                12: begin z:=334+l; writeln (z)end;
                end;
               end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2012, 21:02
Ответы с готовыми решениями:

Определения количества дней в месяце
12. Написать программу вывода количества дней в месяце года. Месяц задавать по его номеру. ...

Программа определения количества дней в месяце
Первое мое задание в питоне, да и вообще в программировании. При запуске питон ругается на "elif"....

Вычисление количества дней в месяце (используя switch)
Написать программу, используя оператор switch для вычисления дней в месяце, если даны: номер месяца...

Программа для расчитывания количества дней в месяце
Нужно разработать программу для определения количества дней в месяце в определенном году...

4
3451 / 2389 / 2135
Регистрация: 04.12.2011
Сообщений: 3,966
15.03.2012, 21:26 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

мож я чего недопонимаю, но зачем ты дни прибавляешь?

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var      K:1..12;
     l:integer;
     z:integer;
begin
writeln ('введи номер месяца=');
readln (K);
writeln('введи день месяца=');
           case K  of
                1: repeat readln(l); until l in [1..31];
                2: repeat readln(l); until l in [1..28];
                3: repeat readln(l); until l in [1..31];
                4: repeat readln(l); until l in [1..30];
                5: repeat readln(l); until l in [1..31];
                6: repeat readln(l); until l in [1..30];
                7: repeat readln(l); until l in [1..31];
                8: repeat readln(l); until l in [1..31];
                9: repeat readln(l); until l in [1..30];
                10: repeat readln(l); until l in [1..31];
                11: repeat readln(l); until l in [1..30];
                12: repeat readln(l); until l in [1..31];
                end;
  readln;
end.
если такая конструкция не подходит, то можно использовать
Pascal
1
until (l>=1)and(l<=31)
0
0 / 0 / 0
Регистрация: 29.09.2011
Сообщений: 9
15.03.2012, 21:41  [ТС] 3
прога должна вычислить N дня в невесокосном году по заданному числу и месяцу. сори не написал в начале
0
3451 / 2389 / 2135
Регистрация: 04.12.2011
Сообщений: 3,966
15.03.2012, 22:09 4
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 var      K:1..12;
     l:integer;
     z:integer;
begin
write('введи номер месяца= ');
readln (K);
write('введи день месяца= ');
           case K  of
                1:
                  begin
                    repeat readln(l); until l in [1..31];
                  end;
                2: begin
                     repeat readln(l); until l in [1..28];
                     l:=l+31;
                   end;
                3: begin
                     repeat readln(l); until l in [1..31];
                     l:=l+59;
                   end;
                4: repeat readln(l); until l in [1..30];
                5: repeat readln(l); until l in [1..31];
                6: repeat readln(l); until l in [1..30];
                7: repeat readln(l); until l in [1..31];
                8: repeat readln(l); until l in [1..31];
                9: repeat readln(l); until l in [1..30];
                10: repeat readln(l); until l in [1..31];
                11: repeat readln(l); until l in [1..30];
                12: repeat readln(l); until l in [1..31];
                end;
 
  writeln(l);
  readln;
end.
и так далее как первые три месяца


зы. так как правильно "весокосный" или "высокосный"?))
0
Вирусоборец
13100 / 7251 / 1535
Регистрация: 06.09.2009
Сообщений: 26,482
17.03.2012, 11:43 5
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var k, i, l, z: integer;
 
function GetMaxDay(d: Integer): Integer;
begin
 case d of
  1, 3, 5, 7, 8, 10, 12: GetMaxDay:= 31;
  4, 6, 9, 11: GetMaxDay:= 30;
  else GetMaxDay:= 28;
 end; 
end;
 
begin
 repeat
  write('Введи номер месяца: ');
  readln(K);
 until k in [1..12];
 repeat
  writeln('Введи день месяца: ');
  readln(l);
  until l in [1..GetMaxDay(K)];
 z:= 0;
 for i:= 1 to k-1 do
  z:= z + GetMaxDay(i);
 z:= z+l;
 writeln('Номер дня: ', z);
end.
0
17.03.2012, 11:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2012, 11:43
Помогаю со студенческими работами здесь

Перегрузка operator+ с учетом количества дней в месяце
Ребят я сделал 2 перегрузки оператора+ это &quot;дата+дата&quot; и &quot;дата+число&quot; - эти две перегрузки у меня...

Функция для вычисления количества дней в месяце
Помогите, пожалуйста, с решением задачи на языке C#: необходимо написать функцию f(int m, int d),...

Вычисление количества дней в месяце по введенному номеру месяца
Составьте программу для вычисления числа дней в месяце по введенному номеру месяца. Учитывается,...

Возвращение количества дней в месяце года в вычисляемом поле SQL Delphi
Всем Добрый день! Загружаю файл DBF с отфильтрованными полями через ADOQuery посредством...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru