Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.91/54: Рейтинг темы: голосов - 54, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 20

Вывести название месяца по введенной дате

19.04.2012, 21:14. Показов 11756. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,
В программу вводится строка, содержащее значение календарной даты в формате мм/дд/гг.
Необходимо сделать, чтобы в результате месяц выводился словом(январь, февраль).

Не получается часть программы, где месяц меняется на слово. Делаю с помощью case of.
Выдаёт следующую ошибку: ordinal expression expected.
Помогите, пожалуйста)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.04.2012, 21:14
Ответы с готовыми решениями:

Вывести знак Зодиака, соответствующий введенной дате
21. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату. Вывести знак Зодиака, соответствующий этой дате: «Водолей»...

По номеру месяца вывести его название
За номером месяца вывести его название

По введенному номеру месяца вывести название периода года
помогите решить) 2)По введенному номеру месяца, вывести на экран название периода года, к которому он относится. Если введен неправильный...

26
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 20
20.04.2012, 21:29  [ТС]
Студворк — интернет-сервис помощи студентам
А без модулей ошибку выдаёт тоже(
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
20.04.2012, 21:35
Цитата Сообщение от druk Посмотреть сообщение
А без модулей ошибку выдаёт тоже(
Ты видно совсем плохой... Конечно будет выдавать ошибку, если в тексте программы используются методы из этих модулей.
Я же имел ввиду что можно все написать точно как в Турбо Паскале, без использования дополнительных возможностей Фрее.
1
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 20
20.04.2012, 21:41  [ТС]
хммм..
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
20.04.2012, 21:42
Как это ни причем?
Pascal
1
2
3
4
5
6
7
8
 date : tdate;//а это?
begin
   writeln('vvedite datu mm/dd/gg');
   readln(s);
 
   date := StrToDate(s, 'MM/DD/YY', '/');//и это?
   writeln(Format('%s %d %d',
                  [month[MonthOf(date)], DayOf(date), YearOf(Date)]));//и это?
1
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 20
21.04.2012, 05:06  [ТС]
В проге UI да, а я говорю про свой вариант, там не должно быть модулей. Или "copy" требует модуль?
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
21.04.2012, 07:23
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const mes:array[1..12] of string=('yanvar','fevral','mart','aprel','may','iun',
                                  'iul','avgust','sentyabr','oktyabr','noyabr','decabr');
var s,d,g,c1,c2:string;
    m,c:integer;
begin
writeln('vvedite datu mm/dd/gg');
readln(s);
val(copy(s,1,2),m,c);
d:=copy(s,4,2);
g:=copy(s,7,2);
//val(copy(s,4,2),d,c);  если нужно перевести в число
//val(copy(s,7,2),g,c);
write(mes[m],' ',d,' 19',g);
readln;
end.
1
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 20
21.04.2012, 22:11  [ТС]
Да, так всё работает. Доделал. Немного не так, как хотелось, но всё-таки работает. Думаю, покатит))
Спасибо большое)

Добавлено через 36 минут
Теперь нужно в этой программе сделать процедуру.
Дело вот в чём, у меня получаются разные значения L и L1. Почему??
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
35
36
37
38
39
40
41
42
43
44
45
var s3:array [1..50] of string;
m2,k,i,c2,m3,d2,g2,s2,m61:integer;
d3,g3:string;
L1:boolean;
mes:array [1..12] of string=('yanvar','fevral','mart','aprel','may','iun',
                                  'iul','avgust','sentyabr','oktyabr','noyabr','decabr');
procedure convert (m,d1,g1,s1,c:integer; var s,d,g:string; L:boolean);
begin
val(copy(s,1,2),m,c);
d:=copy(s,4,2);
g:=copy(s,7,2);
val(d,d1,c);
val(g,g1,c);
s1:=length(s);
if (m in [4,6,9,11]) and (d1=31) then
L:=false
else
  begin
  if (m=2) and (g1 mod 4<>0) and (d1=29) then
  L:=false
  else
    begin
    if (m>12) or (s1<>8) or (d1>31) then
    L:=false
    else
    L:=true;
    end;
  end;
end;
begin
 writeln('vvedite kolichestvo dat');
 readln(k);
 for i:=1 to k do
 begin
  writeln('vvedite datu mm/dd/gg');
readln(s3[i]);
 convert(m2,d2,g2,s2,c2,s3[i],d3,g3,L1);
 val(copy(s3[i],1,2),m2,c2);
 if L1 then
 writeln(mes[m2],' ',d3,' 19',g3)
 else
 writeln('vvedena ne data');
 end;
readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.04.2012, 22:11
Помогаю со студенческими работами здесь

Вывести день недели и название месяца по введенному дню
Цель:Календарик. Пользователь вводит число и месяц (числами), а программа в ответ выводит: день недели, название месяца. (Используя только...

Ввести номер месяца и вывести название времени года
1 Задача:Ввести номер месяца и вывести название времени года. ПРИМЕР: Введите число месяца 4 весна

По введёному номеру месяца определить название месяца
Народ поманите плз :help: мне надо срочно решить 4 задачи ,а то мне грозит отчисление:wall:, 1 Написать программу,которая печатает...

По введенной дате (число, месяц) определить знак зодиака. (Pascal)
помогите, завтра нужно сдать.. вроде делается через case как-то, но я хз как(

По введенной дате рождения дополнить файл строками соответсвующего знака Зодиака
Ось такє завдання, допоможіть По уведеній даті народження (день і місяць, форма уведення у файл довільна) доповнити файл рядками...


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru