Salve, sto "proseguendo" nello studio del linguaggio Java e mi sono trovato di fronte a questo esercizio:
A working Java program is all scrambled. Can you rearrange the code snippets to make a working Java program that produces the output listed below? Some of the curly braces fell on the floor and they were too small to pick up, so feel free to add as many of those as you need!
L'output dovrebbe risultare:
Ho provato in diversi modi a mettere in fila il codice e ad aggiungere parentesi graffe ma finora il risultato è stato solo quello di perderci 3 ore. Io lavoro su Mac e mi han detto che utilizzando Xcode, il programma riconosce gli errori e suggerisce risoluzioni in maniera abbastanza efficace, ma nel corso che sto seguendo almeno per i primi esercizi raccomanda di utilizzare un editor di testo (io uso TextWrangler) per sforzarsi e capire meglio il meccanismo.
I pezzi di codice sono i seguenti:
codice:
if (x == 1) {
System.out.print("d");
x = x - 1;
}
codice:
if (x==2) {
System.out.print("b c");
}
codice:
class Shuffle1 {
public static void main(String [] args) {
codice:
if (x > 2) {
System.out.print("a");
}
codice:
x = x - 1;
System.out.print("-");
Io l'ho impostato in questo modo:
codice:
class Shuffle1 {
public static void main(String [] args) {
int x = 3; }
while (x > 0) {
x = x - 1;
System.out.print("-");
}
if (x > 2) {
System.out.print("a");
}
if (x == 2) {
System.out.print("b c");
}
if (x == 1) {
System.out.print("d");
x = x -1;
}
}
E mi ritorna i seguenti errori quando provo a compilare:
codice:
Shuffle1.java:6: illegal start of type
while (x > 0) {
^
Shuffle1.java:6: <identifier> expected
while (x > 0) {
^
Shuffle1.java:6: ';' expected
while (x > 0) {
^
Shuffle1.java:6: illegal start of type
while (x > 0) {
^
Shuffle1.java:6: <identifier> expected
while (x > 0) {
^
Shuffle1.java:6: ';' expected
while (x > 0) {
^
Shuffle1.java:8: illegal start of type
x = x - 1;
^
Shuffle1.java:8: ';' expected
x = x - 1;
^
Shuffle1.java:10: <identifier> expected
System.out.print("-");
^
Shuffle1.java:10: illegal start of type
System.out.print("-");
^
Shuffle1.java:14: class, interface, or enum expected
if (x > 2) {
^
Shuffle1.java:17: class, interface, or enum expected
}
^
Shuffle1.java:23: class, interface, or enum expected
}
^
Shuffle1.java:29: class, interface, or enum expected
x = x -1;
^
Shuffle1.java:30: class, interface, or enum expected
}
^
15 errors
host-001:desktop lucaottaviani$