Chúng ta được cung cấp một chuỗi có độ dài bất kỳ và nhiệm vụ là tính số lượng và in các bảng chữ cái trong một chuỗi có giá trị ASCII trong phạm vi [l, r]
Giá trị ASCII cho ký tự A-Z được đưa ra bên dưới
A | B | C | D | E | F | G | H | Tôi | J | K | L | M | N | O | P | Hỏi | R | S |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 |
T | Ư | V | W | X | Y | Z |
---|---|---|---|---|---|---|
84 | 85 | 86 | 87 | 88 | 89 | 90 |
Giá trị ASCII cho các ký tự a-z được đưa ra bên dưới -
a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
9 7 | 9 số 8 | 9 9 | 10 0 | 10 1 | 10 2 | 10 3 | 10 4 | 10 5 | 10 6 | 10 7 | 10 số 8 | 10 9 | 11 0 | 11 1 | 11 2 | 11 3 | 11 4 | 11 5 |
t | u | v | w | x | y | z |
---|---|---|---|---|---|---|
116 | 117 | 118 | 119 | 120 | 121 | 122 |
Ví dụ
Input − String str = “point First = 111, Last = 117 Output − characters in the given range are: p, o , t Count is: 3
Giải thích - vì p, o và t nằm trong khoảng [111, 117] nên các ký tự này sẽ được tính.
Input − String str = “ABCZXY First = 65, Last = 70 Output − characters in the given range are: A, B, C Count is: 3
Giải thích - vì A, B và C nằm trong khoảng [65, 70] các ký tự này sẽ được tính.
Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau
-
Nhập chuỗi, giá trị bắt đầu và giá trị kết thúc để tạo phạm vi và lưu trữ nó trong các biến, giả sử là str.
-
Tính độ dài của chuỗi bằng cách sử dụng hàm length () sẽ trả về một giá trị nguyên theo số chữ cái trong chuỗi bao gồm cả khoảng trắng.
-
Lấy một biến tạm thời sẽ lưu trữ số lượng ký tự
-
Bắt đầu vòng lặp từ i đến 0 cho đến khi tôi nhỏ hơn độ dài của chuỗi
-
Bên trong vòng lặp, hãy kiểm tra xem bắt đầu có nhỏ hơn bằng str [i] và str [i] nhỏ hơn bằng với kết thúc hay không
-
Bây giờ, hãy tăng số lượng lên 1 nếu điều kiện giữ đúng và in str [i]
-
Trả lại số lượng
-
In kết quả
Ví dụ
#include <iostream> using namespace std; // Function to count the number of // characters whose ascii value is in range [l, r] int count_char(string str, int left, int right){ // Initializing the count to 0 int count = 0; int len = str.length(); for (int i = 0; i < len; i++) { // Increment the count // if the value is less if (left <= str[i] and str[i] <= right) { count++; cout << str[i] << " "; } } // return the count return count; } int main(){ string str = "tutorialspoint"; int left = 102, right = 111; cout << "Characters in the given range"; cout << "\nand their count is " << count_char(str, left, right); return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
Characters in the given range and their count is o i l o i n 6