Задача не сложная -решил быстро, потом открыл правильный ответ и нашёл там дополнительную переменную i .. Интересно зачем, если Задача намного проще и быстрее решается без дополнительной переменной счетчика "i"?
for(; start < end; start++)
Вадим З.
33 уровень
Зачем в правильном ответе дополнительная переменная i?
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #3303140
7 июля 2024, 13:48
Абсолютно непонятно, что ты закладываешь в понятия «проще» и «быстрее», если что так, что эдак будет один цикл при решении?
Во-первых, правильный ответ - это лишь один из возможных подходов, и не всегда идеальный.
Во-вторых, при нормальном подходе к написанию кода каждой переменной отводится конкретная роль, которую стоит отразить в названии переменной. Соответственно, величины start и end отвечают за границы диапазона, и стоит завести отдельную переменную, которая бы перебирала значения в границах этого диапазона. Попробуй сформулировать, что в твоем случае хранится в переменной start и почему она в этом случае называется start?
В-третьих, есть такое понятие, как принятый вид оформления кода, и твой пример оформления цикла for под него не подпадает. В таком случае уж логичней было бы использовать while. Под «простотой» можно понимать в том числе и простоту прочтения кода, и код в «правильном» решении в этом плане выигрывает.
Кроме того, если хочется решить быстрее, то сумму можно вычислить одной формулой без использования циклов вообще. В этом случае решение будет рациональнее, но вроде бы условие задачи просит именно через цикл.
Ну и наконец, решил и решил, не зацикливайся и решай дальше. Это не тот вопрос, на который стоило бы вообще тратить время на рассуждения.
0
FolFix
7 июля 2024, 11:46
Если попадется такой случай, когда start нужно использовать сразу в нескольких циклах, то у нас получится только один рабочий цикл. Не рекомендуется изменять start, когда она играет важную роль в задаче, как указатель начала.
+1
Вадим З.
7 июля 2024, 11:52
Так и есть, если у нас несколько вложенных циклов или другими словами другое условие задачи. Но в данном конкретном случае по условию конкретно этой задачи всё же непонятно зачем городить огород, который к этой задаче не применяется в обязательном порядке.
+3