- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如标题中所述,我在尝试读取单词之间的空格时遇到问题,例如“从不奇数或偶数”返回为“从不奇数或偶数不是回文”,但它应该说“从不奇数或偶数是回文”。下面我将提供我当前的代码和评分结果以及我似乎无法修复的数字。
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
int main() {
string userInput;
int startInput;
bool isPalindrome = true;
getline (cin, userInput);
startInput = userInput.length();
for (int i = 0; i<(startInput/2); i++){
if (userInput[i] != userInput[(startInput -1) -i])
isPalindrome = false;
}
if (isPalindrome == true){
cout << userInput << " is a palindrome" << endl;
}
else {
cout << userInput << " is not a palindrome" <<endl;
}
return 0;
}
3:输入:从不奇数或偶数你的输出:从不奇数或偶数不是回文预期输出:从不奇数或偶数是回文
5:输入:尴尬博士您的输出:尴尬博士不是回文预期输出:dr awkward 是一个回文数
7:输入:没有柠檬就没有甜瓜你的输出:没有柠檬没有甜瓜不是回文预期输出:no lemon no melon 是回文
最佳答案
首先,从字符串中删除空格,这可以通过利用 std::remove_if 在 C++ 中通过单个函数调用来完成。 .
接下来,将删除了空格的字符串与该字符串的反转版本进行比较。通过使用反向迭代器创建字符串的另一个衬里:
所以让我们分解一下:
1) 从字符串中删除空格:
#include <algorithm>
#include <string>
#include <cctype>
//...
std::string s;
//...
s.erase(std::remove_if(s.begin(), s.end(), ::isspace), s.end());
2) 构建字符串的反转版本:
std::string s;
// ...
std::string sreversed == std::string(s.rbegin(), s.rend());
3) 将所有这些放在一个简洁的函数中:
#include <algorithm>
#include <string>
#include <iostream>
#include <cctype>
bool isPalindrome(std::string s)
{
// erase the spaces
s.erase(std::remove_if(s.begin(), s.end(), ::isspace), s.end());
// compare original string with reversed string and return result
return s == std::string(s.rbegin(), s.rend());
}
int main()
{
std::string test = "never odd or even";
bool result = isPalindrome(test);
std::cout << "\"" << test << "\" is" << (result?" ":" not ") << "a palindrome";
}
输出:
"never odd or even" is a palindrome
关于c++ - 如何使回文代码不用担心 (userInput) 字间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56919751/
我刚刚开始使用 data-* 属性来存储查看所需的自定义属性和值。例如 。 基于data-*我正在做一些操作(CRUD)。如果用户在客户端更改 data-* 属性值(即使用 firebug 和其他
我想知道是否有人可以指出正确的方向。我最近开始使用 LinqToSQL 并喜欢强类型数据对象等。 我只是在努力了解对数据库性能等的影响。例如,假设我正在开发一个简单的用户配置文件页面。该页面显示有关用
我正在开发一个有文本区域的 Angular 应用程序。此文本区域的内容随后用于填充输入文本的预览。所有这些都在客户端完成。我担心有人能够将代码注入(inject)我的应用程序,例如 /*So
我在一台机器上运行 CDH 5.6(Hadoop 2.6,HBase 1.0.0)。只有 Hadoop 和 HBase 在运行。 Hadoop 配置为复制因子 1,Hbase 运行在 HDFS 之上,
在 SO 和其他地方,如果没有人礼貌地指出最好使用参数化输入和存储过程,几乎不可能在示例代码中发布长连接的 SQL 指令。 最近的示例 here . 但是担心 Winforms 项目中的 SQL 注入
未受攻击的计算机上的 Web 应用程序在不安全的 WiFi 环境中容易受到 XSS、CRSF、sql 注入(inject)攻击和 cookie 窃取。 为了防止这些安全问题,有以下补救措施 sql注入
我在一个执行数值计算的库上工作了一段时间。它是用纯原生 C++ 编写的,直到现在我一直在使用简单的控制台应用程序来测试它的功能。 是时候在库的顶部构建一个 GUI - 以更好地显示结果表并以图形形式呈
我是一名优秀的程序员,十分优秀!