За последние 24 часа нас посетили 17597 программистов и 1722 робота. Сейчас ищет 891 программист ...

Нужна помощь по Math.floor

Тема в разделе "Прочие вопросы по PHP", создана пользователем JIEHNH, 12 ноя 2014.

  1. JIEHNH

    JIEHNH Новичок

    С нами с:
    12 ноя 2014
    Сообщения:
    38
    Симпатии:
    0
    Есть файлообменник там есть таймер:
    var weeks = Math.floor(timer/604800);
    timer -= (weeks*604800);
    var weeks = Math.floor(timer/604800);
    timer -= (weeks*604800);
    var days = Math.floor(timer/86400);
    timer -= (days*86400);
    var hours = Math.floor(timer/3600);
    var minutes = Math.floor((timer - (hours * 3600)) / 60);
    var buffer = '';

    хочу добавить переменную Месяц(month) но не знаю как в JavaScript овернуб 9999 помогите) Я понял что нужно добавить var month = Math.floor(а вот тут не знаю как)
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    а причем тут джаваскрипт? вы нуб в понимании действующей международной системы единиц в целом и единицах измерения времени в частности. вас не смущает всё описанное вами же? 604800 это как бы 60 секунд в минуте умноженное на 60 минут в часе умноженное на 24 часа в сутках умноженное на 7 дней в неделе. а вот тут не знаю как будет равно тому же самому но умноженному не на 7 дней в неделю а на выбранную длину месяца. ну типа утрированные 30 дней или 28-29-30-31 календарные. то есть 86400 (это столько секунд в сутках, не ломайте голову) умноженное на 28-29-30-31 суток равно 2419200-2505600-2592000-2678400 соответственно... всё просто?
     
  3. JIEHNH

    JIEHNH Новичок

    С нами с:
    12 ноя 2014
    Сообщения:
    38
    Симпатии:
    0
    Но смотрите в неделе есть приставка timer -= (weeks*604800); а в минутах её нету, а про вычисление длительности месяца я в курсе как выислить)
     
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    вам русскими словами рассказать логику вашего алгоритма?
     
  5. JIEHNH

    JIEHNH Новичок

    С нами с:
    12 ноя 2014
    Сообщения:
    38
    Симпатии:
    0
    Лучше в виде готовой строки для вставки с пояснением
     
  6. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    var months = Math.floor(timer/2592000);
    timer -= (months*2592000);

    var weeks = Math.floor(timer/604800);
    timer -= (weeks*604800);
    var days = Math.floor(timer/86400);
    timer -= (days*86400);
    var hours = Math.floor(timer/3600);
    var minutes = Math.floor((timer - (hours * 3600)) / 60);
    var buffer = '';

    ну тут... и вот это... да... а... эх... а, нет!.. хотя... эм... ох...

    что может быть проще? есть таймер с каким-то большим числом секунд. делим этот таймер на длину месяца и получаем дробное значение кол-ва месяцев в таймере. флур округляет по базе. то есть из дробного значения кол-ва месяцев в таймере мы получаем кол-во полных месяцев в таймере. потом мы кол-во полных месяцев умножаем на длину месяца и полученное значение вычитаем из таймера. в таймере стало быть не осталось значения которое может влиять на месяцы. но может на все остальное. и дальше мы проделываем те же шаги для длины недели, длины дня, длины часа, длины минуты. и на выходе из всего этого невероятно сложного алгоритма у нас список полных месяцев/недель/дней/часов/минут/секунд содержавшихся в изначальном таймере.

    вам не стоит заниматься программированием
     
  7. JIEHNH

    JIEHNH Новичок

    С нами с:
    12 ноя 2014
    Сообщения:
    38
    Симпатии:
    0
    Спасибо, Всё работает тема закрыта