A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

函数的调用
        A:明确返回值类型的函数调用
        B:void类型的函数调用

import java.util.Scanner;                //导入 Scanner
class Demo_HomeWork {
        public static void main(String[] args) {
                //声明 Scanner 对象,作用是可以在键盘输入数据
                Scanner sc = new Scanner(System.in);
               
                //循环输入
                while (true) {
                        //提示用户输入数据
                        System.out.println("请输入数据...." +
                                "\n1.数据在[100,999)可以求水仙花数,奇数偶数和,以及个数"+
                                "\n2.数据在[0,100) 或者 [1000,无穷大),只有奇数偶数和及个数"+
                                 "\n3.输入 123456,则跳出循环");
                        //获得用户输入的数据
                        int x = sc.nextInt();
                        //判断用户输入的数据的范围
                        if (x == 123456) {
                                //提示跳出循环了
                                System.out.println("你好,你输入了特殊字符,现在跳出循环...");
                                break;
                        }else {
                                if (x < 0) {   //如果用户输入数据小于0.提示用户重新输入数据
                                        //提示用户数据输入错误
                                        System.out.println("数据输入错误,不能输入小于 0 的数!!");
                                        System.out.println("========================");
                                        continue;
                                }else {                        //对输入的数据不是小于 0 的各种处理
                                        if (x > 10000 || x < 100) { //对 x > 1000 和 x < 100 的处理
                                        //方法调用,求奇数,偶数和
                                        String str = qiuHe(x);
                                        //打印最后奇数偶数和
                                        System.out.println(str);
                                        System.out.println("========================");
                                        continue;
                                        }else {  //对 [100,999) 之间数据的处理
                                        //方法调用,求奇数,偶数和
                                        String str = qiuHe(x);
                                        //打印最后奇数偶数和
                                        System.out.println(str);
                                        System.out.println("========================");
                                        //求水仙花数
                                        SX(x);
                                        continue;
                                        }
                       
                                }
                        }
                       
                }
        }

        //求奇数和,求偶数和,奇数个数,偶数个数  有方法返回值的
        public static String qiuHe(int x) {
                //定义变量,分别表示偶数和,奇数和
                int js = 0;
                int os = 0;               
                int jc = 0;
                int oc = 0;
                for (int i = 1;i <= x ;i++ ) {
                        if (i % 2 == 0) {
                                os += i;
                                oc++;
                        }else {
                                js += i;
                                jc++;
                       
                        }
                }
                return "奇数和:" + js + ",奇数个数是:" + jc +
                        "\n偶数和:" + os + ",偶数个数是:" + oc;
        }

        //求水仙花数    没有返回值的方法void
        public static void SX(int x) {

                int count = 0;
                String s = "";
                for (int i = 100;i <= x ;i++ ) {
                        int ge = i % 10;
                        int shi = i / 10 % 10;
                        int bai = i / 100 % 10;
                       
                        if (ge * ge * ge + shi * shi * shi
                                + bai * bai * bai == i) {
                                count++;
                                System.out.println("该数是水仙花数 : " + i);
                                s = "水仙花数是:" + i + "\t";
                        }
                }
                s = s + "水仙花个数是:" + count;
                System.out.println(s);
                System.out.println("========================");
                return ;
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马