• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Нужна помощь написании программы-календаря

Катеринаа

Ученик
Регистрация
21 Окт 2011
Сообщения
5
Реакции
0
Баллы
0
Нужна помощь написании программы-календаря

Требуется программа,которая будет выводить на экран календарь 2012 года.
Хотя бы подскажите с чего начать например,или какие операторы вообще использовать.Хоть что-то
заранее благодарна
 
Язык программирования какой?
 
Ну вот, сделал я программку - попробуйте разобраться:
Код:
Uses CRT;
CONST
 Days_In_Month:Array[1..12] of ShortInt=(31,29,31,30,31,30,31,31,30,31,30,31);
 Days_Of_Week:Array[1..7] of String[2]=('Mo','Tu','We','Th','Fr','Sa','Su');
 Months:Array[1..4] of String=
 ('            January              February                  March',
  '             April                 May                      June',
  '             July                 August                 September',
  '            October              November                 December');
VAR
 Calend:Array[1..7,1..96] of ShortInt;
 D_new,D_old:ShortInt;
 i,j,m,k:Byte;
BEGIN
 D_new:=6;
 For m:=1 to 12 do
  begin
   D_old:=D_new;
   For j:=(m-1)*8+1 to (m-1)*8+8 do
    For i:=1 to 7 do
     begin
      If ((((j-(m-1)*8)-1)*7+i-D_old)<0) or
        ((((j-(m-1)*8)-1)*7+i-D_old)>Days_In_Month[m]) then
       Calend[i,j]:=0 else Calend[i,j]:=((j-(m-1)*8)-1)*7+i-D_old;
      If Calend[i,j]=Days_In_Month[m] then D_new:=i;
     end;
  end;

 Clrscr;
 For k:=1 to 2 do
  begin
   Writeln(Months[k]);
   For i:=1 to 7 do
    begin
     Write(Days_Of_Week[i],'  ');
     For j:=(k-1)*24+1 to (k-1)*24+24 do
      if Calend[i,j]=0 then write('   ') else write(Calend[i,j]:3);
     Writeln;
    end;
   Writeln;
   Writeln;
  end;

 Writeln('Press "Enter" to continue...');
 Readln;

 Clrscr;
 For k:=3 to 4 do
  begin
   Writeln(Months[k]);
   For i:=1 to 7 do
    begin
     Write(Days_Of_Week[i],'  ');
     For j:=(k-1)*24+1 to (k-1)*24+24 do
      if Calend[i,j]=0 then write('   ') else write(Calend[i,j]:3);
     Writeln;
    end;
   Writeln;
   Writeln;
  end;

 Readln;
END.

Результат работы программы должен выглядеть как-то так:
AAA01.webp AAA02.webp

Вообще-то есть у меня и графический вариант программы-календаря, и он, конечно, выдает результат покрасивее:
ANY_YE01.webp
Но!
1. Эта программа универсальная, т.е. для любого года.
2. Писал я ее лет 10-12 назад, причем утром, находясь в состоянии жуткого бодуна после дружеской вечеринки, просто чтобы чем-то себя занять.
Как результат - мне аж самому страшно, чего я там понакрутил. Потому предлагаю ограничиться более простым текстовым вариантом.
 
Были как-то у меня шрифты с поддержкой досовской кириллицы, можно было бы тогда и по-русски...
 
Были как-то у меня шрифты с поддержкой досовской кириллицы, можно было бы тогда и по-русски...
В тексте? Могу и по-русски, но просто избегаю с кириллицей заморачиваться без крайней нужды, потому как сам работаю с DOS-версией, а большинство "заказчиков" - с Windows, а там кодировка кириллицы другая. А латиница - она и в Африке латиница.
 
да и svga256.bgi..
Оффтоп... Владимир, а как запускать bp на х64 Win7? Даже bpw не идёт :(
 
да и svga256.bgi..
Оффтоп... Владимир, а как запускать bp на х64 Win7? Даже bpw не идёт :(
Дык... без понятия. Довольствуюсь XP - и дома, и на работе. Плюс ЭЛТ-мониторы. А драйвер у меня работает и вовсе egavga.bgi.
 
спасибо большое,попробую сейчас,если будут вопросы -обращусь
ОГРОМНОЕ СПАСИБО))
 
Назад
Сверху