zoukankan      html  css  js  c++  java
  • Java 算法(二)

    【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3。编程找出1000以内的所有完数

    //第一种
    public class A09 {
    public static void main(String[] args) {
    int s;
    for (int i = 1; i <= 1000; i++) {
    s = 0;
    for (int j = 1; j < i; j++)
    if (i % j == 0)
    s = s + j;
    if (s == i)
    System.out.print(i + " " );
    }
    System.out.println();
    }

    }

    //第二种:
    public class A08{
    public static void main(String[] args) {
    int i,j,sum;
    for(i=1;i<1000;i++)
    {
    sum = 0;
    for(j=1;j<=i/2;j++)
    {
    if(i%j==0)
    {
    sum+=j;
    }
    }
    if(sum==i)
    {
    System.out.print(i+" its factors are: ");
    for(j=1;j<=i/2;j++)
    {
    if(i%j==0)
    System.out.print(j+", ");
    }
    System.out.println();
    }
    }
    }
    }

    【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,

    共经过多少米?第10次反弹多高?

    public class A10 {
    public static void main(String[] args) {
    double s = 0;
    double h = 100;
    for (int i = 1; i <= 10; i++) {
    s += h*1.5;
    h = h/2;
    }
    System.out.println("经过路程:"+s);
    System.out.println("反弹高度:"+h);
    }
    }

    【程序11】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

    public class A11 {

    public static void main(String[] args) {
    int count = 0;
    for (int i = 1; i <= 4; i++)
    for (int j = 1; j <= 4; j++)
    for (int k = 1; k <= 4; k++)
    if (i != j && j != k && i != k) {
    count += 1;
    System.out.println(i*100 + j*10 + k);
    }
    System.out.println("共" + count + "个三位数");
    }
    }

    【程序12】 题目:输出9*9口诀乘法表

    public class A12{
    public static void main(String[] args) {
    for (int i = 1; i <= 9; i++) {
    for (int j = 1; j <= i; j++)
    System.out.print(i + "*" + j + "=" + (i*j) + " ");
    System.out.println();
    }
    }
    }

    【程序13】 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,

    又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩

    下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?

    public class A13{
    public static void main(String[] args) {
    int sum = 1;
    for (int i = 0; i < 9; i++) {
    sum = (sum + 1) * 2;
    }
    System.out.println("第一天共摘"+sum);
    }
    }

    【程序14】 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和

    public class A14 {
    public static void main(String[] args) {
    float a = 1.0f;
    float b = 1.0f;
    float temp;
    float sum = 0f;
    for (int i = 0; i < 20; i++) {
    temp = a;
    a = b;
    b = b + temp;
    System.out.println((int) b + "/" + (int) a);
    sum += b / a;
    }
    System.out.println("前二十项和为"+sum);
    }
    }

  • 相关阅读:
    迅为IMX6ULL开发板-Linux MISC驱动-编写实验程序
    迅为龙芯2K1000开发板快速体验
    迅为3399开发板Android系统-使用strace跟踪系统调用
    迅为imx6ull开发板使用c语言调用shell命令控制led灯
    迅为与龙芯强强联合匠心之作 iTOP-2K1000开发板正式发布
    迅为iTOP3399开发板QT系统PCIE 4G移植-测试程序
    迅为IMX8MM开发板Android编译环境搭建
    bzero和memset函数
    [linux 2021-10-14] linux中启动jar的shell脚本
    重写与重载的区别
  • 原文地址:https://www.cnblogs.com/Tom-shushu/p/9029786.html
Copyright © 2011-2022 走看看