连续输出前50个素数、凑硬币

//连续输出前50个素数
import java.util.Scanner; public class Hello { public static void main(String[] args) { Scanner in = new Scanner(System.in); int isPrime ; int n = 1; for (int count = 0;count < 50;) { ++n; isPrime = 1; for(int i = 2; i < n; i++) { if(n % i == 0) { isPrime = 0; break; } } if(isPrime == 1) { count++; System.out.print(n+" "); } } } }
import java.util.Scanner;
// 凑硬币
public class Hello {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int amount = in.nextInt();
        for(int one = 0; one <= amount; ++one)
        {
            for (int five = 0; five <= amount/5; ++five)
            {
                for (int ten = 0; ten <= amount/5; ++ten)
                {
                    for(int twenty = 0; twenty <= amount/5; ++twenty)
                    {
                        if(one + five*5 + ten*10 + twenty*20 == amount)
                        {
                            System.out.println(one+"张1元 "+five+"张5元 "+ten+"张10元 "+twenty+"张20元");
                        }
                    }
                }
            }
        }
    }
}

讲凑硬币只算出一种方式 有两种办法

1. 用判断符 多重break

2.用lable break

import java.util.Scanner;

public class Hello {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int amount = in.nextInt();
		int IsExit = 0;
		for(int one = 0; one <= amount; ++one)
		{
			for (int five = 0; five <= amount/5; ++five)
			{
				for (int ten = 0; ten <= amount/5; ++ten)
				{
					for(int twenty = 0; twenty <= amount/5; ++twenty)
					{
						if(one + five*5 + ten*10 + twenty*20 == amount)
						{
							System.out.println(one+"张1元 "+five+"张5元 "+ten+"张10元 "+twenty+"张20元");
							IsExit = 1;
							break;
						}
					}
					if(IsExit == 1) break;
				}
				if(IsExit == 1) break;
			}
			if(IsExit == 1) break;
		}
	}
}

 

import java.util.Scanner;

public class Hello {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int amount = in.nextInt();
		OUT:
		for(int one = 0; one <= amount; ++one)
		{
			for (int five = 0; five <= amount/5; ++five)
			{
				for (int ten = 0; ten <= amount/5; ++ten)
				{
					for(int twenty = 0; twenty <= amount/5; ++twenty)
					{
						if(one + five*5 + ten*10 + twenty*20 == amount)
						{
							System.out.println(one+"张1元 "+five+"张5元 "+ten+"张10元 "+twenty+"张20元");
						//	IsExit = 1;
							break OUT;
						}
					}
					//if(IsExit == 1) break;
				}
				//if(IsExit == 1) break;
			}
			//if(IsExit == 1) break;
		}
	}
}

 

上一篇:【linux】循序渐进学运维-基础篇-grub加密技术


下一篇:【DB宝51】CentOS7修改网卡名称