เราได้รับสตริงที่ประกอบด้วยอักษรตัวพิมพ์ใหญ่ อักษรตัวพิมพ์เล็ก อักขระพิเศษ และค่าตัวเลขด้วย งานคือการคำนวณความถี่ของอักขระทุกประเภท อักขระพิเศษ และค่าตัวเลขในสตริง
ตัวพิมพ์ใหญ่ − A - Z มีค่า ASCII ตั้งแต่ 65 - 90 โดยที่รวม 65 และ 90 ไว้ด้วย
ตัวพิมพ์เล็ก − a - z มีค่า ASCII ตั้งแต่ 97 - 122 โดยที่ 97 และ 122 รวมอยู่ด้วย
ค่าตัวเลข − 0 - 9 มีค่า ASCII ตั้งแต่ 48 - 57 โดยที่ รวม 48 และ 57 ด้วย
อักขระพิเศษ − !, @, #, $, %, ^, &, *
ป้อนข้อมูล − str =Tutori@lPo!n&90
ผลผลิต − ตัวพิมพ์ใหญ่ทั้งหมดในสตริงคือ − 2
ตัวพิมพ์เล็กทั้งหมดในสตริงคือ − 8
จำนวนทั้งหมดในสตริงคือ − 2
จำนวนอักขระพิเศษทั้งหมดในสตริงคือ − 3
ป้อนข้อมูล − str =WELc0m$
ผลผลิต − ตัวพิมพ์ใหญ่ทั้งหมดในสตริงคือ − 3
ตัวพิมพ์เล็กทั้งหมดในสตริงคือ − 2
จำนวนทั้งหมดในสตริงคือ − 1
จำนวนอักขระพิเศษทั้งหมดในสตริงคือ − 1
แนวทางที่ใช้ในโปรแกรมด้านล่างมีดังนี้
-
ป้อนสตริงที่ประกอบด้วยตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก อักขระพิเศษ และค่าตัวเลข
-
คำนวณความยาวของสตริง
-
นำตัวแปรมาเก็บการนับตัวพิมพ์ใหญ่ อักษรตัวพิมพ์เล็ก อักขระพิเศษ และค่าตัวเลข แล้วกำหนดค่าให้เป็น 0
-
เริ่มวนซ้ำ FOR จาก 0 ถึงขนาดของสตริง
-
ภายในลูป ให้ตรวจสอบ IF str[i]>=A และ str[i] <=Z จากนั้นให้เพิ่มจำนวนตัวพิมพ์ใหญ่
-
ภายในลูป ให้ตรวจสอบ IF str[i]>=a และ str[i] <=z จากนั้นให้เพิ่มจำนวนตัวอักษรพิมพ์เล็ก
-
ภายในลูป ให้ตรวจสอบ IF str[i]>=0 และ str[i] <=9 จากนั้นให้เพิ่มจำนวนค่าตัวเลข
-
มิฉะนั้น ให้เพิ่มจำนวนอักขระพิเศษ
-
พิมพ์ผลลัพธ์
ตัวอย่าง
#include<iostream> using namespace std; //Count Uppercase, Lowercase, special character and numeric values void count(string str){ int Uppercase = 0; int Lowercase = 0; int digit = 0; int special_character = 0; for (int i = 0; i < str.length(); i++){ if (str[i] >= 'A' && str[i] <= 'Z'){ Uppercase++; } else if(str[i] >= 'a' && str[i] <= 'z'){ Lowercase++; } else if(str[i]>= '0' && str[i]<= '9'){ digit++; } else{ special_character++; } } cout<<"Total Upper case letters in a string are: "<<Uppercase<< endl; cout<<"Total lower case letters in a string are: "<<Lowercase<< endl; cout<<"Total number in a string are: "<<digit<< endl; cout<<"total of special characters in a string are: "<<special_character<< endl; } int main(){ string str = "Tutori@lPo!n&90"; count(str); return 0; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
Total Upper case letters in a string are: 2 Total lower case letters in a string are: 8 Total number in a string are: 2 total of special characters in a string are: 3