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

0 голосов
35 просмотров

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

Язык : Паскаль.

Целое число K (0 <= K <= 1000)<br> Пример:
-------------------------------------------------------------------------------------
Входа: | Выхода:
0 | Tuesday, 01.01
5 | Sunday, 06.01
------------------------------------------------------------------------------------


Информатика (5.1k баллов) | 35 просмотров
0

Високосные года учитываются?

0

Да.

0

Основная проблема этой задачи- это нули перед числами) Могу сбросить готовый вариант без нулей.

0

Окей, формат вывода мне не так важен, как сам принцип решения задачи. С нулями сама уже разберусь. с:

Дан 1 ответ
0 голосов
Правильный ответ

// Я очень, невероятно не люблю изобретать велосипеды
//Поэтому воспользуемся уже встроенным типом DataTime
//Pascal ABC.NET Версия 2.2 Сборка 790
uses system;
var k:integer;
startSys:DateTime; //сабж
m,d:string;
begin;
readln(k);
startSys:=startSys.AddYears(2007); //добавляет года к старту, отсчёт от 1
startSys:=startSys.AddDays(k); //добавляет кол-во дней
//тип сам определяет високосный год или нет
writeln(startSys.DayOfWeek,', ',startSys.Day,'.',startSys.Month); //вывод
end.

(38.6k баллов)
0

Спасибо.. Мне надо было уточнить, что надо использовать старенький паскаль, не .нет

0

Не понимаю всех этих функций

0

Вы о free? В нём тоже есть подобный тип - TDateTime

0

Я знаю лишь pascal ABC, который, как стало известно, закрыли в 2007

0

Так это он и есть, хех.

0

Прошу прощения, .NET

0

ну так, а я о стандартном

0

Ладно, во всем виновата моя неосведомленность. Спасибо. Удачи.