输入两个正整数m和n,求其最大公约数和最小公倍数(运用循环语句)

输入两个正整数m和n,求其最大公约数和最小公倍数

import java.util.Scanner;

public class Homeworks4{
	public static void main (String [ ] args){
		
		//输入两个正整数m和n,求其最大公约数和最小公倍数
		
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入正整数m:");
		int m = sc.nextInt();
		System.out.print("请输入正整数n:");
		int n = sc.nextInt();
		
		//求两个数的最大公约数:
		int max = 0;//最大公约数 
		int min = 0;//最小公倍数
		while(true){
			if (m >= n){
				if (m%n==0){
					System.out.print("最大公约数为:"+ n);
					break;
				}else{
					int g = 0;
					for( int i = 1;i <= n; i++){ //最大公约数的循环到输入的最小的整数
						
						if ((m%i)==0 && (n%i)==0 ){
							//System.out.print("公约数为:"+i+"\t") //输出每个公约数
							max = i;//最大公约数	
						}
					}
					System.out.print("最大公约数为:"+ max);
					System.out.println("");
					break;
				}
			}else if (m<n){
				int s=0;//第三方的变量
				s = m ;
				m = n ;
				n = s ;
				continue;
			}
		}
		
		//求两个数的最小公倍数:
		while(true){
			if (m>=n){
				if(m%n==0){
					System.out.print("最小公倍数为:"+ n);
					break;
				}else{
					min = m * n / max;
					System.out.print("最小公倍数为:"+ min);
					break;
				}
			}else if (m<n){
				int s=0;//第三方的变量
				s = m ;
				m = n ;
				n = s ;
				continue;
			}
		}
	}
}

输入两个正整数m和n,求其最大公约数和最小公倍数(运用循环语句)_第1张图片

你可能感兴趣的:(java学习,java)