一个小题目
题目:输出能被7整除而且百位、十位、各位上的数字都不相同的三位数。
我写了一点,但是不正确,来求助。
(崩溃了) 154? 乘号 发表于 2020-3-20 14:53
154?
要写一个程序 本帖最后由 liuzhengyuan 于 2020-3-20 15:16 编辑
应该没有错误(C++)
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int main()
{
int i;
for(i=100 ;i<=999 ;i++)
{
if( i%7 == 0 )
{
int one, ten, hun; //个十百位
one = i%10;
ten = i/10 %10;
hun = i/100;
if(one != ten&&one != hun && hun != ten)
{
cout<<i<<"\n";
continue;
}
}
}
} 一只程序猫 发表于 2020-3-20 14:57
要写一个程序
emmmmm……c语言我写不了,抱歉 int num = 0;
int min = 100 / 7; //(min + 1) * 7 是三位数里能被7整除的最小的数
int max = 999 / 7;//max * 7 是三位数里能被7整除的最大的数
for(int i = min + 1;i <= max;i++)
{
num = i * 7;//num是从(min + 1) * 7 到 max * 7 里的能被7整除的数,从小到大依次取得
{
int x = num / 100;// 取到能被7整除的三位数的百位数
int y = (num - x * 100) / 10; //十位数
int z = num - x * 100 - y * 10; //个位数
if(x != y && x != z && y != z)
{
printf("%d\n", num);
}
}
}
没用编译器,直接在网页上写的,差不多就是这样了,这是我的思路 本帖最后由 liuzhengyuan 于 2020-3-20 15:08 编辑
我看到了我的错误 话说该怎么结贴,我有一个帖子,没人回答,我自己想了一段时间,用别的方法解决了,但不知道该怎么结贴 梦想灬远帆 发表于 2020-3-20 15:02
没用编译器,直接在网页上写的,差不多就是这样了,这是我的思路
非常感谢
liuzhengyuan 发表于 2020-3-20 14:57
应该没有错误(C++)
谢谢{:10_312:} 一只程序猫 发表于 2020-3-20 15:08
谢谢
我发现你设最佳答案是我的代码有个bug
现在已改正
liuzhengyuan 发表于 2020-3-20 15:15
我发现你设最佳答案是我的代码有个bug
现在已改正
好的
页:
[1]