day02--课后练习

编程题
1:计算付款金额: 一杯5元, 每两杯的第二杯半价(杯数由用户从键盘录入 ) 如: 5杯 = (5+2.5)*2 + 5 = 20

package homework;

import java.util.Scanner;

public class homework01 {
    public static void main(String[] args) {
        System.out.println("饮料一杯5元,每两杯的第二杯半价");
        System.out.println("请输入您需要购买的饮料杯数");
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        int count = a % 2;
        double sum = 0;
        String result = "";
        scanner.close();
        if (count == 0) {
            sum = (5 + 2.5) * (a / 2);
            result = "(5+2.5)*" + a / 2 + "=" + sum;
        }

        else {
            sum = (5 + 2.5) * (a / 2) + 5;
            result = "(5+2.5)*" + a / 2 + "+5=" + sum;
        }
        System.out.println(result);
        System.out.println(sum);

    }
}

2:分别统计字符串”123456789012”奇数位及偶数位上的数字的和
将字符串的奇数位数字相加求和 c1 = 1 + 3 + 5 + 7 + 9 + 1
将字符串的偶数位数字相加求和 c2 = 2 + 4 + 6 + 8 + 0 + 2

package homework;

import java.util.Scanner;

public class homework02 {

    public static void main(String[] args) {
        System.out.println("本程序功能:统计字符串数字奇数位及偶数为上的数字的和");
        System.out.println("请输入您需要统计的字符串数字");
        Scanner scanner = new Scanner(System.in);
        String s = scanner.next();
        scanner.close();
        int sum1 = 0, sum2 = 0;
        String result1 = "", result2 = "";
        char[] cs = s.toCharArray();
        for (int i = 0; i < cs.length; i++) {
            if (i % 2 == 0) {
                sum1 += Integer.parseInt(cs[i] + "");
                if (i == cs.length - 1) {
                    result1 = cs[i] + " " + result1;
                } else {
                    result1 = cs[i] + "+" + result1;
                }
            } else {
                sum2 += Integer.parseInt(cs[i] + "");
                result2 = cs[i] + "+" + result2;
            }

        }
        System.out.println(result1 + " =" + sum1);
        System.out.println(result2 + " =" + sum2);

    }

}

3:String[] cards = {“3”,”4”,”8”,”A”,”K”,”Q”}数组中存储了6张牌,设计一个算法把牌打乱,也就是实现洗牌功能

package homework;

import java.util.Random;

public class homework03 {
    public static void check(int[] nums, int num) {
        int i;
        Random random = new Random();
        for (i = 0; i < num; i++) {
            if (nums[i] == nums[num]) {
                nums[num] = random.nextInt(6);
                check(nums, num);
            }
        }
        if (i == num)
            return;
    }

    public static void main(String[] args) {
        System.out.println("本程序功能,实现洗牌功能");
        String[] cards = { "3", "4", "8", "A", "K", "Q" };
        Random random = new Random();
        int[] copyCards = new int[cards.length];
        for (int i = 0; i < cards.length; i++) {
            copyCards[i] = random.nextInt(6);
            check(copyCards, i);
            System.out.print(cards[copyCards[i]]+" ");
        }

    }

}

4:一个5位的整数,判断它是不是回文数,例如12321是回文数

5:向一个有序的整型数组中插入一个数,插入后该数组还是有序的
(使用二分法)()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值