问题标题: 酷町堂:3973 合适的数

0
0
已解决
李素妍
李素妍
新手天翼
新手天翼

#include <iostream>

using namespace std;

int main(){

for(int i=10000;i<=99999;i++){

int a=i/10000,k=i*a,b=i/1000,c=i%100,d=i/10%10,e=i%10;

        if(a*10000+b*1000+c*100+d*10+e==e*10000+e*1000+e*100+e*10+e){

            cout<<i<<" ";

        }

}

return 0;

}

李素妍在2020-08-03 14:41:40追加了内容

ing

李素妍在2020-08-03 14:45:57追加了内容

换成4542   三位数中的任意两位

李素妍在2020-08-03 14:46:10追加了内容

换成4542   三位数中的任意两位


0
已采纳
蔡乐毅
蔡乐毅
高级光能
高级光能

if条件错了 

if((a*10000+b*1000+c*100+d*10+e)*a==e*10000+e*1000+e*100+e*10+e){

            cout<<i<<" ";

        }

0
黄子扬
黄子扬
初级天翼
初级天翼

我的代码是这么写的:

for(int i=10000;i<=99999;i++)
    {
        int A=i/10000,E=i%10,k=i*A;
        for(int j=1;j<=5;j++)
        {
            if(k%10!=E)
                break;
            k/=10;
            if(j==5&&i*A>=100000&&E!=0)
                cout<<i<<" ";
        }
    }

你可以先逐位取出再判断

黄子扬在2020-08-03 14:45:28追加了内容
79365

疯狂暗示(((

0
陈曦
陈曦
资深天翼
资深天翼

我的代码(函数部分)

bool tj(int n){
    整形 a=n/10000;
    整形 s=a*n;
    整形 计数器=0;
    循环(s){
        if(s%10!=n%10){
            返回 假;           
        }
        s/=10;
        计数器++;
    }
    如果(计数器==6)
        返回 真;
    返回 假;   
}

 

0
刘煜熙
刘煜熙
修练者
修练者

```cpp

直接输出79365就可以了,符合条件的只有这一个数。

0
康曦
康曦
中级光能
中级光能

核心

int x;
    for(int i=10000;i<=99999;i++){
        int a,b,c,d,e;
        a=i%10;
        b=i/10%10;
        c=i/100%10;
        d=i/1000%10;
        e=i/10000;
        if(a!=b&&a!=c&&a!=d&&a!=e&&b!=c&&b!=d&&b!=e&&c!=d&&c!=e&&d!=e){
                if(i*e==a*100000+a*10000+a*1000+a*100+a*10+a){
                    cout<<i<<" ";
                }
        }
    }

 

我要回答