169 похожих чатов

Задание написать функцию, которая будет возводить в степень число. Мой

вариант:
x = prompt("Введите число:", 5);
n = prompt('Введите степень:', 1);

function pow() {

while (n != 0) {
x=x*x;
return x;
};
}
pow ();
alert (x);

В учебнике предложен вариант такой:

function pow (x, n) {
let result = x;
for (let y = 1; y < n; y++) {
result *=x;
}
}

let x = prompt ("x?", '');
let n = prompt ("n?", '');

if (n < 1) {
alert ('Степень ${n} не поддерживается, используйте натуральное число');
}
else {
alert ( pox(x, n) );
}

Скажите пожалуйста чем вариант из учебника лучше. Чтобы понять, что значит оптимизированный код. 🤷‍♂️

15 ответов

32 просмотра

ваш варик ток в квадрат возводит, а цикл бесполезный

R-S Автор вопроса
i7 4n
ваш варик ток в квадрат возводит, а цикл бесполез...

Я проверил, какую степень укажешь, в такую и возводит.

R S
Я проверил, какую степень укажешь, в такую и возво...

мб, я на шизе, но я не вижу у вас изменений n, + у вас функция с сайд-эффектами, передавайте в качесте параметров

R-S Автор вопроса
i7 4n
мб, я на шизе, но я не вижу у вас изменений n, + у...

Так n и не должно меняться, оно же задаёт сколько раз число должно быть умножено на себя. Разница между моим вариантом и вариантом из учебника, в том, что моя функция задаётся без параметров и отсылается напрямую к внешним переменным, вот так делать плохо. Здесь я согласен.

R S
Так n и не должно меняться, оно же задаёт сколько ...

да у вас при первой же итерации он свалит из цикла, ну, n нужен как счётчик количества операций умножения

опять задание в котором запрещено юзать ** или Math.pow

R S
Да, именно :)

хочется стальным прутом бить

R-S Автор вопроса
jabascripter
хочется стальным прутом бить

В комментах к заданию написано, что ** появилось после написания статьи. Это правда? В смысле, что это какое-то нововведение.

jabascripter
опять задание в котором запрещено юзать ** или Mat...

мне на собеседовании запретили Юзать все что угодно кроме for листочек и ручку

Yaroslav Bakh
мне на собеседовании запретили Юзать все что угодн...

вы, надеюсь, втащили каждому по очереди и молча ушли?

i7 4n
вы, надеюсь, втащили каждому по очереди и молча уш...

та нет, я сначала думал тут какой-то подвох, и думал там стоит где-то камера скрытая, а потом сделал задание за минут 15 у меня только один вопрос был который я должен был на листочке сделать. И таких компаний у меня было 2 в тот день. Правда вторая по теории хотя бы немного спросила.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта