Для петли, снижающей содержание кофеина

0

Мне интересно, как это записать в javascript. Идея состоит в том, что она занимает время и содержание кофеина, использует цикл, чтобы уменьшать почасовой до тех пор, пока он не достигнет 20 мг, а затем остановится и сообщит вам, в какое время вы достигли половины жизни (через 5 часов), а затем ваше время сна в 20 мг,

На данный момент я даже не работаю для цикла. Я пытаюсь обернуть голову, как установить цикл for. Вкладываю ли я значения кофеина или часов?

Вот что я имею:

function brew() {
    var lastTime = 15; // military time for 3pm
    var lastCoffee = 150; // 150mg of caffeine 

    for (var i = 1; lastCoffee <= 20; i++) {
        var caffeine = lastCoffee/2; // my bootleg half life equation    
    };
}
  • 0
    Нет необходимости ставить точку с запятой после цикла после.
  • 1
    Вы отметили jquery но вам это не нужно
Теги:

1 ответ

1

сделать это с в while циклы, это проще.

Я использовал определенную переменную для каждого задействованного значения, включая константы; что облегчает чтение (и это тоже хорошая оценка).

function brew() {

    // input values

    var lastTime = 15;        //military time for 3pm
    var lastCoffee = 150;     // 150mg of caffeine

    // constant

    var caffeineHalfLife = 5; // 5 hours  
    ver bedTimeCaffeine = 20; // 20mg of caffeine

    // variables

    var caffeine;
    var bedTime;

    // setup

    caffeine = lastCoffee;
    bedTime  = lastTime;

    // loop

    while( caffeine > bedTimeCaffeine ) {  // go on until caffeine > bedTimeCaffeine
        caffeine /= 2;                     // the caffeine value become half...
        bedTime += caffeineHalfLife;       // ...every 5 hours (caffeineHalfLife)
    }

}

но если вы хотите, чтобы придерживаться for то последняя часть становится

    // setup

    caffeine = lastCoffee;

    // loop

    for( bedTime = lastTime; caffeine > bedTimeCaffeine; bedTime += caffeineHalfLife ) {
        caffeine /= 2;
    }

см. http://www.w3schools.com/js/js_loop_for.asp для объяснения цикла for

Ещё вопросы

Сообщество Overcoder
Наверх
Меню