Welcome to JAVA!(第3章课后习题)

3.4 Write a program that generates two intergers under 100 and prompts the user to enter the sum of  these two integers.The program then reports true if the answer is correct,flase otherwise.The program is similar to List 3.1 

 

import java.util.Scanner;
class Main {

	public static void main(String[] args) {
		int number1= (int) (System.currentTimeMillis()%100);
		int number2= (int) (System.currentTimeMillis()*7%100);
		
		Scanner input=new Scanner(System.in);
		
		System.out.println("what is " + number1 + "+" + number2 + "?");
		System.out.print("your answer: ");
		int answer = input.nextInt();
		System.out.println( number1 + "+" + number2 + " = " + answer + " is " + (number1 + number2 == answer));
	}

}
/* output:
what is 90+30?
your answer: 120
90+30 = 120 is true
*///~


 

 

import java.util.Scanner;
class Main {

	public static void main(String[] args) {
		int number1= (int) (Math.random()*100);
		int number2= (int) (Math.random()*100);
		
		Scanner input=new Scanner(System.in);
		
		System.out.println("what is " + number1 + "+" + number2 + "?");
		System.out.print("your answer: ");
		int answer = input.nextInt();
		System.out.println( number1 + "+" + number2 + " = " + answer + " is " + (number1 + number2 == answer));
	}

}
/* output:
what is 95+83?
your answer: 178
95+83 = 178 is true

what is 35+37?
your answer: 66
35+37 = 66 is false

*///~



3.22 Write a program that prompts the user to enter a point(x,y) and checks whether the point is within the circle centered at (0,0) with radius 10.

import java.util.Scanner;
class Main {

	public static void main(String[] args) {	
		Scanner input=new Scanner(System.in);
		System.out.print("Enter a point with two coordinates:");
		double x=input.nextDouble(),y=input.nextDouble();
		double length,radius=10;
		length=Math.pow(x*x+y*y, 0.5);
		if (length <= radius)
			System.out.print("Point (" + x + ", " + y +") is in the Ciccle");
		else
			System.out.print("Point (" + x + ", " + y +") is not in the Ciccle");
	}

}
/* output:
Enter a point with two coordinates:4 5
Point (4.0, 5.0) is in the Ciccle

Enter a point with two coordinates:8 9
Point (8.0, 9.0) is not in the Ciccle
*///~

 


3.24 Write a program that simulates picking a card from a deck of 52 cards,your program should display the rank(Ace,2,3,4,5,6,7,8,9,10,Jack,Queen,King) and suit (Clubs,Diamonds,Hearts,Spaders)of the card.

(1)case语句

import java.util.Scanner;
class Main {

	public static void main(String[] args) {
		int number1= (int) (Math.random()*13);
		int number2= (int) (Math.random()*4);
		
		System.out.print("The card your picked is ");
		switch(number1)
		{
			case 0:System.out.print("Ace of ");break;
			case 1:System.out.print("2 of ");break;
			case 2:System.out.print("3 of ");break;
			case 3:System.out.print("4 of ");break;
			case 4:System.out.print("5 of ");break;
			case 5:System.out.print("6 of ");break;
			case 6:System.out.print("7 of ");break;
			case 7:System.out.print("8 of ");break;
			case 8:System.out.print("9 of ");break;
			case 9:System.out.print("10 of ");break;
			case 10:System.out.print("Jack of ");break;
			case 11:System.out.print("Queen of ");break;
			case 12:System.out.print("King of ");break;
		}
		switch(number2)
		{
			case 0:System.out.print("Clubs");break;
			case 1:System.out.print("Diamonds");break;
			case 2:System.out.print("Hearts");break;
			case 3:System.out.print("Spades");break;
		}
			
		
	}

}
/* output:
The card your picked is 10 of Clubs

The card your picked is Jack of Diamonds
*///~

(2)数组

import java.util.Scanner;
class Main {

	public static void main(String[] args) {
		int number1= (int) (Math.random()*13);
		int number2= (int) (Math.random()*4);
		String[] num1={"Ace","1","2","3","4","5","6","7","8","9","10","Jack","Queen","King"};
		String[] num2={"Clubs","Diamonds","Hearts","Spades"};
		System.out.print("The card your picked is "+ num1[number1] + " of " + num2[number2]);

		
	}

}
/* output:
The card your picked is 9 of Clubs

The card your picked is 8 of Spades
*///~



学习心得:

学会了两种JAVA取随机数的方法以及Selections的各种内容,在IF-ELSE、switch等等上和C++并没有多大的区别

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值