+ 8
Помогите пожалуйста разобраться в задаче, под названием "Улитка в колодце".
Я написал код который должен был через цикл подсчитать количество дней и пройденного расстояния.
25 Antworten
+ 15
function main() {
    var depth = parseInt(readLine(), 10);
    //your code goes here
    var d={days:0,depth:2}
    
    while(depth>d.depth){
        d.depth-=2;
        d.days++;
        d.depth+=7;
        
    }
    console.log(d.days)
}
+ 19
function main() {
    var depth = parseInt(readLine(), 10);
    //your code goes here
    var days=0;   
    for (i=0;;i-=2){
        days++;
        i+=7;
        if (i>=depth) break;         
    }
    console.log(days);
}
+ 7
Код в студию!
+ 5
По мне так лучшее решение для понимания его новичком (вставьте код в редактор, чтобы комментарии не сливались с кодом) :
function main() {
    var depth = parseInt(readLine(), 10);
    //ваш код
    var days = 0;    // объявляем переменную days для счёта дней
    for ( ; depth>0 ; ) {    //цикл повторяется пока глубина больше нуля
    days ++;    // считаем количество дней с помощью инкремента ++
    depth -= 7;    // вычитаем из глубины                      расстояние 7 метров, оператор (-=) вычитание присваиванием, заменяет нам громоздкую конструкцию (depth = depth - 7)
        if (depth > 0) {    // проверяем глубину
            depth += 2;    //опять же оператором (+=) прибавляем к глубине 2 метра, потому что ночью улитка опускается на 2 метра
        }
    }
console.log (days);    //выводим посчитанные дни
}
+ 4
Хинт: на русском тебе ответят лишь русскоязычные пользователи.
+ 4
0
let am = 7;
let pm = -2;	
let depthDay = 0;
		
for (day = 1;;day++){
	depthDay = depthDay + am;		
	if (depthDay >= depth){				
		break;}
		
	depthDay = depthDay + pm;		
	if (depthDay >= depth){			
	break;}				
}
console.log(day);
+ 3
function main() {
    var depth = parseInt(readLine(), 10);
    //ваш код
    let days = 0;
    let i = 2;
    while(i < depth) {
    	i += 7 - 2;
    	days++;
    }
    console.log(days);
}
+ 2
И условие задачи заодно.
+ 1
Суть в том, что эту задачу нужно решить, используя цикл (как написано в совете), не прибегая к теме функций.
+ 1
Если следовать совету и исходить из расстояния, которое проползает улитка в сутки
function main() {
    var depth = parseInt(readLine(), 10);
    //ваш код
    let count=0
    let dist=0
    while (dist+2<depth) {
    	dist=dist+7-2
    	count++
    }
    console.log(count)
}
+ 1
console.log(Math.round(depth/5));
0
function main() {
    var depth = parseInt(readLine(), 10);
    //ваш код
    function climb (height){
        let days = 0;
        if(height <=0)return days;
        for(let i = 0;;i-=2){
            i+=7;
            ++days;
            if(i>=height)break ;
        }
        return days
    }
}
0
Каждый день улитка проползает 7 футов вверх и каждую ночь опускается вниз на 2 фута. 
Сколько дней потребуется улитке, чтобы подняться на указанную высоту?
Пример вводных данных: 
31
Пример результата:
6
Пояснение: давайте определим расстояние, которое улитка преодолевает в день:
День 1: 7-2=5
День 2: 5+7-2=10
День 3: 10+7-2=15
День 4: 15+7-2=20
День 5: 20+7-2=25
День 6: 25+7=32 
Таким образом, на 6 день улитка проползет 32 фута и выберется из колодца днем, не опустившись на 2 фута ночью.
0
Я это понимаю
0
У меня получилось как-то так, с помощью других.
0
Большое спасибо вам !
0
function main () { 
var depth =
parseInt(readLine(), 10);
//ваш код 
var i = 0;
var j = 0;
do { i +=7; j ++;
if ( i >= depth) break;
i -= 2;
} while ( i <= depth );
console.log(j);
}
0
Пожалуйста, подскажите ,почему I=2?
0
Спасибо!
0
Помогите решить задачу! Я написал код вроде верно. Но чисто математические там не получается такой ответ, который от меня требуется



