C++实现:输入整数英文单词算乘积,输出数字与英文结果,可多次计算!
以下是一个满足要求的C++程序示例: ```cpp #include <iostream> #include <string> #include <map> using namespace std; map<string, int> wordToNumber = { {"zero", 0}, {"one", 1}, {"two", 2}, {"three", 3}, {"four", 4}, {"five", 5}, {"six", 6}, {"seven", 7}, {"eight", 8}, {"nine", 9}, {"ten", 10}, {"eleven", 11}, {"twelve", 12}, {"thirteen", 13}, {"fourteen", 14}, {"fifteen", 15}, {"sixteen", 16}, {"seventeen", 17}, {"eighteen", 18}, {"nineteen", 19}, {"twenty", 20} }; map<int, string> numberToWord = { {0, "zero"}, {1, "one"}, {2, "two"}, {3, "three"}, {4, "four"}, {5, "five"}, {6, "six"}, {7, "seven"}, {8, "eight"}, {9, "nine"}, {10, "ten"}, {11, "eleven"}, {12, "twelve"}, {13, "thirteen"}, {14, "fourteen"}, {15, "fifteen"}, {16, "sixteen"}, {17, "seventeen"}, {18, "eighteen"}, {19, "nineteen"}, {20, "twenty"} }; int getNumberFromString(string word) { if (wordToNumber.find(word) != wordToNumber.end()) { return wordToNumber[word]; } return -1; // 若输入非法,则返回-1 } string getWordFromNumber(int number) { if (numberToWord.find(number) != numberToWord.end()) { return numberToWord[number]; } return "unknown"; // 若输入非法,则返回"unknown" } int main() { while (true) { string word1, word2; int number1, number2; // 输入第一个整数的英文单词 cout << "Input the first integer word: "; cin >> word1; number1 = getNumberFromString(word1); if (number1 == -1) { cout << "Invalid input. Please try again." << endl; continue; } // 输入第二个整数的英文单词 cout << "Input the second integer word: "; cin >> word2; number2 = getNumberFromString(word2); if (number2 == -1) { cout << "Invalid input. Please try again." << endl; continue; } // 显示输入的整数及其对应的数字 cout << "Number 1: " << number1 << " (" << word1 << ")" << endl; cout << "Number 2: " << number2 << " (" << word2 << ")" << endl; int result = number1 * number2; string resultWord = getWordFromNumber(result); // 输出计算结果的数字及结果对应的英文单词 cout << "Result: " << result << " (" << resultWord << ")" << endl; string choice; // 询问用户是否继续计算 cout << "Do you want to continue? (yes/no): "; cin >> choice; if (choice != "yes") { break; } } return 0; } ``` 这个程序首先定义了两个存储英文单词和对应整数的map,分别用于将英文单词转换为整数和将整数转换为英文单词。然后在while循环中,用户可以输入两个英文单词,程序会转换为对应的整数,并显示出来。然后计算这两个整数的乘积,并输出结果的数字和对应的英文单词。最后询问用户是否继续计算,如果回答是"yes",则继续循环,否则退出程序。 程序的输入要求用户输入两个整数的英文单词,输出会显示输入的整数及其对应的数字,然后计算结果的数字及结果对应的英文单词。如果输入的单词不在[0, 20]区间内,则程序会显示"Invalid input. Please try again."的错误信息。 注意:该程序并未实现小数的输入和计算。如果你想要在(0.0, 20) 区间内输入小数,并计算结果,你需要进一步修改程序。 ######[AI写代码神器 | 2268点数解答 | 2024-05-24 01:55:27]
- 易语言子程序 TriggerCode 代码详解:通配符查找与结果运算(字节豆包 | 607点数解答 | 2026-02-09 11:59:34)37
- 判断超级幸运数:满足“纯4/7数位”或“4/7总个数为4或7”的整数计数(阿里通义 | 965点数解答 | 2026-03-13 12:15:06)22
- C++ 实现:精准统计给定范围 [L, R] 内数字 2 出现的次数及代码详解(字节豆包 | 401点数解答 | 2026-02-05 21:17:05)42
- C++实现:统计[L, R]范围内数字2出现的次数及代码详解(字节豆包 | 489点数解答 | 2026-02-07 17:12:26)46
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)345
- 代码漏洞大揭秘:Pandas数据预处理逻辑、细节全修正!(字节豆包 | 635点数解答 | 2025-06-25 15:46:50)176
- Python 实现:根据入职年限和销售业绩精准计算职工奖金并列表输出(字节豆包 | 215点数解答 | 2024-11-07 01:01:17)108
- 计算区间 n 到 m 中数字 x 出现次数的 Python 实现与详解(字节豆包 | 289点数解答 | 2025-12-07 17:14:59)75
- Python 实现:计算区间 n 到 m 中数字 x 出现的次数(字节豆包 | 322点数解答 | 2025-12-13 21:37:08)77
- 培训机构学员成绩与年龄更新:C++ 代码实现(DeepSeek | 186点数解答 | 2025-12-16 18:04:31)61
- Python 处理培训机构学员培训后年龄与 NOIP 成绩提升情况(DeepSeek | 73点数解答 | 2025-12-16 18:05:20)65
- 培训机构学员成绩提升:C++代码实现年龄与NOIP成绩更新(DeepSeek | 178点数解答 | 2025-12-31 12:20:24)61