摩尔的Java学习笔记1.4
第一周作业:
1、输出一行文字;
2、输入一个字符串,判断其中字母、数字、其他字符的个数;
3、编程实现从键盘依次输入姓名(字符串)、年龄(整型)、性别(字符)和成绩(浮点型),然后依次显示上述内容;4、输入整数m和n,求其最大公约数和最小公倍数;
5、输入若干个整数,求其最大值、最小值和平均值;
6、求出自然数101~199中的所有素数;7、顺序输出1到100之间所有能被7整除的整数;
8、已知2000.1.1是星期六,根据任意给定的日期(2000年以后的),请编程计算出该天是星期几;
9、猜数游戏,随机生成一个整数(0-100),用户输入他所猜的数,程序回答大了或者小了,用户再输入他所猜的数,直至猜对了为止。
4、输入整数m和n,求其最大公约数和最小公倍数;
//薛莲婷
//输入整数m和n,求其最大公约数和最小公倍数(3种方法求最大公约数)
import java.util.Scanner;
class Assignment3 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入整数m和n:");
int m=sc.nextInt();
int n=sc.nextInt();
int m0=m; //存放m的原值
int n0=n; //存放n的原值
if(m<n) //保证m>=n
{
int temp=m;
m=n;
n=temp;
}
//辗转相除法(欧几里德算法)
int r; //r是余数
while((r=m%n)!=0)
{
m=n;
n=r;
}
/* //更相减损法(等值算法) int d; //d是差 while((d=m-n)!=0) { if(d>n) { m=d; } else { m=n; n=d; } } //短除法 int min=1; //存放最大公约数 for(int i=2;i<=n;i++) { while((m%i==0)&&(n%i==0)) { m/=i; n/=i; min*=i; } } n=min; //在这个程序中,为了三种方法的输出语句的一致性考虑,用此句使n的值等于最大公约数 */
System.out.println("最大公约数是:"+n+"\n最小公倍数是:"+(m0*n0/n));
sc.close();
}
}