1.百元百鸡问题
设公鸡x 母鸡y 小鸡z
x+y+z=100
5x+3y+z/3=100
package com.lovo;
/**
* 百元百鸡
* @author Abe
*
*/
public class TesthomeWork03 {
public static void main(String[] args) {
int x = 0 , y = 0 , z = 0 ,num = 0;
for( x = 0; x <= 20; ++x){
for( y = 0; y <= 33; ++y){
z = 100 - x - y;
if(5*x + 3*y + z/3 == 100 && z % 3 == 0){
System.out.printf("公鸡%d只,母鸡%d只,小鸡%d只符合条件^_^。\n",x,y,z);
num++ ;
}
}
}
System.out.printf("一共有%d种可能~~~(≧▽≦)/~",num);
}
}
运行结果~
公鸡0只,母鸡25只,小鸡75只符合条件^_^。公鸡4只,母鸡18只,小鸡78只符合条件^_^。
公鸡8只,母鸡11只,小鸡81只符合条件^_^。
公鸡12只,母鸡4只,小鸡84只符合条件^_^。
一共有4种可能~~~(≧▽≦)/~
2.求100以内素数
package com.lovo;
/**
* 求100以内的素数
* @author Abe
*
*/
public class TesthomeWork02 {
public static void main(String[] args) {
int zong = 0;
for(int i = 1 ; i <= 100; ++i){
int num = 0;
for(int j=1 ; j<=i ; ++j){
if(i % j ==0){
++num;
}
}
if(num == 2){
System.out.printf("%d是素数\n",i);
++zong;
}
}
System.out.printf("一共找到%d个素数",zong);
}
}
运行结果:
2是素数 3是素数 5是素数 7是素数 11是素数 13是素数 17是素数 19是素数 23是素数 29是素数 31是素数 37是素数 41是素数 43是素数 47是素数 53是素数 59是素数 61是素数 67是素数 71是素数 73是素数 79是素数 83是素数 89是素数 97是素数
一共找到25个素数
3.求 mn的最小公约数和最大公倍数
<pre name="code" class="java">package com.lovo;
/**
* 求m 和 n 的最大公约数,最小公倍数
* @author Anubise
*
*/
import java.util.Scanner;
public class Test08 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入正整数m:");
if (sc.hasNextInt()) {
int m = sc.nextInt();
System.out.print("请输入正整数n:");
if (sc.hasNextInt()) {
int n = sc.nextInt();
if(m<0 || n<0){
System.out.println("输入的不是正数哦~");
}else{<span style="white-space:pre"> </span>//反过来用 貌似 也没出错哦……
for (int gy = Math.min(m, n); gy > 0; --gy) {
if (m % gy == 0 && n % gy == 0) {
System.out.printf("%d与%d的最大公约数为%d\n", m, n, gy);
break;
}
}
for (int gb = Math.max(m, n); gb <= m * n; ++gb) {
if (gb % m == 0 && gb % n == 0) {
System.out.printf("%d与%d的最小公倍数为%d\n", m, n, gb);
break;
}
}
}
} else {
System.out.println("n输入有误……");
}
} else {
System.out.println("m输入有误……");
}
<span style="white-space:pre"> </span>sc.close();
}
}
悲剧啊 又把if后面加了;………… 各种错误答案弄得欲仙欲死啊……