Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

อักษรตัวพิมพ์ใหญ่ตัวแรกในสตริง (Iterative and Recursive) ใน C++


ในบทช่วยสอนนี้ เราจะมาเรียนรู้วิธีค้นหาอักษรตัวพิมพ์ใหญ่ตัวแรกในสตริงที่กำหนด มาดูตัวอย่างกัน

ป้อนข้อมูล −บทช่วยสอน

ผลผลิต −T

มาดูขั้นตอนการแก้ปัญหาโดยใช้วิธีการวนซ้ำกัน

  • เริ่มต้นสตริง

  • วนซ้ำบนสตริง

  • ตรวจสอบว่าอักขระปัจจุบันเป็นตัวพิมพ์ใหญ่หรือไม่โดยใช้ isupper วิธีการ

  • หากอักขระเป็นตัวพิมพ์ใหญ่มากกว่าส่งคืนอักขระปัจจุบัน

ตัวอย่าง

มาดูโค้ดกันเลย

#include <bits/stdc++.h>
using namespace std;
char firstUpperCaseChar(string str) {
   for (int i = 0; i < str.length(); i++)
      if (isupper(str[i])) {
         return str[i];
      }
      return 0;
   }
   int main() {
      string str = "Tutorialspoint";
      char result = firstUpperCaseChar(str);
      if (result == 0) {
         cout << "No uppercase letter" << endl;
      }
      else {
         cout << result << endl;
      }
   return 0;
}

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

T

มาดูขั้นตอนการแก้ปัญหาโดยใช้วิธีการแบบเรียกซ้ำกัน

  • เริ่มต้นสตริง

  • เขียนฟังก์ชันแบบเรียกซ้ำซึ่งยอมรับสตริงพารามิเตอร์และดัชนีสองตัว

  • หากอักขระปัจจุบันเป็นจุดสิ้นสุดของสตริง ให้ส่งคืน

  • หากอักขระปัจจุบันเป็นตัวพิมพ์ใหญ่ ให้คืนค่าอักขระปัจจุบัน

ตัวอย่าง

มาดูโค้ดกันเลย

#include <bits/stdc++.h>
using namespace std;
char firstUpperCaseChar(string str, int i = 0) {
   if (str[i] == '\0') {
      return 0;
   }
   if (isupper(str[i])) {
      return str[i];
   }
   return firstUpperCaseChar(str, i + 1);
}
int main() {
   string str = "Tutorialspoint";
   char result = firstUpperCaseChar(str);
   if (result == 0) {
      cout << "No uppercase letter";
   }
   else {
      cout << result << endl;
   }
   return 0;
}

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

T

บทสรุป

หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น