📅  最后修改于: 2023-12-03 14:56:21.470000             🧑  作者: Mango
Pangram是指包含字母表中所有字母至少一次的句子或短语。本文将提供一个用于检查给定字符串是否为Pangram的C++程序。
#include <iostream>
#include <string>
#include <unordered_set>
bool isPangram(const std::string& str) {
std::unordered_set<char> letters;
for (char c : str) {
if (isalpha(c))
letters.insert(tolower(c)); // 将字母转换为小写并插入到集合中
}
return letters.size() == 26; // 如果集合大小为26,表示包含了字母表中的所有字母
}
int main() {
std::string sentence;
std::cout << "请输入一句话或短语:";
std::getline(std::cin, sentence);
if (isPangram(sentence))
std::cout << "是Pangram。" << std::endl;
else
std::cout << "不是Pangram。" << std::endl;
return 0;
}
该程序通过使用unordered_set
容器来记录给定字符串中出现的字母。算法如下:
unordered_set
集合用于存储字母。true
,表示输入字符串为Pangram,否则返回false
,表示不是Pangram。g++
编译器g++ pangram.cpp -o pangram
。希望以上介绍对您有所帮助!