Интихоби алгоритми оптималӣ дар JavaScript
Гаҳо мушкилии рамз ба он вобаста аст, ки барои ҳалли масъала ҳалли оптималӣ интихоб нашудааст.
Бигзор, масалан, дар назди мо вазифаи
ёфтани ҷамъи ададҳои бутун аз 1 то 1000000 истода бошад.
Вазифаи гузошташударо ҳал кунем:
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Пас чӣ гап аст? Масъала ин аст, ки барои ҳалли вазифаи гузошташуда ҳалли математикӣ мавҷуд аст.
Ин ҳалли қариб заҳмат нест! Онро барномасозӣ кунем:
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Панд: пеш аз ҳалли вазифаи заҳматталаб ҳатман тафтиш кунед, ки оё барои ҳалли он формулаи математикии тайёр ё равиши математикии тайёр мавҷуд нест.
Миқдори ададҳоеро ёбед, ки бе боқимонда
бар 5 тақсим мешаванд, аз фосилаи 1 то
1000.
Миқдори рақамҳоеро ёбед, ки барои навиштани ҳамаи ададҳо аз 1 то 1000000 лозим аст.