1.今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
public class Practice01 {
public static void main(String[] args) {
// 循环初始化
int ji = 1; // 鸡的数量
while (ji <= 35) { // 循环条件
int tu = 35 - ji;
// 算腿的数量
int num = 2 * ji + 4 * tu;
if (num == 94) {
System.out.println("鸡的数量:" + ji + "\n兔的数量:" + tu);
}
ji++; // 循环迭代
}
}
}
2.某次数学考试考五道题,全班52人参加,共做对181道题,已知每人至少做对1道题,做对1道的有7人,5道全对的有6人,做对2道和3道的人数一样多,那么做对4道的人数有多少人
public class Practice02 {
public static void main(String[] args) {
// 循环作对2道或3道的人
for (int i = 1; i <= 14; i++) {
int j = 39 - 2 * i;// 作对4道的人数
// 181道题
if (7 + 6 * 5 + 2 * i + 3 * i + 4 * j == 181) {
System.out.println(i + "\t" + j);
}
}
}
}
3.一份稿件,甲单独打字需6小时完成.乙单独打字需10小时完成,甲单独打若干小时后,因有事由乙接着打完,共用了7小时。甲打字用了多少小时?
public class Practice03 {
public static void main(String[] args) {
double jia = 0; // 甲的用时
while (jia <= 7) {
double yi = 7 - jia; //乙的用时
if (10 * jia + 6 * yi == 60) {
System.out.println("甲打字用了" + jia + "小时");
}
jia += 0.1;
}
}
}
4.学校买来6张桌子和5把椅子共付455元,已知每张桌子比每把椅子贵30元,桌子和椅子的单价各是多少元
public class Practice04 {
public static void main(String[] args) {
// 循环椅子的价格
for (int yz = 1; yz <= 41; yz++) {
// 桌子的价格
int zz = yz + 30;
if (zz * 6 + yz * 5 == 455) {
System.out.println("桌子:" + zz + "\t椅子:" + yz);
}
}
}
}
5.甲、乙两队共同修一条长400米的公路,甲队从东往西修4天,乙队从西往东修5天,正好修完,甲队比乙队每天多修10米。甲、乙两队每天共修多少米
public class Practice05 {
public static void main(String[] args) {
for (int jia = 1; jia <= 100; jia++) {
int yi = jia - 10;
if (jia * 4 + yi * 5 == 400) {
System.out.println("甲:" + jia + "\t乙:" + yi);
}
}
}
}
6.蜘蛛有8条腿,蜻蜓有6条腿和2对翅膀,蝉有6条腿和1对翅膀。这三种小虫共18只,有118条腿和20对翅膀.每种小虫各几只?
public class Practice06 {
public static void main(String[] args) {
for (int zz = 1; zz <= 18; zz++) {
for (int qt = 1; qt <= 10; qt++) {
int c = 18 - zz - qt;// 18只
// 翅膀和腿
if (zz * 8 + qt * 6 + c * 6 == 118 && qt * 2 + c == 20) {
System.out.println("蜘蛛:" + zz + "\t蜻蜓:" + qt + "\t蝉:" + c);
}
}
}
}
}
7.输入一个正整数,将其因式分解,例如90=12335;
import java.util.Scanner;
public class Practice07 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入数字:");
int num = input.nextInt();
System.out.print(num + "=1");
int i = 2;
while (num != 1) {
if (num % i == 0) {
System.out.print("*" + i);
num = num / i;
} else {
i++;
}
}
input.close();
}
}
8.输入两个正整数m和n,求其最大公约数和最小公倍数(选作)
import java.util.Scanner;
public class Practice08 {
public static void main(String[] args) {
// System.out.println(getMax(10, 15));
Scanner input = new Scanner(System.in);
System.out.print("请输入第一个数字:");
int num1 = input.nextInt();
System.out.print("请输入第二个数字:");
int num2 = input.nextInt();
System.out.println("最大公约数:" + getMax(num1, num2));
System.out.println("最小公倍数:" + getMin(num1, num2));
input.close();
}
/**
* 求两个正整数的最大公约数
* @param m :第一个正整数
* @param n :第二个正整数
* @return
*/
public static int getMax(int m, int n) {
while (m != n) {
if (m > n) {
m = m - n;
} else {
n = n - m;
}
}
return m;
}
/**
* 求两个正整数的最小公倍数
* @param m :第一个正整数
* @param n :第二个正整数
* @return
*/
public static int getMin(int m, int n) {
return (m * n) / getMax(m, n);
}
}
9.一张纸的厚度为0.08mm,需要对折多少次才能到达珠穆朗玛峰的高度(8848.13m)
public class Practice09 {
public static void main(String[] args) {
double width = 0.00008;
int count = 0;
while (width <= 8848.13) {
// 对折
width += width;
count++;
}
System.out.println(count);
}
}
10.用1、2、3、4四个数字,可以组成多少个互不相同且无重复数字的三位数?都是多少?
public class Practice10 {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= 4; j++) {
for (int k = 1; k <= 4; k++) {
if (i != j && i != k && j != k) {
System.out.println(i * 100 + j * 10 + k);
count++;
}
}
}
}
System.out.println("共有" + count);
}
}