用C语言求所有满足条件的四位数abcd这四位数是11的倍数;a, b, c, d均是小于10的互不相同的自然数;

作者&投稿:村乔 (若有异议请与网页底部的电邮联系)
求所有满足条件的四位数 这四位数是11的倍数 a,b,c,d均是小于10的互不相等的自然数 b+c=a bc是完全平方数~

var
a,b,c,d:longint;
tf:boolean;
begin
for a:=1 to 9 do for b:=0 to 9 do if ba then for c:=0 to 9 do if (ca) and (cb) then for d:=0 to 9 do if (da) and (db) and (dc) then
begin
tf:=true;
if (a*1000+b*100+c*10+d) mod 110 then tf:=false;
if b+ca then tf:=false;
if b*10+csqr(trunc(sqrt(b*10+c))) then tf:=false;
if tf then writeln(a*1000+b*100+c*10+d);
end;
end.
运行结果是9361和9812。

——百度知道团队pas世界欢迎你加入!

Private Sub Command1_Click()
Dim i, a, b, c, d
For i = 1000 To 9999
a = CLng(Mid(i, 1, 1))
b = CLng(Mid(i, 2, 1))
c = CLng(Mid(i, 3, 1))
d = CLng(Mid(i, 4, 1))
If (a * 1000 + b * 100 + c * 10 + d) Mod 11 = 0 And a = b + c Then
Debug.Print i
End If
Next
End Sub

#include<stdio.h>
#include<math.h>
int main()
{int a,b,c,d,e;
 for(a=1;a<10;a++)
  for(b=0;b<10;b++)
   if(b-a)
    for(c=1;c<10;c++)
     if(a-c&&b-c)
      {d=a+c-b;
       if(d>0&&d<10&&a-d&&b-d&&c-d&&b+c-a)
       {e=sqrt(10*b+c);
    if(e*e==10*b+c)printf("%d%d%d%d ",a,b,c,d);
   }
  }
return 0;
}


/*

3215 7168 7258 7348 8176 8356 8536 8716 9274 9364 9814

Press any key to continue

*/

#include <stdio.h>
#include <math.h>

int is(int n) {
int a,b,c,d;
d = n % 10;
c = (n / 10) % 10;
b = (n / 100) % 10;
a = (n / 1000) % 10;
if(b + c == a &&
sqrt(10 * b + c) * sqrt(10 * b + c) == 10 * b + c &&
(a + b + c + d) % 11 == 0 && a != b && b != c &&
a != c && c != d && d != a && b != d)
return 1;
return 0;
}

int main() {
int i;
for(i = 1000; i < 10000; ++i)
if(is(i)) printf("%d ",i);
printf("
");
return 0;
}


楼上忘了11的倍数

#include <stdio.h>

int check_wqpfs(int x)
{
    int i;
    for(i=1; ; i++){
        int ret = i*i;
        if(ret == x)
            return 0;
        if(ret > x)
            break;
    }   
    return 1;
}
int main(int argc, char *argv[])
{
    int i;
    for(i=1000; i<10000; i++){
        int a, b, c, d;
        int bc; 
        d = i%10;
        c = (i%100 - i%10)/10;
        b = (i%1000 - i%100)/100;
        a = i/1000;
        bc = b*10 + c;
        if( i%11 == 0 &&  
            a != b &&  
            a != c &&  
            a != d &&
            b != c &&
            b != d &&
            c != d &&
            a == b + c &&
            check_wqpfs(bc) == 0)
        {   
            printf("i=%d, a=%d, b=%d, c=%d, d=%d
", i, a, b, c, d); 
        }   
    }   
    return 0;
}

结果:

i=9361, a=9, b=3, c=6, d=1

i=9812, a=9, b=8, c=1, d=2




求满足条件s=1*2*3*...*n>=1000的最小n和s的值 c语言、
参考代码如下:include<stdio.h>int main(){ int i=1,n=1; while(1){ i*=n; if(i>=1000)break; ++n; } printf("最小的n为%d,s为%d",n,i); return 0;}

用C语言变一个程序
这个只能求一定范围内的。SIX+SIX+SIX=NINE+NINE这个条件,说简单点就是3*six=2*nine,也就是six=2\/3*nine,也就是每三个数就有一个满足条件的自然数。所以程序可以这么写。int main(){int Begin=1, End=100; \/\/设要求的范围从1-100,你可以根据需要自己设定。int Six=0,Nine=0,Cnt=...

c语言试找出满足下列条件所有三位数:百位数不多于2,个位与百位对换得到...
void main(){int a,hun,date,ten,new;\/*a原数据,hun百位,date个位,ten十位,new新三位数*\/ for(a=100;a<=999;a++){hun=a\/100;ten=a%100\/10;date=a%10;new=date*100+ten*10+hun;if((hun>=1)&&(hun<=2)&&(new>2*a))printf("%d\\n",a);} } ...

C语言编程求满足x<y<z条件下x²+y²+z²=55²有多少组整数解...
这道题目是一个纯数学问题,需要用到一些数学知识。在C语言中,我们可以使用嵌套循环来枚举所有可能的整数解,并判断是否满足条件。下面我来详细讲解一下如何实现。首先,我们需要明确题目给出的条件:x<y<z,且 x²+y²+z²=55²。因为 x<y<z,所以我们可以确定 x 的最大...

C编程:求1000~9999间的所有满足以下条件的四位数.为一个完全平方数,一...
我不会C语言,大概意思自己看把,会编程的应该能看懂 for (i=32;i<100;i++){ s=i*i s(1)=s div 1000 s(2)=(s mod 1000)div100 s(3)=(s mod 100)div10 s(4)=s mod 10 if (s(1)+s(3)=10 and s(2)+s(4)=12){记录 s} } ...

C语言:求满足以下条件的数: 该数大于100小于1000 其个位数与十位数的...
include <stdio.h> int fun(int n){int a,b,c,s;a=n\/100;b=n\/10%10;c=n%10;return c*c+b*b==a*a*a;} int main(){ int i;for(i=101;i<1001;i++)if(fun(i))printf("%d\\t",i);return 0;}

...按从小到大的顺序依次输出所有满足条件的3位数:该数各位数字的立方和...
include<stdio.h>;int IsDaffodilsNum(int num){int m = num \/ 100; \/\/百位int n = (num \/ 10) % 10;\/\/十位int k = num % 10;\/\/个位if (num == m*m*m + n*n*n + k*k*k)){return 1;}else{return 0;}}int main(){int i;for (i=100;i<1000;i++){if(Is...

C语言编程:编写程序,求出200~300之间的满足以下条件的数:它们的三位...
include <stdio.h> int main(){ int a, b, c;int sum, mul;for (int v=200; v<=300; ++v) { a = v \/ 100; \/\/取百位数 b = (v % 100) \/ 10; \/\/取十位数 c = v % 10; \/\/取个位数 sum = a + b + c;mul = a * b * c;if (sum==12 && mul==...

c语言编程 求满足啊a^3+b^3+c^3=abc 的三位数abc 用while循环编_百度知...
include<stdio.h>int main(){int i=100,a,b,c; while(i<1000) {a=i\/100; b=i%100\/10; c=i%10; if(i==a*a*a+b*b*b+c*c*c) printf("%d\\n",i); i++; } return 0;}

C语言问题: 编写程序求出满足下列条件的四位数:
include "stdio.h"include "math.h"void main(){ int m,n,a,b,c,d,flag=0;for(n=int(sqrt(1000));n<100;n++){ m=n*n;d=m%10;c=m%100\/10;b=m%1000\/100;a=m\/1000;if(a+c==10&&b*d==12){ flag=1;printf("%d=%dX%d\\n",m,n,n);} } if(!flag)printf("这个数...

东风区13663987207: 用C语言求所有满足条件的四位数abcd这四位数是11的倍数;a, b, c, d均是小于10的互不相同的自然数; -
其蚀复方: var a,b,c,d:longint; tf:boolean; begin for a:=1 to 9 do for b:=0 to 9 do if b<>a then for c:=0 to 9 do if (c<>a) and (c<>b) then for d:=0 to 9 do if (d<>a) and (d<>b) and (d<>c) then begin tf:=true; if (a*1000+b*100+c*10+d) mod 11<>0 then tf:=false; if b+c...

东风区13663987207: 编写程序:求满足下列条件的所有四位数ABCD的个数, -
其蚀复方: #include int fun(void) {int a,d,i;int result;int count=0;for(a=0;a {for(d=0;d {result=a*1000+800+a*10+d;if(result%16==0){// printf("%d\n",result);count+=1;}d+=2;}}return count; } void main() {printf("%d\n",fun()); }

东风区13663987207: C语言问题: 编写程序求出满足下列条件的四位数: -
其蚀复方: #include "stdio.h" #include "math.h" void main() { int m,n,a,b,c,d,flag=0; for(n=int(sqrt(1000));n<100;n++) { m=n*n; d=m%10; c=m%100/10; b=m%1000/100; a=m/1000; if(a+c==10&&b*d==12) { flag=1; printf("%d=%dX%d\n",m,n,n); } } if(!flag)printf("这个数不存在\n"); } 结果为: 1296=36X36 9216=96X96

东风区13663987207: 用c语言求满足如下关系的所有的四位数字:①千位数字+个位数字=百位数字 - 十位数字;②截取该四位数后 -
其蚀复方: Public Sub test() Dim i As Integer Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer For i = 1000 To 2000 a = Int(i / 1000) b = Int((i - a * 1000) / 100) c = Int((i - a * 1000 - b * 100) / 10) d = i - a * 1000...8886

东风区13663987207: C语言中,求满足条件 abcd=(ab)*(ab)+(cd)*(cd)的所有四位数 -
其蚀复方: 四个数字,四重循环 ~~~~~~~~~~

东风区13663987207: 编写程序,求满足下列条件的所有四位数ABCD的个数,该四位数是8的倍数,且A+B=B+C,即第1 -
其蚀复方: num=0 str="" for i = 1000 to 9999 if i mod 8= 0 then if Cint(left(Cstr(i),1))+Cint(right(left(Cstr(i),2),1))=Cint(right(left(Cstr(i),2),1))+Cint(left(right(Cstr(i),2),1)) then str=str&","&i end if end if next Response.Write(ubound(split(str,","))-1) 109

东风区13663987207: 用C语言编写 找出符合下列条件的所有四位数的和,第一三位之和为10,第二四位之积为12 -
其蚀复方: #include<stdio.h> int isMyNum(int yourNum){ int sum1 = 0; int sum2 = 0; int arr[4]={0,0,0,0},index=0; while( yourNum > 0){ arr[index++] = yourNum % 10; yourNum = yourNum/10; } return (arr[0]*arr[2]==12)&&(arr[1]+arr[3]==10)? 1:0; } int main(){ long ...

东风区13663987207: 用C语言编写:求一个四位整数各个数位上的数字.完整的编写程序 -
其蚀复方: #include <stdio.h> int main( ) { int a; printf("输入四位数:"); scanf("%d", &a); printf("%d %d %d %d\n", a/1000, a/100%10, a%100/10, a%10); return 0; }

东风区13663987207: 编写c程序求出满足以下条件的四位数 有人写的程序,帮忙看看哪个是对的 -
其蚀复方: 1.可以去掉 2.j<100-i也就是i+j<100 这样可以保证(i+j)*(i+j)是个四位数 可以减少循环次数3. #include <stdio.h> int main() {for(int i=1000;i<=9999;i++)if (i==(i/100+i%100)*(i/100+i%100))printf("%d\n",i); return 0; }

东风区13663987207: 编程求满足下列条件的所有四位数ABCD的个数,该数是18的倍数,且D=6 ,A+B=B+C. -
其蚀复方: var t,i:longint; begin for i:=100 to 999 do if (i*10+6)mod 18=0 then if i div 100=i mod 10 then begin writeln(i,'6'); inc(t); end; writeln('tot=',t); end.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网