
致美C程序
文章平均质量分 72
double_main
代码如人生
展开
-
P数序列
定义十进制中没有重复数字的正整数为P数,指定p数按升序排列所得序列为指定P序列;试求指定m位P数的个数,并求出m位P序列的第n项;输入正整数m(2<=m<=10)和n(2<=n),输出m位P数的个数,同时输出m位P序列的第n项(若n大于m位P数的个数,则输出提示信息);1.枚举设计:(1)、枚举设计要点;通过循环求得m位最小与最小的P数a、b,设置递增循环枚举a~b中的所有整数x,以确保序列为升序排原创 2017-01-13 09:05:27 · 1040 阅读 · 0 评论 -
优美数式
本节探讨一类具有 趣味填数特性的数式——优美数式 ,之所以称为优美,是因为数式中各数字不重复出现;优美和式试把1,2,……,9这9个数字分别填入以下和式的9个口中,为体现优美,要求1~9这9个数字在式中出现一次且只出现一次,使得和式成立:口 口 口 + 口 口 口 = 口 口 口;约定以上和式左边的前3位数小于后3位数,且右边的和数相同的为同一和式,即要求所有和式的右边和不同;搜索并输出所有9数原创 2017-01-07 11:10:48 · 1228 阅读 · 0 评论 -
桥本分数式
日本数学家 桥本吉彦教授 于1993年10月在我国山东举行的中日美三国数学教育研讨会上向与会者提出以下填数趣题: 把1,2,……,9,这9个数字填入下式的9个方格中(数字不得重复),使下面的分数等式成立:口/口口 + 口/口口 = 口/口口桥本教授当即给出了一个解答,这一填数趣题的解是否唯一?如果不唯一究竟有多少个解?试求出所有解答(等式左边两边分数交换次序只算一个解答);9数字分数式1.说明:原创 2017-01-06 18:02:12 · 6380 阅读 · 0 评论 -
整数拆分
整数拆分是一种特殊的分解,要求把一个指定的整数(称为整数体或和数)分解为不重复的若干个整数(称为零数或部分)之和,不记零数的次序;整数拆分的对象与要求多种多样,拆分设计的难度取决于对零数的限制条件;本节具体探讨两种不同限制零数的拆分;零数为连续整数零数为连续正整数的整数拆分是最简单的一种拆分;试把一个正整数n拆分为若干个(不少于2个)连续正整数之和,例如,n=15,有3种拆分:15=1+2+3+4+原创 2016-12-29 12:20:33 · 3452 阅读 · 0 评论 -
埃及分数式
埃及分数简介金字塔的故乡埃及也是数学的发源地之一,古埃及数系中,记数常采用分子为1的分数,称为“埃及分数”;人们研究较多且颇感兴趣的问题是:把一个给定的整数或分数转化为若干个不相同的埃及分数之和,常约定分解式中不得包含与待分解分数同分母的埃及分数,当然,转化的方法可能有很多种,常把分解式中的埃及分数的个数最少或在个数相同时埃及分数中最大分母为最小的分解式称为最优分解式;把给定整数或分数分解为埃及原创 2017-01-06 09:20:51 · 2139 阅读 · 0 评论 -
奇数序列运算式
程序设计除了探索求解数之外,数式也是程序设计探求的重要方面;本节集中探讨各类有特殊意义的数式,即有整数式、分数式,也有综合运算式,新推有趣的“对称运算式”与“同基因数式”为创意点;试在由指定相连奇数组成的序列的每相邻两项中插入运算符号:若相邻两项都是合数,则两项中插入减号“-”;若相邻两项中一项为合数,另一项为素数,则两项中插入加好“+”;若相邻两项都是素数,则两项中插入乘号“*”;输入奇数原创 2017-01-05 18:24:14 · 1100 阅读 · 0 评论 -
抽牌概率
本节探讨两例:有趣的抽牌概率计算,其中单色的数字牌设计比较简单,而由多花色扑克组成的数字牌涉及编码的转换,其中设计较为复杂,也更具有吸引力;涉及到概率计算,必须统计事件的总体数与满足指定条件事件的个数,这是概率计算的基础;抽数字牌有n张数字牌,数字牌上分别标有整数1,2,3,……,n;在这n张数字牌中同时抽取3张,记3张牌上的整数之和为素数的概率为p(n);输入n(n>=10),计算并输出概率p(n原创 2017-01-05 16:50:48 · 2446 阅读 · 0 评论 -
积最大的整数分解
第18届国际数学奥林匹克竞赛第4题为:求和为1976的正整数之积的最大值?这一整数分解题要求分解整数的个数不限,各分解整数的大小也不限,正确结果是把1976分解为658个3与1个2,积P=2*3^658最大;如果保留分解个数不限,但要求各分解的整数互不相同,也是一个很有意思的整数分解案例,例如如何把2017分解为若干个互不相同的正整数之和,使这些互不相同的正整数之积最大;进行一般化处理,使把指定原创 2016-12-28 08:41:13 · 1420 阅读 · 0 评论 -
序号与代码
扩展Excel表列序号为1,2,……的列代码依次为A,B,C,……,Y,Z;AA,AB,……,AZ;BA,BB,……,AZ;BA,BB,……,BZ;……;ZA,ZB,……,ZZ;AAA,……;试进行列序号与列代码的相互转换;输入列序号(不超过15位整数)或列代码(不超过10个大写字母),输出对应的列代码或对应的列序号;例如,输入列序号28,输出对应的列代码AB;输入列代码BA,输出对应的列序号53;原创 2017-01-04 18:02:54 · 1361 阅读 · 0 评论 -
加密与解密
加密与解密是通信中最常用的数据转换手段,先了解加密与解密的基本过程;加密:应用加密算法与密钥对明文(尚未加密的原文)实施加密,转换成密文发送;解密:接收到密文后,应用相应算法与同一密钥对密文解密,转换为明文;加密与解密的双方根据事先的基本约定(包括加密算法)与所给密钥进行加密或解密,而第三方不知约定,即使知晓密文与密钥,也很难进行解密了解通信的内容;试设计简单的加密与解密程序,并进行运行演示;1.加原创 2017-01-04 14:36:23 · 3541 阅读 · 0 评论 -
因式分解
因式分解是基础的数学课题,当分解式中系数较大时,靠人工分解并非轻而易举,这就为应用程序设计实施因式分解留下空间;本节探讨最简单的二次三项式因式分解;已知二次三项式 a*x^2+b*x*y+c*y^2 中的系数a、b、c为整数,其中a为正整数,b、c为任意非零整数,试在整数范围内分解因式;若在整数范围内无法进行因式分解,应予以指出;1.说明:在整数范围内进行因式分解与整数的因数分解密切相关;(1)、判原创 2016-12-27 09:20:40 · 1173 阅读 · 0 评论 -
素数搜索
伽利略:“ 素数是上帝用来描写宇宙的文字 。”素数,又称为质数,是不能被1与其本身以外的其他整数整除的整数。如2、3、5、7、11、13、17是前几个素数,其中 2为唯一的偶素数;与此相对应,一个整数如果能被除1与其本身以外的整数整除,该整数称为合数或复合数。例如,15能被除1与15以外的整数3、5整除,15是一个合数;特别地,数 1既不是素数,也不是合数;作为一类特殊的整数,素数是数论中探讨最多原创 2016-12-19 21:40:34 · 510 阅读 · 0 评论 -
质因数分解
前序: 分解作为数据处理的常用手段,集中体现智能思考与技巧运用,是培养与检验程序设计技能的重要方面;整数分解质因数 是整数分解中最简单也是最基本的分解案例;本节是按质因数的乘积形式与指数形式分别设计求解;分解为质因数乘积形式对给定区间[m,n]的正整数分解质因数,每一整数分解表示为质因数从小到大顺序的乘积形式,如果被分解的整数本身是素数,则注明为素数;例如,2016=2*2*2*2*2*3*3*7原创 2016-12-26 20:34:37 · 4555 阅读 · 0 评论 -
金额大写
在通常的金融交易中,为了稳妥与慎重,常常需要把一笔阿拉伯数字书写的金额转换成汉字大写金额;例如,把160390.50转换成大写汉字串: 壹拾陆万零叁佰玖拾元伍角整;试把从键盘输入的阿拉伯数字金额(整数部分最多为15位,可带2位小数)转换为符合大写转换习惯的汉字大写金额;1.说明:注意到转换金额整数部分最多可为15位(达百万亿),如果带小数,将达到18位,为此程序采用字符串形式输入,用变量n统计字符串原创 2017-01-04 09:26:27 · 1888 阅读 · 0 评论 -
合数世纪
定义一个世纪的100个年号中不存在一个素数,即100个年号全为合数的世纪成为合数世纪;试探究第n个合数世纪;1.说明:应用枚举搜索,设置a世纪的50个奇数年号(偶数年号无疑均为合数)为b,用k试商判别b是否为素数,用变量s统计这50个奇数中的合数的个数;对于a世纪,若s=50,即50个奇数都为合数,找到a世纪为最早的合数世纪,打印输出后退出循环结束;2.程序设计:#include<stdio.h>原创 2016-12-25 18:22:14 · 4213 阅读 · 1 评论 -
梅森尼数
形如 2^n-1 的素数称为 梅森尼数(Mersenne Prime)例如 2²-1=3 , 2³-1=7 都是梅森尼数;1722年,双目失明的瑞士数学大师欧拉证明了 2^31-1=2147483647 是一个素数,堪称当时世界上“已知最大素数”的一个记录;试求出指数n<50的所有梅森尼数;1.说明:设置指数n循环,输入循环上限指数n(n>2),循环体中通过累乘t=t*2得t=2^n;根据梅森尼原创 2016-12-20 10:58:53 · 7742 阅读 · 3 评论 -
整币兑零
整币兑零是一个特殊的分解统计案例,其不同的的兑换种类与零币的种类及各零币的具体数值密切相关;本节探讨特定的6种零币与一般从键盘输入的m种零币的两类兑零统计;特定整币兑零把一张1元整币兑换成1分,2分,5分,1角,2角和5角共6种零币,共有多少种不同兑换种数?一般地,把一张二元整币,5元整币或一张n元整币兑换成1分,2分,5分,1角,2角和5角共6种零币,共有多少种不同兑换种数?1.说明:一般地设整币原创 2016-12-30 17:41:22 · 2063 阅读 · 0 评论 -
对称运算式
对称运算式构造简洁优美,内涵丰富,赏心悦目;本节探讨m+n位对称单运算式与m+n+r位对称双运算式,前者只含积或和运算,后者包含双和、双积与和积两种运算,两类数式都体现出整体对称美;对称单运算式下面在探讨十进制对称单运算式的基础上推广至一般p进制对称单运算式;定义:把以下含乘积或求和运算的十进制等式;a*b=b1*a1a+b=b1+a1称为对称单运算式,前式为对称积式,后式为对称和式,其中a是原创 2017-01-08 19:50:57 · 1047 阅读 · 0 评论 -
指数序列
指数序列包括双指数与多指数,还可以引申出“指数积”,内容非常丰富;本节探讨双指数序列并引申至3指数序列,同时探讨应用多种思路与算法求解双指数序列;2-3指数序列设x,y为非负整数,试计算集合:M={ 2^x,3^y | x>=0,y>=0 }的元素由小到大排列的双指数序列第n项与前n项之和;1.递推设计要点:集合由2的指数与3的指数组成,实际上是给出两个递推关系,集合元素所构成的序列为2指数序列;设原创 2017-01-12 22:41:03 · 5152 阅读 · 0 评论 -
等差素数列
小于10的素数中有3、5、7组成等差数列,在30以内的素数中,有5、11、17、23、29组成等差数列;在指定区间[x,y]如果存在成等差数列的n(n>=3)个素数,试求n的最大值,并输出一个最多项数的等差素数列;1.设计要点:(1)、标注素数;通过m循环枚举指定区间[x,y]内的奇数,应用试商法探求素数,设置a数组并通过a[m]=1标注奇数m为素数;(2)、扫描等差数列;设置d循环(2~(y-x)原创 2017-01-12 13:00:36 · 1676 阅读 · 0 评论 -
相亲数环
* 整合重组 与 分解转化 是数据处理相辅相成的手段与技巧 *;整数通过巧妙整合重组为若干有特殊意义的数或数组,是培养与检验程序设计技能的重要方面;数学大师毕达哥拉斯早年发现,220与284两数之间存在这奇妙的联系:220的真因数之和为:1+2+4+5+10+11+20+22+44+55+110=284;284的真因数之和为:1+2+4+71+142=220;毕达哥拉斯把这样的数对a,b称原创 2017-01-01 09:50:39 · 1420 阅读 · 0 评论 -
泊松分酒
泊松分酒是一个著名的智力测试题,也是一个有难度的过程模拟经典案例;1.案例提出:法国数学家泊松(Poisson)曾提出以下分酒趣题:某人有一瓶12品脱(容量单位)的酒,同时有容积为5品脱与8品脱的空杯各一个,借助这两个空杯,如何将这瓶12品脱的酒平分?我们要解决一般的平分酒案例:借助容量分别为bv与cv(单位为整数)的两个空杯,用最少的分倒次数把总容量为偶数a的酒平分,这里正整数bv、cv与偶原创 2017-01-01 07:28:05 · 2765 阅读 · 3 评论 -
双关系递推数列
集合M定义如下:(1)1∈M;(2)x∈M→2x+1∈M,3x+1∈M;(3)再无别的数属于M;试求集合M的元素从小到大排序的第n个元素;1.枚举设计求解:该题有2x+1和3x+1 两个递推关系,加大了程序设计难度;(1)设计要点;设置变量i:i从2开始递增1取值,若i可有已有的项m(j)用两个递推关系之一堆得,即满足条件i=2*m(j)+1或i=3*m(j)+1,说明i是m数列中的一项,赋值给m(原创 2017-01-11 08:24:13 · 5994 阅读 · 0 评论 -
古代趣算
我国古代数学家研究了很多涉及社会生活各个方面的有趣的计算问题,其求解通常归结为解不定方程或多元方程组;百鸡问题公元前五世纪,我国古代数学家 张邱健 在《张邱健算经》一书中记有一个有趣的数学问题:今有鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,用百钱买鸡百只,问鸡翁、母、雏各几何?这就是数学史上著名的“百鸡问题”;宋代杨辉的算数中有类似的问题,中古时其他各国也有相仿问题流传,例如印度算书和阿拉伯学者 艾原创 2017-01-15 18:33:38 · 1444 阅读 · 0 评论 -
裴波那契数列与应用
13世纪初,意大利数学家 裴波那契(Fibonacci) 在所著的《算盘书》中提出“兔子生崽”的趣题:假设兔子出生后两个月就能生小兔,且每月一次,每次不多不少恰好一对(一雌一雄),若开始时有初生的小兔一对,问一年后共有多少对兔子?裴波那契数列是由这一“兔子生崽”问题引出的一个著名的递推数列,裴波那契数列的应用相当广泛,国际上已有许多关于裴波那契数列的专著与学术期刊,我国 周持中教授 所著的 《裴原创 2017-01-10 16:11:15 · 4053 阅读 · 0 评论 -
真分数序列
试统计分母在指定区间[a,b]的最简真分数(分子小与分母,且分子分母无公因数)共有多少个,并求这些最简真分数升序序列的第k项;1.设计要点:(1)、设置数组c(k)、d(k)分别存储第k个最简真分数的分子与分母;(2)、设置枚举循环;设置j(a~b)循环,枚举指定范围[a,b]内分数i/j的分母;设置i(1~j-1)循环,枚举对每一个分母j的分数的分子;(3)、忽略非最简i/j;若分子i与分母j存在原创 2017-01-10 11:51:12 · 1632 阅读 · 0 评论 -
猴子爬山
一个顽猴在一座有40级台阶的山上爬山跳跃,猴子上山一步可跳1级或跳3级,试求顽猴上山的40级台阶有多少种不同的跳法;1.递推设计:这一问题实际上是一个整数有序可重复拆分问题;试设置数组应用递推求解,设上k级台阶的不同跳法为f(k)种;(1)、探求f(k)的递推关系;上山最后一步到达第40级台阶,完成上山,共有f(40)种不同的爬法,到第40级之前位于哪一级呢?无非是位于第39级(上跳1级即到),有f原创 2017-01-10 10:03:18 · 9322 阅读 · 3 评论 -
韩信点兵
在中国数学史上流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越功劳,据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少个兵,同时又能保住军事机密,便让士兵排队报数:按从1至5报数,记下最末一个士兵报的数为1;再按从1至6报数,记下最末一个士兵报的数为5;再按1至7报数,记下最末一个报的数为4;最后按1至11报数,最末一个士兵报的数为1原创 2017-01-14 10:44:11 · 5834 阅读 · 0 评论 -
双码二部数序列
双码二部数定义:由两个不同数码组成,每个数码多于1位时相连而不分开的正整数称为双码二部数,其中处于高位相连数字称为高部,处于低位相连数字称为低部;例如330是一个3位双码二部数:高部数字为3,高部位数为2;低部数字为0,底部位数为1,而333只有一个数码,4407有三个数码,4474的数码4呈分开状态,都不是双码二部数;试统计n位双码二部数的个数,并求出n位双码二部数从小到大排序序列的第m项;输入正原创 2017-01-14 10:06:12 · 1343 阅读 · 0 评论 -
同基因积式
在以上构建同基因和式的基础上本节更进一步,探讨涉及同基因数乘积的两类数式:同基因倍积式与同基因乘积式;同基因倍积式定义n位同基因倍积式:若n位整数u的k(2<=k)倍s=u*k与u同基因,则称u*k=s为一个n位同基因倍积式;例如,1359*7=9513是一个4位同基因倍积式,10449*9=94041是一个5位同基因倍积式;同时为了避免出现类似13590*7=95130的衍生现象,要求同基因倍积式原创 2017-01-09 21:40:21 · 369 阅读 · 0 评论 -
同基因和式
同基因数是由同一批数字通过不同排列所得的位数相同的整数,因此同基因数又称为排列数;例如,由1、0、2、2这4个数字通过不同排列组成的4位整数1022、1202、1220、2012、2021、2102、2120、2201、2210是同基因数,而0122实际上只是一个3位数,并不含“0”,与上述诸数不同基因;本节探索一类涉及同基因数的新颖数式——同基因和式;由十进制同基因整数u、v、s组成的和式u+v=原创 2017-01-09 10:10:37 · 422 阅读 · 0 评论 -
拔河分组
有12个同学要分成两个组进行拔河比赛,为使比赛公平,分组时要求每组6个同学,且两组的体重之和相等;已知这12个同学的体重分别为:38、39、47、35、46、58、51、42、36、40、59、39;根据他们的体重(为方便计算以全部转化为整数,单位为kg)实施分组,若无法实现数据个数与数据和均相等的分组,标注为“无法均分”;基本方法- -双均分法1.说明:我们把“要求每组数据个数相等数据和也相等”的原创 2016-12-31 14:02:04 · 7123 阅读 · 3 评论 -
连续合数探求
本节探讨连续合数问题,实际上还是与素数密切相关;最多连续合数区间中不能存在素数,最小连续n个合数中也不能存在素数;最多连续合数区间试在指定区间 [c,d] 内探求最多连续合数的个数及最多连续合数的起始与终止数;例如输入c,d:10,100,在区间[10,100]内最多连续合数的个数为7个,所求得的连续合数区间为:[90,96];下面应用试商法与筛法两种设计分别求解;应用试商设计:1.说明:对指定区间原创 2016-12-25 14:02:12 · 3466 阅读 · 0 评论 -
素数对
本节探讨由两个满足某些特定条件的素数组成的素数对,包括经典的 孪生素数对 与 逆序素数对 ;孪生素数对相差为2的两个素数称为孪生素数对,简称孪生素数;例如,3和5是一对孪生素数,41和43也是一对孪生素数;试求出指定区间上的所有孪生素数对;方案一 之 常规求解:1.说明:设置两个变量:当前素数变量i与相邻的前一个素数变量f,在求出当前素数i后,求i与它相邻的前一个素数f的差,如果i-f=2,则f和i原创 2016-12-24 22:05:35 · 2627 阅读 · 0 评论 -
分级计算之个人所得税
计算个人所得税是工资处理的一个重要环节,也是分级计算的典型案例。1.说明: (1).七级超额累进税率; 本站根据最新颁布的个人所得税税法,整理出2016年最新版个人所得税税率表,工资薪金所得采用3500元的起征点,专业精心设计税率表,直观明了方便参照,是财会以及办税人员必备资料,同时对非相关专业的普通读者也有很大的帮助。工资、薪金所得,适用七级超额累进税率,税率为百分之三(3%)至百分之四十五(原创 2016-12-01 02:15:36 · 3279 阅读 · 0 评论 -
分级计算之阶梯电价
为了节约能源与资源,很多地方已对水,电,气等消费资源实施阶梯价格收费,消费越多收费越贵。1.说明: 例如,A市实施如下的阶梯电价,将居民每月用电量划分为3档: 第1档:电量为240度及以下,电价标准为0.49元/度; 第2档:电量为240~400度之间,电价标准提高至0.54元/度; 第3档:电量为超过400度,电价标准提高至0.79元/度。 试根据每月输入的用电量按以上阶梯电价计算收费。原创 2016-12-01 00:45:29 · 7460 阅读 · 0 评论 -
地图扫描
扫描统计 是程序设计拓展求和的一个基本课题。 有一条封闭曲线划定的地图,界定曲线上的点用“1”表示,曲线内外的点用“0”表示(具体数据由内外的的文件提供)。 试实施图形点扫描,统计地图的面积(即“封闭”曲线内的“0”点数)。1.说明:要统计用“1”标识的封闭曲线内“0”点的点数,关键在于识别哪些“0”点在封闭曲线内,哪些“0”在封闭曲线外。试对封闭曲线外的“0”点实施“扩散传染”处理,例如处理成原创 2016-12-10 09:37:38 · 563 阅读 · 0 评论 -
大奖赛现场统分
问题提出:某大奖赛有n个选手参赛,m(m>2)个评委为依次参赛的选手评判打分:最高10分,最低0分。同分规则:每个选手所得的m个得分中,去掉一个最高分,去掉一个最低分,然后平均为该选手的最后得分。 根据n个选手的最后得分从高到低排出名次表,以便确定获奖名单。 最后,根据各选手的最后得分与各评委给该选手所评分的差距给各个评委的评分准确性一个定量的评价。1.说明:(1)、数据结构;根据需要设置6个数原创 2016-12-08 02:13:02 · 6525 阅读 · 4 评论 -
巧妙平方数
称 不含重复数字的完全平方数 为巧妙平方数。试在 1,2,…,9 这9个数字中选出m个,组成巧妙平方数。1.说明: 计算最小的m位数10^(m-1)开平方取整数t1,最大的m位数(10^m)-1开平方取整数t2,以t1+1和t2作为循环的初值与终值设置y循环; 检验m位平方数 f=y*y,经m次求余分离 f 的每一位数字k,若k=0,即 f 含数字0,返回;设置b数组,应用b(k)统计数字k的个原创 2016-12-12 10:03:32 · 693 阅读 · 0 评论 -
解不等式之代数和不等式
代数和概念:数学用语。将数(实数)的加减法算式视为省略加号的几个有理数的和,称这个算式的结果为这几个有理数的代数和。试解下列关于正整数n的代数和不等式: d < 1+1/2-1/3+1/4+1/5-1/6+···±1/n 其中d为从键盘输入的正数,式中代数和表达式中的符号为两个“+”号后一个“-”。1.说明: 式中符号为两个“+”号后一个“-”号,即分母能被3整出时为“-”。2.程序设计:方案原创 2016-12-02 01:20:25 · 762 阅读 · 0 评论