第三週授業のまとめと実験報告(一)

4403 ワード

Java実験報告(一)
クラス18計科の一クラスの学名は2088400名前の顔晴です。
一、実験の目的
  • (1)JDK開発環境に詳しい
  • (2)構造化プログラムの設計方法を熟練に把握する。
    二、実験内容
    1.プリント出力のすべての「水仙数」、いわゆる「水仙数」は3桁の数字を指しています。そのうち、各数字の立方はこの数自体に等しいです。例えば、153は「水仙数」です。
    実験ソース:
    package com.company;
    
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            System.out.println("Please enter a three-digit number.");
            System.out.print(">: ");
    
            String name = in.nextLine();
    
            if (Integer.parseInt(name) == Math.pow(Integer.parseInt(name.substring(0, 1)), 3) + Math.pow(Integer.parseInt(name.substring(1, 2)), 3) + Math.pow(Integer.parseInt(name.substring(2, 3)), 3))
                System.out.println(".");
    
            /*     Java*/
            /*IntStream.range(100, 1000).filter(i -> Arrays.stream((i + "").split("")).mapToDouble(j -> Math.pow(Integer.parseInt(j), 3)).sum() == i).forEach(System.out::println);*/
        }
    }
    実験結果:
    153
    370
    371
    407
    2.Javaプログラムを作成して、13-23+33-43+…+973-983+993-003の値を求めます。
    実験ソース:
    package com.company;
    
    public class Main {
        public static void main(String[] args) {
            int sum = 0;
            for(int i = 1; i <= 100; i++)
            {
                String single = String.valueOf(i) + "3";
                sum += Integer.parseInt(single)*Math.pow(-1,i + 1);
            }
            System.out.println(sum);
        }
    }
    
    実験結果:
    -500
    3.プログラミングは1を求めます。+2!+3!+++20です
    実験ソース:
    package com.company;
    
    public class Main {
        public static void main(String[] args) {
            long sum = 0;
            for(int i = 1; i <= 20; i++)
            {
                sum += factorial((long) i);
            }
            System.out.println(sum);
        }
    
        public static long factorial(long number) {
            if (number <= 1)
                return 1;
            else
                return number * factorial(number - 1);
        }
    }
    
    実験結果:
    268040729
    4.Javaプログラムを作成し、8+88+888+...の10項目の合計を計算します。
    実験ソース:
    package com.company;
    
    public class Main {
        public static void main(String[] args) {
            long sum = 0;
            String single = "";
            for(int i = 0; i < 10; i++)
            {
                single += "8";
                sum = sum + Long.parseLong(single);
            }
            System.out.println(sum);
        }
    }
    実験結果:
    9876543200
    5.一つの数がちょうどその因子の和に等しい場合、この数は整数と呼ばれます。プログラム出力1000以内の全整数を作成します。
    実験ソース:
    package com.company;
    
    public class Main {
        public static void main(String args[]) {
            int sum = 0;
            int i = 2,j = 1;
            for(i = 2; i <= 1000; i++)
            {
                for(j = 1; j < i; j++)
                    if(i % j == 0)
                        sum += j;
                if(sum == i)
                    System.out.println(" " + sum);
                sum = 0;
            }
        }
    }
    
    実験結果:
    6
    24
    28
    496
    6.アプリケーションを作成し、1+2+3++n<8888の最大正の整数を出力します。
    実験ソース:
    package New.Learn;
    import java.util.*;
    
    public class Main
    {
        public static void main(String[] args)
        {
            int x=1, sum=0;
    
            while (true)
            {
               if(sum + x<8888)
               {
                   sum += x++;
               }
    
               else
               {
                   break;
               }
    
            }
    
            System.out.println(sum);
        }
    
    }
    
    
    実験結果:
    132
    7.次の図をforループで印刷します。
         *
       *  *
     *  *  *
    実験ソース:
    package New.Learn;
    import java.util.*;
    
    public class Main
    {
        public static void main(String[] args)
        {
            int level = 5;
    
            for (int i=1; i<=level; i++)
            {
                for (int k=0; k
    実験結果:
             *
            * *
           * * *
          * * * *
         * * * * *
    内容のまとめ
    パッケージ性:
    1.パッケージ性とは、クラス内部の定義が外部に見られないことを保証することである。すべての属性はprvateパッケージを使用しなければならず、パッケージ後の属性は外部に訪問される場合、対応するsetterとgetter方法を定義する。
    構造方法:
    1.構造方法はクラスの特殊な方法で、クラスの新しいオブジェクトを初期化します。2.構造方法の名称はクラス名と一致します。3.構造方法では、リセットを使って値を返してはいけません。4.構造方法は積載可能です。一つのクラスの中に少なくとも一つの構造方法があります。
    匿名のオブジェクト:
    名前を明示する対象がない。一般的に匿名のオブジェクトは一回だけ使用して、スタックメモリの参照は存在しません。
    JAVA学習の道:回り道をしないことが近道です。