Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2009, 21:53   #1
Яська
Пользователь
 
Регистрация: 09.01.2009
Сообщений: 50
Восклицание по заданной дате вычислить какой день недели. Pascal.

по заданной дате вычислить какой день недели.
Яська вне форума Ответить с цитированием
Старый 28.01.2009, 22:08   #2
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

не знаю как в паскале но в delphi вот так
Код:
var
  d: TDateTime;
begin
  d := StrToDate(Edit1.Text);
  ShowMessage(FormatDateTime('dddd',d));
end;
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 28.01.2009, 23:42   #3
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

алгоритм вычисления дня недели
alexBlack вне форума Ответить с цитированием
Старый 28.01.2009, 23:44   #4
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию

Код:

Program Day_of_week;

uses CRT;

procedure GetDay (var d, m, y : integer);
var
correct : byte;
begin
correct := 1;
repeat
writeLn ('Введите дату.');
write ('День - ');
readLn (d);
write ('Месяц - ');
readLn (m);
write ('Год - ');
readLn (y);

{ Проверим правильность года. Если год не "правильный", то попросим ввести дату ещё раз }
if y <= 4903 then
if y >= 1000 then
correct := 0;
until correct = 0
end;

procedure CountDay (d, m, y : integer);
var
week : array [0 .. 6] of string[11];
c, w : integer;
begin
week [0] := 'воскресенье';
week [1] := 'понедельник';
week [2] := 'вторник';
week [3] := 'среда';
week [4] := 'четверг';
week [5] := 'пятница';
week [6] := 'суббота';

{ Месяц январь или февраль = > нужно преобразовать }
if m < 3 then
begin
m := m + 10;
y := y - 1
end
else
m := m - 2;

c := y div 100;
y := y mod 100;
w := abs (trunc (2.6 * m -0.2) + d + y div 4 + y + c div 4 - 2 * c) mod 7;
writeLn ('соответствует день недели - ', week [w])
end;

var
d, y, m : integer;

begin
ClrScr;
GetDay (d, m, y);
CountDay (d, m, y)
end.
NoHeart вне форума Ответить с цитированием
Старый 28.01.2009, 23:51   #5
Иван 883
Пользователь
 
Регистрация: 25.12.2008
Сообщений: 39
По умолчанию Вот мой вариант

program task;
uses crt;
var n:integer;
begin
clrscr;
writeln('Введите число');
readln(n);
case n of
1,8,15,22,29:writeln('Понедельник') ;
2,9,16,23,30:writeln('Вторник');
3,10,17,24,31:writeln('Среда');
4,11,18,25:writeln('Четверг');
5,12,19,26:writeln('Пятница');
6,13,20,27:writeln('Суббота');
7,14,21,28:writeln('Воскресенье');
else writeln('Такого дня в недели нет');
end;
readln;
end.
Иван 883 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычислить значение f(x)=x+lnx в заданной точке. Наталья111 Паскаль, Turbo Pascal, PascalABC.NET 6 23.12.2008 12:33
вычислить целую часть произведения синуса от числа образованного заданной цифрой и иследующей за ней на xx__vanya__xx Паскаль, Turbo Pascal, PascalABC.NET 0 13.11.2008 22:46
Pascal, нужна помощь с меню заданной конфигурации Хоб Помощь студентам 1 12.02.2008 09:26
Найти какой день недели ? Cantana Помощь студентам 6 31.10.2007 15:29
Как узнать какой сегодня день недели? Рустам Общие вопросы Delphi 9 05.09.2007 17:04