Sobes.tech
Middle+

ალგორითმის დავალება: დაწერეთ ფუნქცია, რომელიც სიტყვაში ხმოვან ასოებს სარკისებურად შეცვლის

sobes.tech AI

პასუხი AI-სგან

სიტყვაში ხმოვანების სარკისებურად შეცვლისთვის, უნდა იპოვოთ ყველა ხმოვანი, შეინახოთ მათი სია და შემდეგ შეცვალოთ ისინი საპირისპირო წესით. მაგალითად, სიტყვა "привет"-ში ხმოვანები "и" და "е" შეიცვლება ადგილებს, მიიღება "превит".

JavaScript-ის მაგალითი:

function mirrorVowels(word) {
  const vowels = 'аеёиоуыэюяAEЁИОУЫЭЮЯ';
  const chars = word.split('');
  const vowelIndices = [];
  const vowelChars = [];

  // ხმოვანების და მათი ინდექსების შეგროვება
  chars.forEach((ch, i) => {
    if (vowels.includes(ch)) {
      vowelIndices.push(i);
      vowelChars.push(ch);
    }
  });

  // ხმოვანების საპირისპირო წესით შეცვლა
  vowelIndices.forEach((idx, i) => {
    chars[idx] = vowelChars[vowelChars.length - 1 - i];
  });

  return chars.join('');
}

console.log(mirrorVowels('привет')); // превит