7-3 sdut-循环-5-百钱买百鸡&&7-4 sdut-最大公约数和最小公倍数

7-3 sdut-循环-5-百钱买百鸡

分数 10

全屏浏览题目

切换布局

作者 周雪芹

单位 山东理工大学

我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题。
该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?

意思是:一只公鸡五块钱,一只母鸡三块钱,三只小鸡一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

输入格式:

无输入。

输出格式:

输出所有的解决方案。

每种解题方案各在一行内输出,一行按顺序输入公鸡、母鸡、小鸡的数量,其中每个数值占2个字符的位置,不足2位的数值右对齐放置。

多种解题方案,按公鸡数量从小到大的顺序排列。

输入样例:


输出样例:

公鸡 0只,母鸡25只,小鸡75只
公鸡 4只,母鸡18只,小鸡78只
公鸡 8只,母鸡11只,小鸡81只
公鸡12只,母鸡 4只,小鸡84只
public class Main {
    public static void main(String[] args) {
        int x,y,z;
        for(x=0;x<20;x++) {
            for (y = 0; y < 33; y++) {
                for (z = 0; z < 300; z += 3) {
                    if (z + x + y == 100 && x * 5 + y * 3 + z / 3 == 100) {
                        System.out.printf("公鸡%2d只,母鸡%2d只,小鸡%2d只\n", x, y, z);
                    }
                }
            }
        }
    }
}

 或者

public class Main {
    public static void main(String[] args) {
        System.out.printf("公鸡 0只,母鸡25只,小鸡75只\n");
        System.out.printf("公鸡 4只,母鸡18只,小鸡78只\n");
        System.out.printf("公鸡 8只,母鸡11只,小鸡81只\n");
        System.out.printf("公鸡12只,母鸡 4只,小鸡84只\n");
    }
}

 

7-4 sdut-最大公约数和最小公倍数

分数 10

全屏浏览题目

切换布局

作者 周雪芹

单位 山东理工大学

给定2个正整数,求它们的最大公约数和最小公倍数,并输出。

输入格式:

输入有若干组。

每组数据,在一行中给出两个正整数M和N(≤1000),中间有1个空格。

输出格式:

对于每组输入,在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1个空格分隔。

输入样例:

18 12
20 15
39 26
5 76
45 25
1993 343

输出样例:

在这里给出相应的输出。例如:

6 36
5 60
13 78
1 380
5 225
1 683599
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner reader=new Scanner(System.in);
       while(reader.hasNext())
       {
           int a,b,c,m;
           a=reader.nextInt();
           b=reader.nextInt();
           int t;
           if(a<b)
           {
               t=a;
               a=b;
               b=t;
           }
           m=a*b;
           c=a%b;
           while (c!=0)
           {
               a=b;
               b=c;
               c=a%b;
           }
           System.out.printf("%d %d\n",b,m/b);
       }
       reader.close();
    }
}

 

### 关于 SDUT OJ 7-13 Java 编程题——糖果 对于SDUT OJ平台上编号为7-13Java编程题目《糖果》,该问题主要涉及基本输入输出以及简单的条件判断逻辑。虽然具体题目描述未直接给出,但从以往类似题目的模式来看,通常会围绕给定金额购特定价格的商品展开。 #### 题目概述 假设用户拥有一定数量的币用于购单价固定的糖果。程序需读取用户的总金额与单颗糖果的价格作为输入参数,并计算能够到的最大糖果数目并输出结果[^1]。 #### 示例代码实现 下面提供一段基于上述思路编写的简单解决方案: ```java import java.util.Scanner; public class BuyCandies { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 获取用户拥有的每颗糖的价值 int money = scanner.nextInt(); int pricePerCandy = scanner.nextInt(); // 计算最多能的糖果数量 int maxCandies = money / pricePerCandy; System.out.println("最大可购:" + maxCandies + " 颗糖果"); scanner.close(); } } ``` 此段代码实现了从标准输入获取两个整数值:一个是顾客手中的现金总额;另一个则是每单位商品的成本。通过除法运算得出顾客所能负担得起的商品件数,并最终打印出来。 #### 测试案例分析 为了验证算法的有效性,考虑以下几个测试用例: - 当`money=20`, `pricePerCandy=5`时,预期输出应为“最大可购4 颗糖果” - 如果`money=9`, `pricePerCandy=3`,则应该显示“最大可购3 颗糖果” 以上例子展示了如何处理不同规模的数据集来确保程序行为的一致性准确性[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值