@H_502_2@【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3。编程找出1000以内的所有完数
@H_502_2@//第一种
@H_502_2@public class A09 {
@H_502_2@public static void main(String[] args) {
@H_502_2@int s;
@H_502_2@for (int i = 1; i <= 1000; i++) {
@H_502_2@s = 0;
@H_502_2@for (int j = 1; j < i; j++)
@H_502_2@if (i % j == 0)
@H_502_2@s = s + j;
@H_502_2@if (s == i)
@H_502_2@System.out.print(i + " " );
@H_502_2@}
@H_502_2@System.out.println();
@H_502_2@}
@H_502_2@}
@H_502_2@//第二种:
@H_502_2@public class A08{
@H_502_2@public static void main(String[] args) {
@H_502_2@int i,j,sum;
@H_502_2@for(i=1;i<1000;i++)
@H_502_2@{
@H_502_2@sum = 0;
@H_502_2@for(j=1;j<=i/2;j++)
@H_502_2@{
@H_502_2@if(i%j==0)
@H_502_2@{
@H_502_2@sum+=j;
@H_502_2@}
@H_502_2@}
@H_502_2@if(sum==i)
@H_502_2@{
@H_502_2@System.out.print(i+" its factors are: ");
@H_502_2@for(j=1;j<=i/2;j++)
@H_502_2@{
@H_502_2@if(i%j==0)
@H_502_2@System.out.print(j+",");
@H_502_2@}
@H_502_2@System.out.println();
@H_502_2@}
@H_502_2@}
@H_502_2@}
@H_502_2@}
@H_502_2@【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,
@H_502_2@共经过多少米?第10次反弹多高?
@H_502_2@public class A10 {
@H_502_2@public static void main(String[] args) {
@H_502_2@double s = 0;
@H_502_2@double h = 100;
@H_502_2@for (int i = 1; i <= 10; i++) {
@H_502_2@s += h*1.5;
@H_502_2@h = h/2;
@H_502_2@}
@H_502_2@System.out.println("经过路程:"+s);
@H_502_2@System.out.println("反弹高度:"+h);
@H_502_2@}
@H_502_2@}
@H_502_2@【程序11】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
@H_502_2@public class A11 {
@H_502_2@public static void main(String[] args) {
@H_502_2@int count = 0;
@H_502_2@for (int i = 1; i <= 4; i++)
@H_502_2@for (int j = 1; j <= 4; j++)
@H_502_2@for (int k = 1; k <= 4; k++)
@H_502_2@if (i != j && j != k && i != k) {
@H_502_2@count += 1;
@H_502_2@System.out.println(i*100 + j*10 + k);
@H_502_2@}
@H_502_2@System.out.println("共" + count + "个三位数");
@H_502_2@}
@H_502_2@}
@H_502_2@public class A12{
@H_502_2@public static void main(String[] args) {
@H_502_2@for (int i = 1; i <= 9; i++) {
@H_502_2@for (int j = 1; j <= i; j++)
@H_502_2@System.out.print(i + "*" + j + "=" + (i*j) + "\t");
@H_502_2@System.out.println();
@H_502_2@}
@H_502_2@}
}
@H_502_2@【程序13】 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,
@H_502_2@又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩
@H_502_2@下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?
@H_502_2@public class A13{
@H_502_2@public static void main(String[] args) {
@H_502_2@int sum = 1;
@H_502_2@for (int i = 0; i < 9; i++) {
@H_502_2@sum = (sum + 1) * 2;
@H_502_2@}
@H_502_2@System.out.println("第一天共摘"+sum);
@H_502_2@}
@H_502_2@}
@H_502_2@【程序14】 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和
@H_502_2@public class A14 {
@H_502_2@public static void main(String[] args) {
@H_502_2@float a = 1.0f;
@H_502_2@float b = 1.0f;
@H_502_2@float temp;
@H_502_2@float sum = 0f;
@H_502_2@for (int i = 0; i < 20; i++) {
@H_502_2@temp = a;
@H_502_2@a = b;
@H_502_2@b = b + temp;
@H_502_2@System.out.println((int) b + "/" + (int) a);
@H_502_2@sum += b / a;
@H_502_2@}
@H_502_2@System.out.println("前二十项和为"+sum);
@H_502_2@}
@H_502_2@}