摘要:
自然语言解决问题:根据“勾股数”定义,所求三角形三边应满足条件 a+b=c2。可以在所求范围内利用穷举法找出满足条件的数 流程图:无 具体代码: #include <stdio.h>int main(){ int a,b,c; for(a=1;a<100;a++){ for(b=1;b<100;b+ 阅读全文
摘要:
自然语言解决问题: (1)将任一个三位数进行拆分。 (2)拆分后的数据重新组合,将可以组合的最大值减去最小值,差赋给变量 j。(3)将当前差值暂存到另一变量 h中: h=j。(4)对变量/执行拆分、重组、求差操作,差值仍然存储到变量j中。(5)判断当前差值是否与前一次的差 h 相等,若相等将差值输出 阅读全文
摘要:
自然语言解决问题:许多初学者看到本题最容易想到的方法就是:将 13 累乘 13 次后截取最后位即可。但是计算机中存储的整数有一定的范围,超出某范围将不能正确表示,所以用这种算法不可能得到正确的结果。实际上,题目仅要求后三位的值,完全没有必要把 13 的13 次方完全求出来 流程图: 具体代码: #i 阅读全文
摘要:
自然语言解决问题:“阿姆斯特朗数”与上例中的“水仙花数”的不同在于,前者并没有规定几位数,从两者的定义来看“水仙花数”可以看做是“阿姆斯特朗数”的一个子集。对于这类问题的算法与“水仙花数”类似,即需要把每一位分离出来,然后比较其立方和与原数是否相等 流程图: 具体代码: #include <stdi 阅读全文
摘要:
自然语言解决问题:根据“水仙花数”的定义,判断一个数是否为“水仙花数”,最重要的是要把给出的三位数的个位、十位、百位分别拆分,并求其立方和(设为 ),若 与给出的三位数相等三位数为“水仙花数”,反之,则不是 流程图: 具体代码: #include <stdio.h>int main(){ int i 阅读全文
摘要:
自然语言解决问题: 对于要判定的数 n,计算出其平方后(存于a),按照“回文数”的定义要将最高位与最低位、次高位与次低位······进行比较,若彼此相等则为回文数。此算法需要知道平方数的位数,再一一将每一位分解、比较,此方法对于位数已知且位数不是太多的数来说比较适用。此问题可借助数组来解决。将平方后 阅读全文
摘要:
自然语言解决问题:根据自守数的定义,求解本题的关键是知道当前所求自然数的位数,以及该数平方的尾数与被乘数、乘数之间的关系 流程图: 具体代码: #include<stdio.h>int main(){ long mul,number,k,a,b;printf("It exists following 阅读全文
摘要:
自然语言解决问题: 根据问题描述,该问题可以转化为:给定整数 A,判断A 是否有亲密数。为解决该问题,首先定义变量 a,并为其赋初值为某个整数。则按照亲密数定义,要判断a 中存放的整数是否有亲密数,只要计算出该整数的全部因子的累加和,并将该累加和存放到另一个变量b中,此时6 中存放的也是一个整数。再 阅读全文
摘要:
自然语言解决问题:根据完数的定义,解决本题的关键是计算出所选取的整数 (i的取值范围不固定)的因子(因子就是所有可以整除这个数的数 ,将各因子累加到量 (记录所有因子之和),若s 等于i,则可确认i为完数,反之则不是完数 流程图: 具体代码: #include <stdio.h>main(){ in 阅读全文