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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2019, 14:28   #1
Alice96
Новичок
Джуниор
 
Регистрация: 24.03.2019
Сообщений: 2
По умолчанию Задача с использованием типа "Перечисление"

Написать программу, которая бы для указанного года распечатывала все даты, попадающие на понедельник, и все месяцы, начинающиеся с воскресенья. С клавиатуры ввести год и день недели, на который приходится в заданном году
1 января.
Alice96 вне форума Ответить с цитированием
Старый 25.03.2019, 14:46   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

начните решать самостоятельно, потом приведёте свой код и спросите, что не получается.

темы в помощь:
http://programmersforum.ru/showthread.php?t=74351
http://programmersforum.ru/showthread.php?t=43045
Serge_Bliznykov вне форума Ответить с цитированием
Старый 31.03.2019, 07:30   #3
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Math, StdCtrls, Grids;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
   Memo1.ScrollBars:=ssVertical;
   Edit1.Text:=FormatDateTime('yyyy',Now);
end;

procedure TForm1.Button1Click(Sender: TObject);
var d1,d2:tDateTime;
    i:integer;
begin
   Memo1.Clear;
   i:=StrToInt(Edit1.Text);
   d1:=StrToDate('01.01.'+IntToStr(i));
   d2:=StrToDate('01.01.'+IntToStr(i+1))-1;
   Memo1.Lines.Add('Понедельники:');
   For i:=Round(d1) to Round(d2) do
      If DayOfWeek(i)=2 then
         Memo1.Lines.Add(FormatDateTime('dd.mm.yyyy - ddd',i));
   Memo1.Lines.Add('');
   Memo1.Lines.Add('Месяцы с воскресенья:');
   For i:=Round(d1) to Round(d2) do
      If (DayOfWeek(i)=1) and (FormatDateTime('dd',i)='01') then
         Memo1.Lines.Add(FormatDateTime('dd.mm.yyyy - ddd',i));
end;

end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка (активно) E0167 аргумент типа "const char *" несовместим с параметром типа "char *" Deadroll Общие вопросы C/C++ 0 18.01.2019 20:29
Как вывести строку "старого" типа в компонентах Дельфи "нового" типа? Ship_1 Общие вопросы Delphi 8 23.06.2017 12:07
Нужно пояснить/прокомментировать код программы, или коды функций "Добавить" "Удалить" "Обновить(редактировать" "Поиск" "Период") ZIRASS PHP 4 15.06.2016 14:23
Как "повесить " передачу данных из формы на событие нажатия кнопки типа "button" ? vedro-compota JavaScript, Ajax 10 14.12.2010 21:05
Как обойти "преобразование типа из "string" в "float" невозможно" lexluter1988 Помощь студентам 1 07.08.2010 12:23