tft每日頭條

 > 圖文

 > 搞怪c代碼

搞怪c代碼

圖文 更新时间:2024-10-01 13:23:05

搞怪c代碼(C趣味程序3)1

21.四位反序數

設N是一個四位數,它的9倍恰好是其反序數,求N。反序數就是将整數的數字倒過來形成的整數。例如:1234的反序數是4321.

#include <iostream>

using namespace std;

void main()

{

int n,m,g,s,b,q;

for(n=1000;n<1111;n )

{

g=n;

s=n/10;

b=n/100;

q=n/1000;

m=1000*g 100*s 10*b q;

if(9*n==m)

cout<<"N的值為:"<<n<<endl;

}

}

22.求車速

一輛以固定速度行駛的汽車,司機在上午10點看到裡程表上的讀數是一個對稱數(即這個數從左向右讀和從右向左讀是完全一樣的),為95859.兩小時後裡程表上出現了一個新的對稱數。問該車的速度是多少?新的對稱數是多少?

#include <iostream>

using namespace std;

void main()

{

int n,m,g,s,b,q,w,speed;

for(n=95860;;n )

{

g=n;

s=n/10;

b=n/100;

q=n/1000;

w=n/10000;

m=10000*g 1000*s 100*b 10*q w;

if(n==m)

{

speed=(m-95859)/2.0;

cout<<"該車的速度為:"<<speed<<endl;

cout<<"新的對稱數是:"<<m<<endl;

break;

}

}

}

23.由兩個平方三位數獲得三個平方二位數

已知兩個平方三位數abc和xyz,其中a、b、c、x、y、z未必是不同的;而ax、by、cz是三個平方二位數。請編程求三位數abc和xyz。

#include <iostream>

#include <cmath>

using namespace std;

void f(int n,float s[])

{

int k,j=0;

for(k=100;k>=1;j )

{

s[j]=n/k;

k/=10;

}

}

void main()

{

int i,t;

float a[3],b[3];

cout<<"可能的兩個平方三位數是:"<<endl;

for(i=11;i<=31;i )n

for(t=11;t<=31;t )

{

f(i*i,a);

f(t*t,b);

if(sqrt(a[0]*10 b[0])==(int)sqrt(a[0]*10 b[0])

&&sqrt(a[1]*10 b[1])==(int)sqrt(a[1]*10 b[1])

&&sqrt(a[2]*10 b[2])==(int)sqrt(a[2]*10 b[2]))

cout<<i*i<<"和"<<t*t<<endl;

}

}

24.阿姆斯特朗數

如果一個正整數等于其各個數字的立方和,則該數稱為阿姆斯特朗數(亦成為自戀性數)。如407=43 03 73就是一個阿姆斯特朗數,試編程求1000以内的所有阿姆斯特朗數。

#include <iostream>

#include<cmath>

using namespace std;

void main()

{

int n,g,s,b,m;

cout<<"1000以内的所有阿姆斯特朗數有:"<<endl;

for(n=2;n<1000;n )

{

g=n;

s=n/10;

b=n/100;

m=b*b*b s*s*s g*g*g;

if(n==m)

cout<<n<<" ";

}

}

25.完全數

如果一個數恰好等于它的因子之和,則該數為“完全數”。如:6的因子是1、2、3,而6=1 2 3.所以6是完全數。試求出1000以内所有的完全數。

#include<iostream>

using namespace std;

void main()

{

int n,a,sum=0;

for(n=1;n<=1000;n )

{

for(a=1;a<n;a )

{

if(n%a==0) sum=sum a;

}

if(n==sum)

{

cout<<n<<"的因子是";

for(a=1;a<n;a )

if(n%a==0)

cout<<a<<" ";

cout<<endl;

}

sum=0;

}

}

26.親密數#####

如果整數A的全部因子(包括1,不包括A本身)之和等于B,且整數B的全部因子(包括1,不包括B本身)之和等于A,則将整數A和B稱為親密數。求3000以内的全部親密數。

#include <iostream>

using namespace std;

void main()

{

int i,j,a,b,count1=0,count2=0;

for(a=1;a<=3000;a )

{

for(i=1;i<=a/2;i )

if(a%i==0) count1 =i;

b=count1;

count1=0;

for(j=1;j<=b/2;j )

if(b%j==0) count2 =j;

if(count2==a)

cout<<a<<"和"<<b<<endl;

}

}

27.自守數#####

自守數是指一個數的平方的尾數等于該數自身的自然數。

例如:252=625 762=5776 93762=87909376

求200000以内的自守數。

28.回文數

打印所有不超過n(取n<256)的,其平方具有對稱性的數(也稱回文數)。

#include <iostream>

#include <iomanip>

using namespace std;

void main()

{

int n,i,j,k=0,t=1,m[6];

cout<<"原數 平方後的數"<<endl;

for(i=1;i<256;i )

{

n=i*i;

for(j=1;n!=0;j )

{

m[j]=n;

n/=10;

}

for(i=1;i<j-1;i )

{

k =m[i]*t;

t*=10;

}

if(k==i*i)

cout<<setw(4)<<i<<setw(6)<<i*i<<endl;

}

}

29.求具有abcd=(ab cd)2性質的四位數。

3025這個數具有一種獨特的性質:将它平分為兩段,即30和25,使之相加後求平方,即(30 25)2,恰好等于3025本身。請求出具有這樣性質的全部四位數。

#include <iostream>

using namespace std;

void main()

{

int n,m,a,b;

for(n=1000;n<10000;n )

{

a=n/100;

b=n0;

m=(a b)*(a b);

if(n==m)

cout<<n<<endl;

}

}

30.求素數

求1000以内的所有素數。

#include <iostream>

using namespace std;

void main()

{

int n,i,count=0,f;

for(n=2;n<1000;n )

{

for(f=0,i=1;i<n;i )

if(n%i==0) f ;

if(f==1)

{

cout<<n<<" ";

count ;

if(count==0) cout<<endl;

}

}

}

搞怪c代碼(C趣味程序3)2

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved