Софтуерно Инженерство
Loading...
+ Нов въпрос
krumkuzmov avatar krumkuzmov 3 Точки

Задача Clock - part 2

Здравейте, колеги,

имам проблем с посочената задача от Programming basics JS, More exercises.

Условието е следното:

Часовник – част 2

Напишете програма, която да отпечатва часовете в денонощието от 0:0:0 до 23:59:59, всеки на отделен ред.
Часовете да се изписват във формат "{час} : {минути} : {секунди} ".

При мен, във VSC програмата работи нормално и изписва часа точно както е посочено в условието. В Judge, обаче, получавам Runtime error.

Ето едно от решенията ми:

https://judge.softuni.bg/Contests/Submissions/View/13508322

https://pastebin.com/g6LTy6dv

 

Може ли някой да ме ограмоти къде греша, ако греша?

Благодаря предварително!

 

 

 

Тагове:
willystyle avatar willystyle 1480 Точки
Best Answer

Нещо му идват в повече логовете, затова ги обедини и печатай по-малко пъти. Ако обединиш пък целия изход в един стринг result паметта надвишава лимита. Затова за да мине го печатай на части:

function solve() {
    for (let hour = 0; hour <= 23; hour++) {
        for (let minutes = 0; minutes <= 59; minutes++) {
            let result = '';
            for (let seconds = 0; seconds <= 59; seconds++) {                
                result += `${hour} : ${minutes} : ${seconds}\n`
            }
            console.log(result.slice(0, -1));
        }
    }
}

 

0
krumkuzmov avatar krumkuzmov 3 Точки

Благодаря много за решението! За пръв път срещам slice и честно казано не разбирам какво точно прави.

Приятна вечер и още веднъж - благодаря!

1
willystyle avatar willystyle 1480 Точки

slice се ползва за да отрежеш част от стринг.

slice(0, -1) изрязва последния символ от стринг (в нашия случай '\n' понеже самия console.log прави нов ред, затова махаме последния нов ред от result.

0
krumkuzmov avatar krumkuzmov 3 Точки

Благодаря много за решението и разяснението за slice :)

1
Stefan_9206 avatar Stefan_9206 2 Точки

В пейстбин-а не виждам накрая да си повикал самата функция.

Добави след последната скоба на нов ред това:

solve     ()

0
krumkuzmov avatar krumkuzmov 3 Точки

Ами не е това, защото във Judge по принцип не викаш функцията. Самия Judge я вика с параметрите от теста.

Благодаря все пак.

0
Stefan_9206 avatar Stefan_9206 2 Точки

Хмм, явно не съм прочел добре какъв е проблема. Не виждам проблем с кода, избираш ли JS преди submit в judje?

0
krumkuzmov avatar krumkuzmov 3 Точки

Да, винаги. Резултатът е същия..
На някои от опитите ми показва, че използваната памет е голяма, на други - Runtime error. :(

0