เราได้รับสตริงตัวอักษรและงานคือการคำนวณจำนวนคู่ที่มีทั้งสององค์ประกอบเป็นสระ ตามที่เรารู้มีสระ 5 ตัวในอักษรอังกฤษคือ a, i, e, o, u และตัวอักษรอื่นๆ เรียกว่าพยัญชนะ
อินพุต − string str = "tutorials point"
เอาต์พุต − นับคู่สระในสตริงที่กำหนดคือ: 2
คำอธิบาย − จากสตริงที่กำหนดเราสามารถสร้างคู่ได้เป็น (t, u), (u, t), (t, o), (o, r), (r, i), (i, a), (a, l), (l, s), (s, p), (p, o), (o, i), (i, n) และ (n, t) ดังนั้นคู่ที่มีทั้งสองเป็นสระคือ (i, a) และ (o, i) ดังนั้นจำนวนคู่สระคือ 2
อินพุต − string str = "learning"
เอาต์พุต − นับคู่สระในสตริงที่กำหนดคือ: 1
อินพุต − จากสตริงที่กำหนดเราสามารถสร้างคู่ได้เป็น (l, e), (e, a), (a, r), (r, n), (n, i), (i, n) และ (n, g) ดังนั้นคู่ที่มีทั้งสองเป็นสระคือ (e, a) เท่านั้น ดังนั้นจำนวนคู่สระคือ 1
วิธีการที่ใช้ในโปรแกรมด้านล่าง
รับสตริงตัวอักษรในตัวแปรประเภท string
คำนวณความยาวของสตริงด้วยฟังก์ชัน length() ที่จะคืนจำนวนตัวอักษรทั้งหมด
ใช้ตัวแปรชั่วคราว count เพื่อเก็บจำนวนคู่สระ
เริ่มลูป For จาก i = 0 ถึงความยาวของสตริง
ภายในลูป ตรวจสอบ IF str[i] เป็น 'a' OR 'i' OR 'e' OR 'o' OR 'u' แล้วตรวจสอบ IF str[i+1] เป็น 'a' OR 'i' OR 'e' OR 'o' OR 'u' ให้เพิ่มค่า count ขึ้น 1
คืนค่า count
พิมพ์ผลลัพธ์
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; int count_pairs(string str, int length){ int count = 0; for(int i=0 ;i<length-1; i++){ if(str[i]=='a' || str[i]=='i'||str[i]=='e'||str[i]=='o'||str[i]=='u'){ if(str[i+1]=='a'||str[i+1]=='i'||str[i+1]=='e'||str[i+1]=='o'||str[i+1]=='u'){ count++; } } } return count; } int main(){ string str = "tutorials point"; int length = str.length(); cout<<"Count the pairs of vowels in the given string are: "<<count_pairs(str, length); return 0; }เอาต์พุต
ถ้าเรารันโค้ดด้านบนจะได้ผลลัพธ์ดังนี้ −
Count the pairs of vowels in the given string are: 2