ในโปรแกรมนี้ เราจะได้รับสตริงชื่อที่แสดงชื่อของบุคคล งานของเราคือการสร้างโปรแกรมเพื่อหาตัวอักษรย่อของชื่อใน C++
คำอธิบายโค้ด − ที่นี่เราต้องหาตัวอักษรย่อของชื่อบุคคลที่ให้มาในรูปแบบสตริง
มาดูตัวอย่างเพื่อเข้าใจปัญหา
อินพุต
name = “ram kisan saraswat”
เอาต์พุต
R K S
คำอธิบาย
เราจะหาตัวอักษรแรกของแต่ละคำในชื่อ
แนวทางแก้ปัญหา
วิธีแก้ที่เรียบง่ายคือการวนลูปผ่านสตริงชื่อ ตัวอักษรทุกตัวที่ปรากฏหลังอักขระเว้นวรรคหรือขึ้นบรรทัดใหม่คือตัวอักษรย่อ และต้องพิมพ์เป็นตัวพิมพ์ใหญ่
โปรแกรมตัวอย่างการทำงานของวิธีแก้
ตัวอย่าง
#include <iostream>
using namespace std;
void findNameInitials(const string& name) {
cout << (char)toupper(name[0]);
for (int i = 0; i < name.length() - 1; i++)
if (name[i] == ' ' || name[i] == '\n')
cout << " " << (char)toupper(name[i + 1]);
}
int main() {
string name = "ram kisan\nsaraswat";
cout << "The initials of the name are ";
findNameInitials(name);
return 0;
}
เอาต์พุต
The initials of the name are R K S