算法设计与分析
发布网友
发布时间:2022-04-28 19:52
我来回答
共3个回答
热心网友
时间:2022-06-23 00:06
#include "stdio.h"
main()
{ int a,i,q,b,s,g;
printf("enter number between 1000 to 9999.\n");
scanf("%d",&a);
q=a/1000; b=(a-q*1000)/100; s=(a%100)/10; g=a%10 ;
if(q<=0) printf("error.\n");
else if(q==b==s==g) printf("error");
else if (a%q==0&&a%b==0&&a%s==0&&a%g==0)
printf("the number:%d",a);
else printf("error.");
getch();}
这个你要是输入一个数,出现错误就表示不是!
没出错就是你要找的数
热心网友
时间:2022-06-23 00:06
数字为a
四个位数分别写入b[4]
for循环判断a数组的各位,如有相等的不操作,都不相等,写入一个地方
大于等于1000千位就非零了
a%b[i]==0,&四位
都成立的话就筛选完毕
热心网友
时间:2022-06-23 00:07
#include<iostream.h>
void main()
{
int a,b,c,d;
for(int i=1000;i<10000;i++)
{
a=i/1000;
b=(i%1000)/100;
c=(i%100)/10;
d=i%10;
if(a==b||a==c||a==d||b==c||b==d||c==d)
continue;
if(a==0||b==0||c==0||d==0)
continue;
if(i%a==0&&i%b==0&&i%c==0&&i%d==0)
cout<<i<<" ";
}
cout<<endl;
}