Character Checker

0004

โจทย์ข้อนี้สามารถแก้ได้โดยการนำสตริงที่ได้มาจากข้อมูลนำเข้ามาตรวจสอบว่ามีตัวพิมพ์ใหญ่หรือไม่และมีตัวพิมพ์เล็กหรือไม่ ทั้งนี้วิธีการหลักๆในการเขียนโค้ดสำหรับข้อนี้คือการใช้ function ที่ให้มากับภาษา (จาก cctype ใน C++ เป็นต้น) ที่เรียกกันว่า standard library เราจะใช้ function isupper(c) และ islower(c) จาก header cctype เพื่อตรวจสอบว่า c เป็นตัวพิมพ์ใหญ่หรือไม่และตรวจสอบว่า c เป็นตัวพิมพ์เล็กหรือไม่ดังนี้

#include <iostream>
#include <cctype>

string s;
int main() {
  cin >> s;
  bool has_upper = false; // เก็บว่า s มีตัวพิมพ์ใหญ่หรือไม่
  bool has_lower = false; // เก็บว่า s มีตัวพิมพ์เล็กหรือไม่
  for (char c: s) {
  	if (isupper(c)) has_upper = true;
    if (islower(c)) has_lower = true;
  }
  if (has_upper && has_lower) cout << "Mix";
  else if (has_upper) cout << "All Capital Letter";
  else cout << "All Small Letter";
}