Video: Binäre Suche | Algorithmen verstehen | #LETSROCKINFORMATIK 2024
Sie sitzen hinter dem Schreibtisch im Java Motel. Aussehen! Hier kommt eine Party von fünf Leuten. Diese Leute wollen einen Raum, also braucht man Software, die prüft, ob ein Raum frei ist. Wenn dies der Fall ist, ändert die Software die
GuestList. Txt
Datei durch Ersetzen der Nummer 0 mit der Nummer 5. Wie der Zufall wollte, ist die Software auf Ihrer Festplatte. Die Software wird hier angezeigt.
importiert statisches Java. lang. System. aus;
importiert Java. Nutz. Scanner;
importiert Java. io. Datei;
importiert Java. io. IOException;
importiert Java. io. DruckStream;
öffentliche Klasse FindVacancy {
public static void main (String args []) löst IOException {
int guests [] = new int [10] aus;
int roomNum;
Scanner diskScanner = neuer Scanner (neue Datei ("GuestList. Txt"));
für (roomNum = 0; roomNum <10; roomNum ++) {
guests [roomNum] = diskScanner. nextInt ();
}
diskScanner. schließen();
roomNum = 0;
while (roomNum <10 & & Gäste [roomNum]! = 0) {
roomNum ++;
}
if (roomNum == 10) {
out. println ("Entschuldigung, nein v cancy");
} else {
aus. Drucken ("Wie viele Personen für das Zimmer");
heraus. drucken (roomNum);
heraus. drucken("?");
Scannertastatur = neuer Scanner (System. In);
Gäste [roomNum] = Tastatur. nextInt ();
Tastatur. schließen();
PrintStream listOut = neuer PrintStream ("Gastliste. Txt");
für (roomNum = 0; roomNum <10; roomNum ++) {
listOut. Druck (Gäste [roomNum]);
listOut. drucken(" ");
}
listOut. schließen();
}
}
}
Das Motel beginnt mit zwei freien Zimmern - Zimmer 3 und 8. (Denken Sie daran, die Zimmer beginnen mit Zimmer 0.) Wenn Sie das Programm zum ersten Mal ausführen, sagt Ihnen, dass Raum 3 leer ist und fünf Personen in den Raum bringt.
Eine Vakanz füllen.Beim zweiten Ausführen des Codes findet das Programm den verbleibenden freien Raum (Raum 8) und stellt eine Gruppe von zehn Personen in den Raum. (Was für eine Party!)
Füllt den letzten freien Raum.Beim dritten Mal, wenn Sie den Code ausführen, haben Sie keine freien Räume mehr. Wenn das Programm dies entdeckt, zeigt es die Meldung
Entschuldigung, nein v cancy
, wobei mindestens ein Buchstabe in der Tradition aller Motel-Leuchtreklamen weggelassen wird.
Ein Lauf des Codes schreibt eine brandneue
GuestList. txt
Datei. Dies kann verwirrend sein, da jede Java-IDE ihre eigene Art hat, die
GuestList anzuzeigen. Inhalt der Datei txt
. Einige IDEs zeigen nicht automatisch die neueste
GuestList an. txt-Datei
, daher wird nach dem Ausführen des Codes möglicherweise keine Änderung sofort angezeigt. Auch wenn Sie keine Änderung sehen, ändern aufeinanderfolgende Läufe die
GuestList.txt
Datei. Schauen Sie sich in Ihrer bevorzugten IDE um, um herauszufinden, wie die IDE die
GuestList aktualisieren kann. txt
Dateianzeige.
Die Bedingung
roomNum <10 && guests [roomNum]! = 0
kann sehr schwierig sein. Wenn Sie etwas bewegen und Gäste schreiben [roomNum]! = 0 && roomNum <10 , können Sie sich in viele Schwierigkeiten bringen. Weitere Informationen finden Sie unter Allmycode. com.