Java05方法练习

在这里插入图片描述

import java.util.Scanner;
public class Class25 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        long num=input.nextLong();
        System.out.println(sumDigits(num)); //调用方法 打印结果
    }
    public static int sumDigits(long n){ //定义sumDigits方法 计算数字之和
        int sum=0;
        while(true){
            sum+=n%10;
            n/=10;
            if(n==0){ 
                break;
            }
        }
        return sum;
    }

在这里插入图片描述

import java.util.Scanner;
public class class26 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        int number=input.nextInt();
        if(isPalindrome(number)){ //调用是回文方法
            System.out.println("是回文!");
        }else{
            System.out.println("不是回文");
        }
        return;
    }
    //反转一个数字
    public static int reverse(int number){
        int revNumber=0;
        while(true){
            revNumber=revNumber*10+number%10; //计算出反转后的数字
            number/=10;
            if(number==0){
                break;
            }
        }
        return revNumber;
    }
    //判断数字是否为回文
    public static boolean isPalindrome(int number){
        //先将数字反转
        int revNumber=reverse(number);
        //对比反转后的数字和当前数字是否一致
        if(revNumber==number){
            return true;
        }else{
            return false;
        }
    }

在这里插入图片描述

import java.util.Scanner;
public class Class28 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个数:");
        double n = input.nextDouble(); //接收用户输入的数字
        System.out.println(sqrt(n));
    }
    public static double sqrt(double n){ //定义sqrt方法计算平方根
        double nextGuess;
        double lastGuess=1; //lastGuess初始值为1
        while(true){
           nextGuess=(lastGuess+n/lastGuess)/2; //计算平方根
            if(nextGuess-lastGuess>=0.0001||nextGuess-lastGuess<=-0.0001){ 
                lastGuess=nextGuess;
            }else {
                break;
            }
        }
        return nextGuess; //将最终的值返回 便是要求的数字的平方根
    }

编写程序,判断一个数字是否是回文素数,即是回文数字也是素数。

import java.util.Scanner;
public class Home26 {
    public static void main(String[] args) {
        //1.提示用户输入一个数字
        int number = initData();
        //2.判断是否是回文素数
        if(isHuiwenSushu(number)){ //调用回文素数方法
            System.out.println("是");
        }else{
            System.out.println("不是");
        }
    }
    public static int initData(){ //提示用户输入的方法
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入一个整数:");
        return scanner.nextInt();//直接将输入的整数返回 不用先定义变量接收输入的值 再返回
    }
    public static boolean isHuiwenSushu(int number){ //定义回文数方法
        //3.判断是否素数且回文
        return isHuiwen(number)&&isSushu(number);
    }
    public static boolean isHuiwen(int number){ //判断回文方法
        //4.计算反转数字
        int revNum=reverse(number);
        return revNum==number;//对比是不是回文数字
    }
    public static int reverse(int number){ //计算反转数字方法
        //4.1 进行反转
        int revNumber=0;
        while(number!=0){
            revNumber=revNumber*10+number%10;
            number/=10;
        }
        return revNumber;
    }
    public static boolean isSushu(int number){  //判断素数方法
        //5.判断是不是素数
        boolean flag=true;//默认是素数
        for(int i=2;i<=number/2;i++){ 
            if (number%i==0){
                flag=false;
                break;
            }
        }
        return flag;
    }
发布了29 篇原创文章 · 获赞 6 · 访问量 1170

猜你喜欢

转载自blog.csdn.net/weixin_43472705/article/details/97135590