JavaScript හි බර සැකසුම් පුනරාවර්තනය ප්රශස්ත කිරීම
පෙර පාඩමේ, ශ්රිත පුනරාවර්තන කැඳවීම් ඇත්ත වශයෙන්ම ඉතා අල්ප කාලයක් ගනු ඇති අතර අපගේ ප්රශස්තීකරණය ඉතා වැඩි ඉතිරියක් ඉතිරි නොකරයි. කෙසේ වෙතත්, ප්රමාණවත් කාලයක් ගතවන "බර" ශ්රිතයක් කිහිප වරක් කැඳවීමට අපි යොමු වුවහොත්, සියල්ල තවත් නරක අතට හැරෙනු ඇත.
උදාහරණයක් වශයෙන්, සංඛ්යාවක බෙදුම්කරුවන් සොයා ගන්නා ශ්රිතයක් අප සතුව ඇතැයි සිතමු:
javascriptfunction getDivisorsSum(num) {
let res = 0;
for (let i = 1; i <= num; i++) {
if (num % i === 0) {
res += i;
}
}
return res;
}
පැහැදිලිවම, මෙම ශ්රිතය තරමක් "බර" එකකි. එබැවින්, මෙවැනි කේතයක් ලිවීම නරක අදහසක් වනු ඇත:
javascriptlet num = 123456;
if (getDivisorsSum(num) >= 10 && getDivisorsSum(num) <= 100) {
console.log('+++');
} else {
console.log('---');
}
ඇත්ත වශයෙන්ම, "බර" සැකසුම එක් වරක් ක්රියාත්මක කර එහි ප්රතිඵලය විචල්යයකට ලියා ගැනීම, පසුව අවශ්ය ස්ථානවල එම විචල්යය භාවිතා කිරීම වඩා හොඳය:
javascriptlet num = 123456;
let sum = getDivisorsSum(num);
if (sum >= 10 && sum <= 100) {
console.log('+++');
} else {
console.log('---');
}
Задание 1
පහත දක්වා ඇති කේතය ප්රශස්ත කරන්න:
javascriptlet num = 1233456789;
if (getSumSquare(num) >= 10 && getSumSquare(num) <= 100) {
console.log('+++');
} else {
console.log('---');
}
function getSumSquare(num) {
let digits = String(num).split('');
let sum = 0;
for (let digit of digits) {
sum += digit ** 2;
}
return sum;
}