10 Dim N$(11),W$(6),K(12),JK$(11)
20 Cls:Cur 17,24:Print "ВЕЧНЫЙ КАЛЕНДАРЬ (ОТ 1581Г.)"
30 For I=0 To 11: Read N$(I): Next I
40 For I=0 To 6: Read W$(I): Next I
50 For I=0 To 11:Read K(I): Next I
60 For I=0 To 11: Read JK$(I): Next I
70 Print : Print Tab(17);"ВВЕДИТЕ:МЕСЯЦ,ГОД";:Input ME,G
80 XY=0: D=1:If G/4=Int(G/4) Then K(1)=29
90 Rem * ПОПРАВКА НА СТИЛЬ ЛЕТОИСЧИСЛЕНИЯ *
100 If G<1918 Then D=0
110 GE=G:M=ME
120 GoSub 140: Goto 220
130 Rem * ВЫЧИСЛЕНИЕ ДНЯ НЕДЕЛИ *
140 If M>=3 Then M=M-2: Goto 170
150 If M<3 Then M=M+10
160 If M>10 Then G=G-1
170 CE=Int(G/100): G=G-CE*100
180 Z=Int(2.6*M-0.1):DD=Z+D+G+Int(G/4)+Int(CE/4)-2*CE
190 L=DD+777 : DN=L-7*Int(L/7)
200 If DN=0 Then DN=7
210 Return
220 Cls: Cur 4,24
230 GoSub 760
240 Y=DN-1 : SP=21 :U=2
250 Rem * ЦИКЛ МЕСЯЦЕВ *
260 For I=ME-1 To 11 Step 2
270 If I+1>11 Then U=1
280 If I=ME+7 OR I=ME+3 OR I=ME+11 Then GoSub 620
290 Cur 23,SP: Print N$(I)
300 If U<>1 Then Cur 44,SP:Print N$(I+1)
310 Rem * ЦИКЛ ДНЕЙ НЕДЕЛИ *
320 For SH=0 To 6
330 Cur 0,SP-SH-1: Print W$(SH): Next SH
340 X=15
350 For V=1 To U: If V=1 Then DK=I
360 If V=2 Then DK=I+1
370 Rem * ЦИКЛ ЧИСЕЛ *
380 For J=1 To K(DK)
390 Y=Y+1
400 If SP-Y=SP-8 Then Y=1: X=X+3
410 Cur X,SP-Y: Print J
420 Next J
430 X=36: Next V
440 SP=SP-9: Next I: XY=1
450 Rem * ПЕЧАТЬ РИСУНКА *
460 GoSub 620: Cls: Cur 0,24
470 Print Tab(6); "Ш"
480 Print Tab(5) ;"ШШШ"
490 Print Tab(4) ;"ШШШШШ"
500 Print Tab(3) ;"ШШШШШШШ"
510 Print Tab(2) ;"ШШШШШШШШШ"
520 Print Tab(1) ;"ШШШШШШШШШШШ"
530 Print "ШШШШШШШШШШШШШ"
540 Print Tab(6);"Ш"
550 Print Tab(6);"Ш"
560 GE=GE+1: Print Tab(17);"С НОВЫМ ГОДОМ !!!"
570 GoSub 760
580 PR=Usr(-2045)
581 Cls
582 U=2:K(1)=28
583 If GE=1918 Then ME=1:G=1918 :Goto 80
590 Cls
591 Cur 0,24
592 GoSub 760: ME=1: If GE/4=Int(GE/4) Then K(1)=29
600 Goto 260
610 Rem * ВВОД ДАННЫХ И ИХ ОБПАБОТКА ДЛЯ ПРОДОЛЖЕНИЯ ПЕЧАТИ *
620 Cur 22,2: Input "ДАЛЬШЕ (ДА/НЕТ)"; DA$
630 If LEFT$(DA$,1)<>"Д" AND LEFT$(DA$,1)<>"D" Then 660
640 Cls: SP=21: If XY=1 Then XY=0:Return
650 Cls:Cur 0,24: GoSub 760: Return
660 Cls:Cur 10,22: Print "ДОЛГИХ ВАМ ЛЕТ ЖИЗНИ !!!"
670 K(1)=28: Goto 70
680 Rem * ОПИСАНИЕ ДАННЫХ *
690 Data ЯНВАРЬ,ФЕВРАЛЬ,МАРТ,АПРЕЛЬ,МАЙ,ИЮНЬ,ИЮЛЬ,АВГУСТ
700 Data СЕНТЯБРЬ,ОКТЯБРЬ,НОЯБРЬ,ДЕКАБРЬ
710 Data ПОНЕДЕЛЬНИК,ВТОРНИК,СРЕДА,ЧЕТВЕРГ,ПЯТНИЦА,СУББОТА,ВОСКРЕСЕНЬЕ
720 Data 31,28,31,30,31,30,31,31,30,31,30,31
730 Data ОБЕЗЬЯНЫ,КУРИЦЫ,СОБАКИ,СВИНЬИ,МЫШИ,КОРОВЫ
740 Data ТИГРА,ЗАЙЦА,ДРАКОНА,ЗМЕИ,ЛОШАДИ,ОВЦЫ
750 Rem *ОПРЕДЕЛЕНИЕ И ВЫВОД НАЗВАНИЯ ГОДА ПО ВОСТОЧНОМУ КАЛЕНДАРЮ*
760 OS=GE-12*Int(GE/12)
770 W$=JK$(OS)
780 Print Tab(5);"ПО ВОСТОЧНОМУ КАЛЕНДАРЮ ";GE;" ГОД - ГОД ";W$
790 GC=GE-1563-Int((GE-1564)/60)*60
800 CO=VAL(RIGHT$(STR$(GC),1))
810 If CO=1 OR CO=2 Then CO$="СИНИЙ":Goto 860
820 If CO=3 OR CO=4 Then CO$="КРАСНЫЙ":Goto 860
830 If CO=5 OR CO=6 Then CO$="ЖЕЛТЫЙ":Goto 860
840 If CO=7 OR CO=8 Then CO$="БЕЛЫЙ" :Goto 860
850 CO$="ЧЕРНЫЙ."
860 Print Tab(17); "ЦВЕТ ГОДА-"; CO$
870 Return |