Funksional dasturlashda iteratsiyalar va konveyrlar Ishning maqsadi: Funksional dasturlashda iteyratsiya va konvey ulusllarida masalani yechish.
Variant №5
Mavzu: Bir qatordagi so‘zlarni sanang.
Ishni bajarish jarayoni:
Ushbu dasturda JavaScript tilida konveyrning yondashish shartini bilib olishimiz kerak. Konveyr usulida, bir qator harfli so'zlarni yondashishning o'ng va chap istiqomatlarini hisoblash uchun dastur tuzamiz.
JavaScript-da konveyr usuli: function yondashuvSoni(qator) {
let chapIstiqomatlar = 0;
let ongIstiqomatlar = 0;
// Har bir belgi uchun tekshirish
for (let i = 0; i < qator.length; i++) {
if (qator[i] === '<') {
chapIstiqomatlar++;
} else if (qator[i] === '>') {
if (chapIstiqomatlar > 0) {
chapIstiqomatlar--;
} else {
ongIstiqomatlar++;
}
}
}
// Natijalarni chiqarish
console.log('O\'ng istiqomatlar soni: ' + ongIstiqomatlar);
console.log('Chap istiqomatlar soni: ' + chapIstiqomatlar);
}
function countWordsInSentence(sentence) { // So'zlar vaqtincha saqlanishi uchun obyekt yaratamiz var wordCount = {};
// Matndan barcha belgilarni bo'sh joylar orqali ajratamiz var words = sentence.split(' ');
// Har bir so'zni tekshirish va sanash for (var i = 0; i < words.length; i++) { var word = words[i]; // Kiritilgan so'zni sanitizatsiya qilish va kichik harflarga o'tkazish word = word.toLowerCase().replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g,""); // Obyektda uchraganligini tekshirish if (wordCount[word]) { // Agar ushbu so'z allaqachon bo'lsa, sanasini bir oshirib qayta saqlaymiz wordCount[word]++; } else { // So'zni yangi deb qo'shaymiz va 1 ga o'rnating wordCount[word] = 1; } }
return wordCount; }
// Misol uchun qatorlarni sinovdan o'tqazamiz var sentence = "Bu bir misoldir, bu yerda to'rt to'rt so'z yozilgan bo'lib, ularni sanashimiz kerak"; var wordCounts = countWordsInSentence(sentence);