Java学习五

今天做了两个练习题目:1、根据学生所得分数来给出学生分数等级;2、求取最大公约数和最小公倍数

 1 import java.util.Scanner;
 2 
 3 public class Lianxi03 {
 4     public static void main(String[] args) {
 5         Scanner sc=new Scanner(System.in);
 6         System.out.print("请输入学生分数:");
 7         int number=sc.nextInt();
 8         if(number>=90) {
 9             System.out.println("学生分数为A");
10         }else if(number>=60&&number<=89) {
11             System.out.println("学生分数为B");
12         }else if(number<60) {
13             System.out.println("学生分数为C");
14         }
15     }
16 }

这个程序我使用的是if语句来区别等级,当然也可以使用多元运算符(char grade=num>=90?'A':num>=60?'B':'C')。

 1 import java.util.Scanner;
 2 
 3 public class Lianxi04 {
 4     public static void main(String[] args) {
 5         Scanner sc=new Scanner(System.in);
 6         System.out.print("请输入第一个数:");
 7         int num1=sc.nextInt();
 8         System.out.print("请输入第二个数:");
 9         int num2=sc.nextInt();
10         int m=deff(num1,num2);
11         int n=num1*num2/m;//最小公倍数
12         System.out.println("最大公约数:"+m);
13         System.out.println("最小公倍数:"+n);
14     }
15     
16     //求公约数
17     public static int deff(int x,int y) {
18         int temp;
19         if(x<y) {
20             temp=x;
21             x=y;
22             y=temp;
23         }
24         while(y!=0) {
25             if(x==y) return x;
26             else {
27                 int k=x%y;
28                 x=y;
29                 y=k;
30             }
31         }
32         return x;
33     }
34 }

这个程序稍微复杂一些,他需要使用一个方法来求取两个数的最大公约数,最小公倍数是两数之积除最大公约数。

如果有写的不好的地方,多谢各位大佬指点。

 

posted on 2021-09-21 22:52  跨越&尘世  阅读(20)  评论(0编辑  收藏  举报