C++ C++;用于查找两个两位数乘积的最大回文的程序

C++ C++;用于查找两个两位数乘积的最大回文的程序,c++,palindrome,C++,Palindrome,我见过,但这不是我要找的 问题是相同的,那就是找到最大的回文,它是两个三位数的乘积 因为我的程序不起作用,所以我做了一点改变,没有找到最大回文,它是两个三位数的乘积,我写了一个程序来找到最大回文,它是两个两位数的乘积 请看节目: #include <iostream> using namespace std; int main() { int i, j, n, s, m, w; for (i = 99; i > 9; i--) { for (j

我见过,但这不是我要找的

问题是相同的,那就是找到最大的回文,它是两个三位数的乘积

因为我的程序不起作用,所以我做了一点改变,没有找到最大回文,它是两个三位数的乘积,我写了一个程序来找到最大回文,它是两个两位数的乘积

请看节目:

#include <iostream>
using namespace std;
int main() {
    int i, j, n, s, m, w;
    for (i = 99; i > 9; i--) {
        for (j = 99; j > 9; j--)
            n = i * j;
        s = n;
        while (n != 0) {
            w = 0;
            m = n % 10;
            w = w * 10 + m;
            n = n / 10;
        }
        if (s == w)
            cout << s << endl;
        break;
    }
    return 0;
}
#包括
使用名称空间std;
int main(){
int i,j,n,s,m,w;
对于(i=99;i>9;i--){
对于(j=99;j>9;j--)
n=i*j;
s=n;
而(n!=0){
w=0;
m=n%10;
w=w*10+m;
n=n/10;
}
如果(s==w)

cout现在您缺少j循环的花括号。当前代码正在执行99!*i


然后,您必须将重点放在存储最大回文值上,而不是仅将所有这些值打印到屏幕上(这是考虑到您的实现,无论如何它都不是最有效的实现)。

您的代码的一些修改版本:

#include <iostream>
using namespace std;
int main() {
    int max_product = 0;
    for (int i = 99; i > 9; i--) {
        for (int j = i; j > 9; j--) {
            int product = i * j;
            if (product < max_product)
                break;
            int number = product;
            int reverse = 0;
            while (number != 0) {
                reverse = reverse * 10 + number % 10;
                number /= 10;
            }
            if (product == reverse && product > max_product) {
                max_product = product;
            }
        }
    }
    cout << "Solution: " << max_product << endl;
    return 0;
}
#包括
使用名称空间std;
int main(){
int max_乘积=0;
对于(int i=99;i>9;i--){
对于(int j=i;j>9;j--){
int乘积=i*j;
if(产品<最大产品)
打破
整数=产品;
int反向=0;
while(数字!=0){
反向=反向*10+数字%10;
数目/=10;
}
如果(产品==反向和产品>最大产品){
最大产品=产品;
}
}
}
不能1)为变量使用有意义的名称。单字母变量充其量是令人困惑的。2)选择一种缩进样式。不要将两个或三个缩进完全混淆。如果这样做,您会发现其中一个循环的块周围可能缺少花括号。3)与其只是转储代码让其他人查找错误,不如尝试缩小缩进范围t关闭并调试它。