求四位的可逆素数。可逆素数指:一个素数将其各位数字的顺序倒过来构成的反序数也是素数。
*问题分析与算法设计 本题的重点不是判断素数的方法,而是求一个整数的反序数。求反序数的方法是从整数的末尾依次截取最后一位数字,每截取一次后整数缩小10倍,将截取的数字作为新的整数的最后一位(新的整数扩大10倍后加上被截取的数字)。这样原来的整数的数字从低到高被不断地截取,依次作为新的整数从高到低的各位数字。
*程序说明与注释#include<stdio.h>#include<math.h>int num(int number);int ok(int number);int main(){int ...
验证:2000以内的正偶数都能够分解为两个素数之和(即验证歌德巴赫猜想对2000以内的正偶数成立)。
*问题分析与算法设计为了验证歌德巴赫猜想对2000以内的正偶数都是成立的,要将整数分解为两部分,然后判断出分解出的两个整数是否均为素数。若是,则满足题意;否则重新进行分解和判断。程序中对判断是否为素数的算法进行了改进,对整数判断“用从2开始到该整数的一半”改为“2开始到该整数的平方根”。原因何在请自行分析。
*程序说明与注释#include<stdio.h>#include<math.h>int fflag(int n);int main(){int i,n;for(i=4;i<=2...
我是为了爱情而选择了计算机这个行业的。与男友是大学里认识的,他的专业是计算机,而我是学电子。毕业后为了将爱情进行到底,同时也为了实现我们的理想抱负,我和他决定到国内发展的焦点城市--上海工作。离毕业还有半年的时候,我们就到上海找工作、实习,很快都定下了自己满意的工作单位。谁知就在毕业前夕,我定下的工作单位与我签合同时发生了点问题,最后没有签。男友通过朋友介绍我去一家电子商务公司,专业并不对口,不过大学里学过一些计算机软硬件课程,业余时间里我也做过自己的个人网站,会用PHOTOSHOP这样的绘图工具。而且当时电子商务很火暴,所以对我还是挺有吸引力的。就这样我进了计算机这个行业。IT界,...
我的职业是电脑程序员,或者华丽点的头衔叫软件工程师、IT从业者。选择这个职业是因为我是学计算机软件专业的,选择这个专业是因为GOD那天是程序员。所以我不是那种狂热的程序员,事实上小时我一直以为自己会从事艺术工作,因本人思维发散,爱好广泛,懒于钻研。"既然不能选择你爱的,就爱你选择的吧!"自打大二企图转系宣告失败时起,便以此为念,努力培养自己对计算机和写程序的兴趣。如今晃眼已工作四个多年头,谈不上热爱,但对这份职业无论如何算是有了归宿感了。
毕业当年IT热正是打到顶峰的时候,所以在别的女孩还在烈日下泡招聘会的时候,我还算比较轻松的就讨到一份活计,即使有几次,考官对我说,"只可惜...
我是一个很要强的女孩子。也许是家庭环境的原因,缺乏安全感的我从小都大都希望能够成为一个了不起或是有着神秘能力的人,说来可笑,也许是小时候看武侠片看多了,我觉得只有这样我才能够有能力保护我自己。我大学的专业是计算机,自从开始接触它,那冷硬外壳下的神秘世界就开始深深的吸引着我,在那时,我认为能够编写出优秀的代码是计算机高手的最深的境界了。我崇拜那些能用代码创造奇迹的人,我也深切希望我能够成为那样的人......
大学毕业时,能够当一名程序员对我来说是一件渴望而不可求的愿望。找工作时的尴尬处境我到现在都记忆犹新,招聘会上所有招聘计算机专业的条件上基本都写着"男"。并不理想的毕业院校和我是女...
求素数表中1~1000之间的所有素数
*问题分析与算法设计素数就是仅能衩1和它自身整除的整数。判定一个整数n是否为素数就是要判定整数n能否被除1和它自身之外的任意整数整除,若都不能整除,则n为素数。程序设计时i可以从2开始,到该整数n的1/2为止,用i依次去除需要判定的整数,只要存在可以整除该数的情况,即可确定要判断的整数不是素数,否则是素数。
*程序说明与注释#include<stdio.h>int main(){int n1,nm,i,j,flag,count=0;do{printf("Input START and END=?");scanf("%d%d",&n1,&a...
3025这个数具有一种独特的性质:将它平分为二段,即30和25,使之相加后求平方,即(30+25)2,恰好等于3025本身。请求出具有这样性质的全部四位数。
*问题分析与算法设计具有这种性质的四位数没有分布规律,可以采用穷举法,对所有四位数进行判断,从而筛选出符合这种性质的四位数。具体算法实现,可任取一个四位数,将其截为两部分,前两位为a,后两位为b,然后套用公式计算并判断。
*程序说明与注释#include<stdio.h>int main(){int n,a,b;printf("There are following number with 4 digits satisfied ...
打印所有不超过n(取n<256) 的其平方具有对称性质的数(也称回文数)。
*问题分析与算法设计对于要判断的数n,计算出其平方后(存于a),将a的每一位进行分解,再按a的从低到高的顺序将其恢复成一个数k(如n=13,则a=169且k=961),若a等于k则可判定n为回亠数。
*程序说明与注释原程序好像有错,而且比较费解,现基于原程序修改如下(如果读者还发现错误请提出):
#include<stdio.h>int main(void){int m[16],n,i,t,count=0;long unsigned a,k;printf("No. number it's square(p...
自守数是指一个数的平方的尾数等于该数自身的自然数。例如:252=625 762=5776 93762=87909376请求出200000以内的自守数
*问题分析与算法设计若采用“求出一个数的平方后再截取最后相应位数”的方法显然是不可取的,因为计算机无法表示过大的整数。分析手工方式下整数平方(乘法)的计算过程,以376为例:376 被乘数X 376 乘数----------2256 第一个部分积=被乘数*乘数的倒数第一位2632 第二个部分积=被乘数*乘数的倒数第二位1128 第三个部分积=被乘数*乘数的倒数第三位----------141376 积本问题所关心的是积的最后三位。分析产生...
如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。
*问题分析与算法设计按照亲密数定义,要判断数a是否有亲密数,只要计算出a的全部因子的累加和为b,再计算b的全部因子的累加和为n,若n等于a则可判定a和b是亲密数。计算数a的各因子的算法:用a依次对i(i=1~a/2)进行模运算,若模运算结果等于0,则i为a的一个因子;否则i就不是a的因子。
*程序说明与注释#include<stdio.h>int main(){int a,i,b,n;printf("There are ...
如果一个数恰好等于它的因子之和,则称该数为“完全数”。
*问题分析与算法设计根据完全数的定义,先计算所选取的整数a(a的取值1~1000)的因子,将各因子累加于m,若m等于a,则可确认a为完全数。
*程序说明与注释#include<stdio.h>int main(){int a,i,m;printf("There are following perfect numbers smaller than 1000:\n");for(a=1;a<1000;a++) /*循环控制选取1~1000中的各数进行判断*/{for(m=0,i=1;i<=a/2;i++) /*计算a的因子,并将各因子...
如果一个正整数等于其各个数字的立方和,则称该数为阿姆斯特朗数(亦称为自恋性数)。如 407=43+03+73就是一个阿姆斯特朗数。试编程求1000以内的所有阿姆斯特朗数。
*问题分析与算法设计可采用穷举法,依次取1000以内的各数(设为i),将i的各位数字分解后,据阿姆斯特朗数的性质进行计算和判断。
*程序说明与注释#include<stdio.h>int main(){int i,t,k,a[3];printf("There are follwing Armstrong number smaller than 1000:\n");for(i=2;i<1000;i++) /*穷举要判...
乍一看这个标题,我想大家可能会大或不解,但我实在是想不到更好的标题了,聊天,传达一种了轻松,温馨的人文气息,人生则代表着严肃与深邃。这两方面反映的内涵都可以说是很多程序员的追求与现状,把这两者结合起来写程序人生,我想还是比较恰当的。最近看了不少各大网站的专家聊天实录--关于细节,关于成长,关于未来;作为一个程序员,同时结合自己的问题与对软件行业的关注,便生发了不少的感想.写感想,贵在有感而发,不敢有什么惊世之论,只希望与大家共勉.走好属于我们程序员的美好的程序人生。 初出茅庐--语言选择 我开始学.NET的时候,最烦恼的事情就是不知道选VB.NET好还是C#好.现在想起来,真是没...
我不知道自己是否作对了,在一个机械制造类大企业里从事程序开发工作已经快十年了,和我的一些大学同学比较,在事业上我很不成功,但要命的事我竟然不知道从哪里改进,以图缩小差距,更要命的是我在犹豫的过程中甚至认识不到我错在哪里,有时候竟然能够为自己找到一些自我安慰的冠冕堂皇的理由。这就是我现在的内心感受:矛盾,倾向于保守,但又有些不甘心。
我在大学里学的是机械专业,学习还比较优秀,同时,我对计算机也有兴趣。好在专业的学习与计算机学习并不矛盾,二者可以相互促进,当然我很少玩游戏,我的兴趣在编写程序上。毕业前我参加了程序员水平考,以126分(总分150)的成绩通过,这给了我很大的信心。毕业后到...
30岁,开始实现我的程序员梦,从一个编程爱好者,从一个业余的程序员,一个水平不高的程序员,一个半道出家的程序员......
我的经历到这里就告一段落了,五年里跳了五次槽,不知道和大家比算不算多J,没有什么太多起伏,但我想很多朋友可能会和我有类似的经历,不知道能不能引起你们的共鸣。我想对我上面所说的话给一个总结:
1.如果你觉得自己应该追求什么,不管遇到什么困难千万不要放弃,一定要坚持下去。
2.不要因为自己年轻就找理由挥霍时间,少玩一点SC、CS、魔兽3、传奇、魔力或者 …….,多看点书,多练练题。
3.如果你还是在校的学生,英语很差,专业课也很差。没关系,想怎么学计算机...
已知两个平方三位数abc和xyz,其中a、b、c、x、y、z未必是不同的;而ax、by、cz是三个平方二位数。请编程求三位数abc和xyz。
*问题分析与算法设计任取两个平方三位数n和n1,将n从高向低分解为a、b、c,将n1从高到低分解为x、y、z。判断ax、by、cz是否均为完全平方数。
*程序说明与注释#include<stdio.h>#include<math.h>void f(int n,float* s);int main(){int i,t;float a[3],b[3];print("The possible perfect squares combinations ...
一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称数是多少?
*问题分析与算法设计根据题意,设所求对称数为i,其初值为95589,对其依次递增取值,将i值的每一位分解后与其对称位置上的数进行比较,若每个对称位置上的数皆相等,则可判定i即为所求的对称数。
*程序说明与注释#include<stdio.h>int main(){int t,a[5]; /*数组a存放分解的数字位*/long int k,i;for(i=95860;;i++)...
设N是一个四位数,它的9倍恰好是其反序数,求N。反序数就是将整数的数字倒过来形成的整数。例如:1234的反序数是4321。
*问题分析与算法设计可设整数N的千、百、十、个位为i、j、k、l,其取值均为0~9,则满足关系式:(i*103+j*102+10*k+l)*9=(l*103+k*102+10*j+i)的i、j、k、l即构成N。
*程序说明与注释#include<stdio.h>int main(){int i;for(i=1002;i<1111;i++) /*穷举四位数可能的值*/if(i%10*1000+i/10%10*100+i/100%10*10+i/1000==i*9)...
这些日子我一直在写一个实时操作系统内核,已有小成了,等写完我会全部公开,希望能够为国内IT的发展尽自己一份微薄的力量。最近看到很多学生朋友和我当年一样没有方向 ,所以把我的经历写出来与大家共勉,希望能给刚如行的朋友们一点点帮助。 一转眼我在IT行业学习工作已经七年多了,这期间我做过网页,写过MIS、数据库,应用程序,做过通信软件、硬件驱动、协议栈,到现在做操作系统内核和IC相关开发,这中间走了很多弯路,也吃了不少苦。
我上的是一个三流的高校,就连同一个城市的人多数都不知道。因为学校不好也就没有指望能靠学校名气找一个好工作。所有的希望都寄托在自己的努力上了,大一开学前的假期我就开始了学习...