[問題] 面試遇到的題目
今天去面試的考試是上機考java 題目如下
有一戲院有30個座位
預約座位時以隨機決定顯示座位號碼
如果座位滿了顯示座位已滿
class名稱為Reservation method名稱為Reserve
以Random.nextFloat()亂數決定
我算是寫出來了 但是覺得寫的不好 不知道版上哪位高手能給個意見
謝謝
import java.util.Random;
import java.util.Scanner;
public class Reservation {
private boolean[] seat;
private int seat_count = 30;
public Reservation(){
seat = new boolean[seat_count];
for(int i = 0; i < seat.length; i++){
seat[i] = false;
}
}
public static void main(String args[]){
Reservation res = new Reservation();
Scanner sc = new Scanner(System.in);
System.out.print("請問要預約戲院座位嗎?[Y/N]:");
String answer = sc.nextLine();
while(answer.equals("y") || answer.equals("Y")){
if(!res.Reserve()){
break;
}
System.out.print("請問還要預約戲院座位嗎?[Y/N]:");
answer = sc.nextLine();
}
}
public boolean Reserve(){
if(seat_count > 0){
Random ran = new Random();
int order = (int) (ran.nextFloat() * seat_count) + 1;
int seat_number = 1;
while(order > 0){
if(seat[seat_number - 1] == false){
order--;
}
seat_number++;
}
seat[seat_number-2] = true;
seat_count--;
System.out.println("你預約到 " + (seat_number - 1)
+ " 號座位");
return true;
}
else{
System.out.println("不好意思位子已滿!!!");
return false;
}
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.125.228.176
※ 編輯: joetsai 來自: 122.125.228.176 (08/12 22:01)
推
08/13 02:33, , 1F
08/13 02:33, 1F
推
08/13 02:41, , 2F
08/13 02:41, 2F
→
08/13 08:27, , 3F
08/13 08:27, 3F
推
08/14 15:39, , 4F
08/14 15:39, 4F
討論串 (同標題文章)