import java.util.Scanner;
2
import java.util.Date;
3
4
public class reservation {
5
6
// Create an array of 12 seats, 6 window and 6 aisle.
7
private static int[] seats = new int[12];
8
9
public static void main
(String args
[]) { 10
System.
out.
println("Welcome to the DIC lovin train reservation system!"); 11
System.
out.
println("Code ninjas, code newbies, one fabulous DIC ride!"); 12
13
14
15
// Lets start by setting all seats equal to 0 (aka Empty)
16
for (int i = 0; i < 12; i++) {
17
seats[i] = 0;
18
}
19
20
// Setup our scanner and default the choice to window.
21
Scanner s
= new Scanner
(System.
in);22
int choice = 1;
23
24
// Ask user for a window or an aisle seat and store their coice.
25
System.
out.
print("Please enter 1 for window, 2 for aisle, or 0 to exit: "); 26
choice = s.nextInt();
27
28
29
// While their choice is not the one for exit, execute our booking.
30
while (choice != 0) {
31
int seatnumber = 0;
32
33
34
// If they chose a window seat, attempt to book it.
35
if (choice == 1) {
36
seatnumber = bookWindow();
37
38
39
// No window seats available, try booking an aisle seat for them instead.
40
if (seatnumber == -1) {
41
seatnumber = bookAisle();
42
43
if (seatnumber != -1) {
44
System.
out.
println("Sorry, we were not able to book a window seat. But do have an aisle seat."); 45
printBoardingPass(seatnumber);
46
}
47
}
48
else {
49
// Booking a window seat was successful.
50
System.
out.
println("You are in luck, we have a window seat available!"); 51
printBoardingPass(seatnumber);
52
}
53
}
54
else if (choice == 2) {
55
56
// If they chose booking an isle, check to see if it is available.
57
seatnumber = bookAisle();
58
59
// If not available, see if we have window seats available.
60
if (seatnumber == -1) {
61
seatnumber = bookWindow();
62
63
if (seatnumber != -1) {
64
System.
out.
println("Sorry, we were not able to book an aisle seat. But do have a window seat."); 65
printBoardingPass(seatnumber);
66
}
67
}
68
else {
69
// Booking an aisle seat was successful.
70
System.
out.
println("You are in luck, we have an aisle seat available!"); 71
printBoardingPass(seatnumber);
72
}
73
}
74
else {
75
// Print an error message if they did not choose 1, 2, or 0 for their choice.
76
System.
out.
println("Invalid choice made. Please try again!"); 77
choice = 0;
78
}
79
80
81
// No window or aisle seats were available.
82
if (seatnumber == -1) {
83
System.
out.
println("We are sorry, there are no window or aisle seats available."); 84
85
}
86
87
88
// Reprompt for a choice
89
System.
out.
print("Please enter 1 for window, 2 for aisle, or 0 to exit: "); 90
choice = s.nextInt();
91
}
92
93
94
}
95
96
97
// This function checks for window seats and returns seat number or -1 if full.
98
private static int bookWindow() {
99
for (int i = 0; i < 6; i++) {
100
if (seats[i] == 0) {
101
seats[i] = 1;
102
return i + 1;
103
}
104
}
105
return -1;
106
}
107
108
109
// This function checks to see if aisle seats were available, -1 if full.
110
private static int bookAisle() {
111
for (int i = 6; i < 12; i++) {
112
if (seats[i] == 0) {
113
seats[i] = 1;
114
return i + 1;
115
}
116
}
117
return -1;
118
119
}
120
121
122
// This simply prints out a nice little boarding pass message with their seat number and date of issue.
123
private static void printBoardingPass(int seatnumber) {
124
125
126
System.
out.
println("Date: " + timenow.
toString()); 127
System.
out.
println("Boarding pass for seat number: " + seatnumber
); 128
System.
out.
println("This ticket is non-refundable and non-transferable."); 129
System.
out.
println("Please be curteous, do not smoke. Enjoy your trip."); 130
131
}
132
}
aW1wb3J0IGphdmEudXRpbC5TY2FubmVyOwoyCmltcG9ydCBqYXZhLnV0aWwuRGF0ZTsKMwogCjQKcHVibGljIGNsYXNzIHJlc2VydmF0aW9uIHsKNQogCjYKICAgIC8vIENyZWF0ZSBhbiBhcnJheSBvZiAxMiBzZWF0cywgNiB3aW5kb3cgYW5kIDYgYWlzbGUuCjcKICAgIHByaXZhdGUgc3RhdGljIGludFtdIHNlYXRzID0gbmV3IGludFsxMl07CjgKIAo5CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmcgYXJnc1tdKSB7CjEwCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJXZWxjb21lIHRvIHRoZSBESUMgbG92aW4gdHJhaW4gcmVzZXJ2YXRpb24gc3lzdGVtISIpOwoxMQogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiQ29kZSBuaW5qYXMsIGNvZGUgbmV3Ymllcywgb25lIGZhYnVsb3VzIERJQyByaWRlISIpOwoxMgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigpOwoxMwogICAgICAgICAKMTQKIAoxNQogICAgICAgIC8vIExldHMgc3RhcnQgYnkgc2V0dGluZyBhbGwgc2VhdHMgZXF1YWwgdG8gMCAoYWthIEVtcHR5KQoxNgogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMTI7IGkrKykgewoxNwogICAgICAgICAgICBzZWF0c1tpXSA9IDA7CjE4CiAgICAgICAgfQoxOQogCjIwCiAgICAgICAgLy8gU2V0dXAgb3VyIHNjYW5uZXIgYW5kIGRlZmF1bHQgdGhlIGNob2ljZSB0byB3aW5kb3cuCjIxCiAgICAgICAgU2Nhbm5lciBzID0gbmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKMjIKICAgICAgICBpbnQgY2hvaWNlID0gMTsKMjMKIAoyNAogICAgICAgIC8vIEFzayB1c2VyIGZvciBhIHdpbmRvdyBvciBhbiBhaXNsZSBzZWF0IGFuZCBzdG9yZSB0aGVpciBjb2ljZS4KMjUKICAgICAgICBTeXN0ZW0ub3V0LnByaW50KCJQbGVhc2UgZW50ZXIgMSBmb3Igd2luZG93LCAyIGZvciBhaXNsZSwgb3IgMCB0byBleGl0OiAiKTsKMjYKICAgICAgICBjaG9pY2UgPSBzLm5leHRJbnQoKTsKMjcKIAoyOAogCjI5CiAgICAgICAgLy8gV2hpbGUgdGhlaXIgY2hvaWNlIGlzIG5vdCB0aGUgb25lIGZvciBleGl0LCBleGVjdXRlIG91ciBib29raW5nLgozMAogICAgICAgIHdoaWxlIChjaG9pY2UgIT0gMCkgewozMQogICAgICAgICAgICBpbnQgc2VhdG51bWJlciA9IDA7CjMyCiAKMzMKIAozNAogICAgICAgICAgICAvLyBJZiB0aGV5IGNob3NlIGEgd2luZG93IHNlYXQsIGF0dGVtcHQgdG8gYm9vayBpdC4KMzUKICAgICAgICAgICAgaWYgKGNob2ljZSA9PSAxKSB7CjM2CiAgICAgICAgICAgICAgICBzZWF0bnVtYmVyID0gYm9va1dpbmRvdygpOwozNwogCjM4CiAKMzkKICAgICAgICAgICAgICAgIC8vIE5vIHdpbmRvdyBzZWF0cyBhdmFpbGFibGUsIHRyeSBib29raW5nIGFuIGFpc2xlIHNlYXQgZm9yIHRoZW0gaW5zdGVhZC4KNDAKICAgICAgICAgICAgICAgIGlmIChzZWF0bnVtYmVyID09IC0xKSB7CjQxCiAgICAgICAgICAgICAgICAgICAgc2VhdG51bWJlciA9IGJvb2tBaXNsZSgpOwo0MgogICAgICAgICAgICAgICAgIAo0MwogICAgICAgICAgICAgICAgICAgIGlmIChzZWF0bnVtYmVyICE9IC0xKSB7CjQ0CiAgICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiU29ycnksIHdlIHdlcmUgbm90IGFibGUgdG8gYm9vayBhIHdpbmRvdyBzZWF0LiBCdXQgZG8gaGF2ZSBhbiBhaXNsZSBzZWF0LiIpOwo0NQogICAgICAgICAgICAgICAgICAgICAgICBwcmludEJvYXJkaW5nUGFzcyhzZWF0bnVtYmVyKTsKNDYKICAgICAgICAgICAgICAgICAgICB9CjQ3CiAgICAgICAgICAgICAgICB9CjQ4CiAgICAgICAgICAgICAgICBlbHNlIHsKNDkKICAgICAgICAgICAgICAgICAgICAvLyBCb29raW5nIGEgd2luZG93IHNlYXQgd2FzIHN1Y2Nlc3NmdWwuCjUwCiAgICAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJZb3UgYXJlIGluIGx1Y2ssIHdlIGhhdmUgYSB3aW5kb3cgc2VhdCBhdmFpbGFibGUhIik7CjUxCiAgICAgICAgICAgICAgICAgICAgcHJpbnRCb2FyZGluZ1Bhc3Moc2VhdG51bWJlcik7CjUyCiAgICAgICAgICAgICAgICB9CjUzCiAgICAgICAgICAgIH0KNTQKICAgICAgICAgICAgZWxzZSBpZiAoY2hvaWNlID09IDIpIHsKNTUKIAo1NgogICAgICAgICAgICAgICAgLy8gSWYgdGhleSBjaG9zZSBib29raW5nIGFuIGlzbGUsIGNoZWNrIHRvIHNlZSBpZiBpdCBpcyBhdmFpbGFibGUuCjU3CiAgICAgICAgICAgICAgICBzZWF0bnVtYmVyID0gYm9va0Fpc2xlKCk7CjU4CiAgICAgICAgICAgICAKNTkKICAgICAgICAgICAgICAgIC8vIElmIG5vdCBhdmFpbGFibGUsIHNlZSBpZiB3ZSBoYXZlIHdpbmRvdyBzZWF0cyBhdmFpbGFibGUuCjYwCiAgICAgICAgICAgICAgICBpZiAoc2VhdG51bWJlciA9PSAtMSkgewo2MQogICAgICAgICAgICAgICAgICAgIHNlYXRudW1iZXIgPSBib29rV2luZG93KCk7CjYyCiAKNjMKICAgICAgICAgICAgICAgICAgICBpZiAoc2VhdG51bWJlciAhPSAtMSkgewo2NAogICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlNvcnJ5LCB3ZSB3ZXJlIG5vdCBhYmxlIHRvIGJvb2sgYW4gYWlzbGUgc2VhdC4gQnV0IGRvIGhhdmUgYSB3aW5kb3cgc2VhdC4iKTsKNjUKICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRCb2FyZGluZ1Bhc3Moc2VhdG51bWJlcik7CjY2CiAgICAgICAgICAgICAgICAgICAgfQo2NwogICAgICAgICAgICAgICAgfQo2OAogICAgICAgICAgICAgICAgZWxzZSB7CjY5CiAgICAgICAgICAgICAgICAgICAgLy8gQm9va2luZyBhbiBhaXNsZSBzZWF0IHdhcyBzdWNjZXNzZnVsLgo3MAogICAgICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiWW91IGFyZSBpbiBsdWNrLCB3ZSBoYXZlIGFuIGFpc2xlIHNlYXQgYXZhaWxhYmxlISIpOwo3MQogICAgICAgICAgICAgICAgICAgIHByaW50Qm9hcmRpbmdQYXNzKHNlYXRudW1iZXIpOwo3MgogICAgICAgICAgICAgICAgfQo3MwogICAgICAgICAgICB9Cjc0CiAgICAgICAgICAgIGVsc2Ugewo3NQogICAgICAgICAgICAgICAgLy8gUHJpbnQgYW4gZXJyb3IgbWVzc2FnZSBpZiB0aGV5IGRpZCBub3QgY2hvb3NlIDEsIDIsIG9yIDAgZm9yIHRoZWlyIGNob2ljZS4KNzYKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiSW52YWxpZCBjaG9pY2UgbWFkZS4gUGxlYXNlIHRyeSBhZ2FpbiEiKTsKNzcKICAgICAgICAgICAgICAgIGNob2ljZSA9IDA7Cjc4CiAgICAgICAgICAgIH0KNzkKIAo4MAogCjgxCiAgICAgICAgICAgIC8vIE5vIHdpbmRvdyBvciBhaXNsZSBzZWF0cyB3ZXJlIGF2YWlsYWJsZS4gCjgyCiAgICAgICAgICAgIGlmIChzZWF0bnVtYmVyID09IC0xKSB7CjgzCiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIldlIGFyZSBzb3JyeSwgdGhlcmUgYXJlIG5vIHdpbmRvdyBvciBhaXNsZSBzZWF0cyBhdmFpbGFibGUuIik7Cjg0CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oKTsKODUKICAgICAgICAgICAgfQo4NgogCjg3CiAKODgKICAgICAgICAgICAgLy8gUmVwcm9tcHQgZm9yIGEgY2hvaWNlCjg5CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIlBsZWFzZSBlbnRlciAxIGZvciB3aW5kb3csIDIgZm9yIGFpc2xlLCBvciAwIHRvIGV4aXQ6ICIpOwo5MAogICAgICAgICAgICBjaG9pY2UgPSBzLm5leHRJbnQoKTsKOTEKICAgICAgICB9CjkyCiAKOTMKICAgICAgICAgICAgIAo5NAogICAgfQo5NQogCjk2CiAKOTcKICAgIC8vIFRoaXMgZnVuY3Rpb24gY2hlY2tzIGZvciB3aW5kb3cgc2VhdHMgYW5kIHJldHVybnMgc2VhdCBudW1iZXIgb3IgLTEgaWYgZnVsbC4KOTgKICAgIHByaXZhdGUgc3RhdGljIGludCBib29rV2luZG93KCkgewo5OQogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNjsgaSsrKSB7CjEwMAogICAgICAgICAgICBpZiAoc2VhdHNbaV0gPT0gMCkgewoxMDEKICAgICAgICAgICAgICAgIHNlYXRzW2ldID0gMTsKMTAyCiAgICAgICAgICAgICAgICByZXR1cm4gaSArIDE7CjEwMwogICAgICAgICAgICB9CjEwNAogICAgICAgIH0KMTA1CiAgICAgICAgcmV0dXJuIC0xOwoxMDYKICAgIH0KMTA3CiAKMTA4CiAKMTA5CiAgICAvLyBUaGlzIGZ1bmN0aW9uIGNoZWNrcyB0byBzZWUgaWYgYWlzbGUgc2VhdHMgd2VyZSBhdmFpbGFibGUsIC0xIGlmIGZ1bGwuCjExMAogICAgcHJpdmF0ZSBzdGF0aWMgaW50IGJvb2tBaXNsZSgpIHsKMTExCiAgICAgICAgZm9yIChpbnQgaSA9IDY7IGkgPCAxMjsgaSsrKSB7CjExMgogICAgICAgICAgICBpZiAoc2VhdHNbaV0gPT0gMCkgewoxMTMKICAgICAgICAgICAgICAgIHNlYXRzW2ldID0gMTsKMTE0CiAgICAgICAgICAgICAgICByZXR1cm4gaSArIDE7CjExNQogICAgICAgICAgICB9CjExNgogICAgICAgIH0KMTE3CiAgICAgICAgcmV0dXJuIC0xOwoxMTgKIAoxMTkKICAgIH0KMTIwCiAKMTIxCiAKMTIyCiAgICAvLyBUaGlzIHNpbXBseSBwcmludHMgb3V0IGEgbmljZSBsaXR0bGUgYm9hcmRpbmcgcGFzcyBtZXNzYWdlIHdpdGggdGhlaXIgc2VhdCBudW1iZXIgYW5kIGRhdGUgb2YgaXNzdWUuCjEyMwogICAgcHJpdmF0ZSBzdGF0aWMgdm9pZCBwcmludEJvYXJkaW5nUGFzcyhpbnQgc2VhdG51bWJlcikgewoxMjQKICAgICAgICBEYXRlIHRpbWVub3cgPSBuZXcgRGF0ZSgpOwoxMjUKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oKTsKMTI2CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJEYXRlOiAiICsgdGltZW5vdy50b1N0cmluZygpKTsKMTI3CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJCb2FyZGluZyBwYXNzIGZvciBzZWF0IG51bWJlcjogIiArIHNlYXRudW1iZXIpOwoxMjgKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlRoaXMgdGlja2V0IGlzIG5vbi1yZWZ1bmRhYmxlIGFuZCBub24tdHJhbnNmZXJhYmxlLiIpOwoxMjkKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlBsZWFzZSBiZSBjdXJ0ZW91cywgZG8gbm90IHNtb2tlLiBFbmpveSB5b3VyIHRyaXAuIik7CjEzMAogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigpOwoxMzEKICAgIH0KMTMyCn0K
Main.java:2: error: class, interface, or enum expected
2
^
Main.java:4: error: class, interface, or enum expected
3
^
Main.java:8: error: illegal start of type
5
^
Main.java:8: error: ';' expected
5
^
Main.java:12: error: illegal start of type
7
^
Main.java:12: error: <identifier> expected
7
^
Main.java:13: error: ';' expected
private static int[] seats = new int[12];
^
Main.java:14: error: illegal start of type
8
^
Main.java:14: error: ';' expected
8
^
Main.java:18: error: not a statement
10
^
Main.java:18: error: ';' expected
10
^
Main.java:20: error: not a statement
11
^
Main.java:20: error: ';' expected
11
^
Main.java:22: error: not a statement
12
^
Main.java:22: error: ';' expected
12
^
Main.java:24: error: not a statement
13
^
Main.java:24: error: ';' expected
13
^
Main.java:32: error: not a statement
17
^
Main.java:32: error: ';' expected
17
^
Main.java:34: error: not a statement
18
^
Main.java:34: error: ';' expected
18
^
Main.java:36: error: not a statement
19
^
Main.java:36: error: ';' expected
19
^
Main.java:42: error: not a statement
22
^
Main.java:42: error: ';' expected
22
^
Main.java:44: error: not a statement
23
^
Main.java:44: error: ';' expected
23
^
Main.java:50: error: not a statement
26
^
Main.java:50: error: ';' expected
26
^
Main.java:52: error: not a statement
27
^
Main.java:52: error: ';' expected
27
^
Main.java:60: error: not a statement
31
^
Main.java:60: error: ';' expected
31
^
Main.java:62: error: not a statement
32
^
Main.java:62: error: ';' expected
32
^
Main.java:70: error: not a statement
36
^
Main.java:70: error: ';' expected
36
^
Main.java:72: error: not a statement
37
^
Main.java:72: error: ';' expected
37
^
Main.java:80: error: not a statement
41
^
Main.java:80: error: ';' expected
41
^
Main.java:82: error: not a statement
42
^
Main.java:82: error: ';' expected
42
^
Main.java:86: error: not a statement
44
^
Main.java:86: error: ';' expected
44
^
Main.java:88: error: not a statement
45
^
Main.java:88: error: ';' expected
45
^
Main.java:90: error: not a statement
46
^
Main.java:90: error: ';' expected
46
^
Main.java:92: error: not a statement
47
^
Main.java:92: error: ';' expected
47
^
Main.java:94: error: not a statement
48
^
Main.java:94: error: ';' expected
48
^
Main.java:96: error: not a statement
49
^
Main.java:96: error: ';' expected
49
^
Main.java:100: error: not a statement
51
^
Main.java:100: error: ';' expected
51
^
Main.java:102: error: not a statement
52
^
Main.java:102: error: ';' expected
52
^
Main.java:95: error: 'else' without 'if'
else {
^
Main.java:104: error: not a statement
53
^
Main.java:104: error: ';' expected
53
^
Main.java:106: error: not a statement
54
^
Main.java:106: error: ';' expected
54
^
Main.java:108: error: not a statement
55
^
Main.java:108: error: ';' expected
55
^
Main.java:114: error: not a statement
58
^
Main.java:114: error: ';' expected
58
^
Main.java:120: error: not a statement
61
^
Main.java:120: error: ';' expected
61
^
Main.java:122: error: not a statement
62
^
Main.java:122: error: ';' expected
62
^
Main.java:126: error: not a statement
64
^
Main.java:126: error: ';' expected
64
^
Main.java:128: error: not a statement
65
^
Main.java:128: error: ';' expected
65
^
Main.java:130: error: not a statement
66
^
Main.java:130: error: ';' expected
66
^
Main.java:132: error: not a statement
67
^
Main.java:132: error: ';' expected
67
^
Main.java:134: error: not a statement
68
^
Main.java:134: error: ';' expected
68
^
Main.java:136: error: not a statement
69
^
Main.java:136: error: ';' expected
69
^
Main.java:140: error: not a statement
71
^
Main.java:140: error: ';' expected
71
^
Main.java:142: error: not a statement
72
^
Main.java:142: error: ';' expected
72
^
Main.java:135: error: 'else' without 'if'
else {
^
Main.java:144: error: not a statement
73
^
Main.java:144: error: ';' expected
73
^
Main.java:107: error: 'else' without 'if'
else if (choice == 2) {
^
Main.java:146: error: not a statement
74
^
Main.java:146: error: ';' expected
74
^
Main.java:148: error: not a statement
75
^
Main.java:148: error: ';' expected
75
^
Main.java:152: error: not a statement
77
^
Main.java:152: error: ';' expected
77
^
Main.java:154: error: not a statement
78
^
Main.java:154: error: ';' expected
78
^
100 errors