Алгоритм по определению пары по времени
Приветствую формучане!
Делаю сайт для не ПТУ, а колледжа) В общем нужно сделать счетчик по определению пары по времени и дня недели по дате. Если со вторым я справился, то второе вызвало большие затруднения. 8:30-10:05-первая пара 10:15-11:50-вторая пара 12:30-14:05-третья пара 14:15-15:50-четвертая пара 15:55-17:30-пятая пара т.е. пара идет 1:35 если по времени пары нет, то должно быть сказано , что пар нет помогите чем можете,пример прилагаю ниже спасибо |
Вложений: 1
вот что я сделал
|
Цитата:
|
как установить этот интервал? просто если задать просто проход по массиву, то он будет искать совпадение, это нужно прописать в функции? как это сделать?
|
retvisan,
:-? var arr = [[830,1005],[1015,1150]], num = 930; function fn(arr,num) { var text = "нет пар или перемена" for (var i=0; i<arr.length; i++) if(arr[i][0]<=num && num <= arr[i][1] ) {text = (i + 1) + " пара"} return text } alert(fn(arr,num)); |
Цитата:
var arr=[ {beg: '8:30', end: '10:05'}, {beg: '10:15', end: '11:50'}, {beg: '12:30', end: '14:05'}, {beg: '14:15', end: '15:50'}, {beg: '15:55', end: '17:30'} ]; Цитата:
Сравнивай попадание некоего времени в твои интервалы... |
а почему при запуске кода он говорит, что сейчас первая пара?)
|
Цитата:
Цитата:
|
т.е. num=930 это по сути продолжительность пары?
|
Цитата:
пожалуйста включите голову ... это пример ... когда текущее время 9 часов 30 минут ... в это время идёт первая пара. |
var arr = [[830,1005],[1015,1150],[1230,1405],[1415,1550],[1555,1730]], num=now.getHours()+" "+ now.getMinutes()+"; а почему у меня не получается вставить текущее время в переменную num? |
да, я понял, извините
|
Цитата:
|
retvisan,
var arr = [[830,1005],[1015,1150],[1230,1405],[1415,1550],[1555,1730]],now = new Date(), num= now.getHours()*100 + now.getMinutes(); function fn(arr,num) { var text = "нет пар или перемена" for (var i=0; i<arr.length; i++) if(arr[i][0]<=num && num <= arr[i][1] ) {text = (i + 1) + " пара"; break} return text } alert(fn(arr,num)); |
Цитата:
|
рони, я все думал чего это у тебя за цифири такие. :D
Не похожи ни на количество минут, ни количество секунд с полуночи... А теперь присмотрелся, там Цитата:
|
Большое спасибо за помощь!
еще такой момент, не могу вывести значение скрипта через div var arr = [[830,1005],[1015,1150],[1230,1405],[1415,1550],[1555,1730]],now = new Date(), num=now.getHours()+ ("0"+now.getMinutes()).substr(-2) ; window.onload = function fn(arr,num) { var text = "нет пар или перемена" for (var i=0; i<arr.length; i++) if(arr[i][0]<=num && num <= arr[i][1] ) {text = (i + 1) + " пара"; break} return text document.getElementById('tetx1').innerHTML = text; } </script> </head> <body onload="DateTime()"> <body onload="fn(arr,num)"> <div id="text1" ></div> <div id="str1" ></div> почему не работает? что я сделал не так? |
retvisan,
бесполезно писать что либо после строки 7, id не совпадает строки 8 и 16. <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script> function fn() { var arr = [[830,1005],[1015,1150],[1230,1405],[1415,1550],[1555,1730]],now = new Date(), num= now.getHours()*100 + now.getMinutes(), text = "нет пар или перемена"; for (var i=0; i<arr.length; i++) if(arr[i][0]<=num && num <= arr[i][1] ) {text = (i + 1) + " пара"; break} document.getElementById('text1').innerHTML = text; } window.addEventListener('DOMContentLoaded', fn); </script> </head> <body> <div id="text1"></div> </body> </html> |
Спасибо большое! Вроде разобрался
|
Часовой пояс GMT +3, время: 00:44. |