JavaScript හි ප්‍රශස්ත ඇල්ගොරිතම තෝරාගැනීම

සමහර විට කේතයේ ගැටළුවක් ඇත්තේ, ගැටළුව විසඳීම සඳහා වඩාත් ප්‍රශස්ත විසඳුම තෝරාගෙන නොමැතිකම හේතුවෙනි.

උදාහරණයක් වශයෙන්, අප ඉදිරියේ ඇති කාර්යය විය යුතුය 1 සිට 1000000 දක්වා පූර්ණ සංඛ්‍යාවල එකතුව සොයා ගැනීම. දක්වා ඇති කාර්යය විසඳමු:

javascriptlet sum = 0;

for (let i = 1; i <= 1000000; i++) {
  sum += i;
}
  
console.log(sum);

හරි, එහෙනම් කුමක් වරද? කාරණය නම්, මෙම කාර්යය විසඳීම සඳහා ගණිතමය විසඳුමක් පවතී.

මෙම විසඳුමට ප්‍රායෝගිකව ඕනෑම සම්පත් අවශ්‍ය නැත! අපි එය ප්‍රෝග්‍රෑම් කරමු:

javascriptlet n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);

ආගම: සම්පත්-දරුණු කාර්යයක් විසඳීමට පෙර එය විසඳීම සඳහා සූදානම් වූ ගණිතමය සූත්‍රයක් හෝ සූදානම් වූ ගණිතමය ප්‍රවේශයක් තිබේදැයි අනිවාර්යයෙන් පරීක්ෂා කරන්න.

Задание 1

1 සිට 1000 දක්වා වූ පරාසයෙන්, 5 න් ඉතුරු නොකර බෙදිය හැකි සංඛ්‍යා ගණන සොයන්න.

Задание 2

1 සිට 1000000 දක්වා වූ සියලුම සංඛ්‍යා ලිවීමට අවශ්‍ය වන ඉලක්කම් ගණන සොයන්න.