Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.03.2017, 04:14
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

date days each (+1 ко дню в строку)
Доброго времени суток.
Вот тут вот решаю задачу с выводом дней недели в табличной форме.
1. Помогите правильно вывести дату в ячейки.
Когда в ячейку вывожу день, я добавлю +i да бы в каждой сроке таблицы на 1 день было больше. Проблема заключается в том, что 32-го, 33-го и т.д. числа не существует.
2. Исходя из этого, у меня неправильно пишутся дни недели (Пн,Вт,Ср...)
Ответить с цитированием
  #2 (permalink)  
Старый 16.03.2017, 05:57
Аватар для Paguo-86PK
Профессор
Отправить личное сообщение для Paguo-86PK Посмотреть профиль Найти все сообщения от Paguo-86PK
 
Регистрация: 16.09.2009
Сообщений: 253

Вечный календарь (Андрей Сорокин)
(исправил этим)
Код:
 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
P.S.: Всё руки не доходят в JS перевести…
Тогда, 30 лет назад, школьник сам написал его.
В своём PHP-скрипте я использовал куски этой программы, чтоб цвет года определить и животное.
Здесь можно чуток проверить. Правда, подогнать нужно под "бурундучка"…

Последний раз редактировалось Paguo-86PK, 16.03.2017 в 06:08.
Ответить с цитированием
  #3 (permalink)  
Старый 16.03.2017, 06:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Paguo-86PK
В своём PHP-скрипте я использовал куски этой программы
Негоже так на РНР календари писать
Ответить с цитированием
  #4 (permalink)  
Старый 16.03.2017, 06:49
Аватар для Paguo-86PK
Профессор
Отправить личное сообщение для Paguo-86PK Посмотреть профиль Найти все сообщения от Paguo-86PK
 
Регистрация: 16.09.2009
Сообщений: 253

Сообщение от laimas Посмотреть сообщение
Негоже так на РНР календари писать
Календaрь в PHP и не писал.
Писал гостевую книжку с избыточным набором тэгов (цвет года, зодиак и т.д…), но споткнулся на тегах по лунному календарю, так как не смог выгуглить (в 2005 где-то) формул нужных. И дописательство книжки забросил.
(использовал как раз тот самый крошку-сервер с php-плагинами в комплексе с UnrealIRC… Как вспомню, на слезу пробивает: Ведь тогда и Flash-IRC-чат вешал на свои странички. сейчас - всё позабыл…)
P.S.: Хотя, на своём домене под jino она (моя гостевая) применяется (ностальгия друзьям тех лет)…

Последний раз редактировалось Paguo-86PK, 16.03.2017 в 06:55.
Ответить с цитированием
  #5 (permalink)  
Старый 16.03.2017, 08:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

karakym,
Сообщение от karakym
я добавлю +i
надо дату увеличивать и от неё плясать
http://codepen.io/anon/pen/peWOBb
P.S. неделя в js начинается в воскресенье

Последний раз редактировалось рони, 16.03.2017 в 08:48.
Ответить с цитированием
  #6 (permalink)  
Старый 16.03.2017, 08:57
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Сообщение от рони Посмотреть сообщение
karakym,

надо дату увеличивать и от неё плясать
http://codepen.io/anon/pen/peWOBb
P.S. неделя в js начинается в воскресенье
Ааааааа!!! А я ведь делал таким макаром, только вставлял в строку не после добавления html а внутрь.
Еще маленький вопросик. Месяц отображается просто "2", а как бы его "02" исправить?
Ответить с цитированием
  #7 (permalink)  
Старый 16.03.2017, 09:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

karakym,
добавить вторую строку
month = date.getMonth() + 1;
        month = ("0"+ month).slice(-2);
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с информационым таймером Александр2233 Javascript под браузер 21 11.12.2019 12:31
Помогите разобраться с объектом Date() tur10 Общие вопросы Javascript 2 27.03.2015 16:45
Не правильно оторбражается меcяц в Date() oxxy Общие вопросы Javascript 6 22.01.2014 16:01
Время,не правильное отображение скриптов Visual Общие вопросы Javascript 0 29.10.2013 19:12
Обновление объекта Date (сокращение кода) HJ90 Элементы интерфейса 4 07.09.2013 20:58