Moin
Ich habe mal ne Frage: Ich soll ein Programm schreiben, welches 3-,4-,oder x-stellige nummern verwaltet (dh. für kunden reserviert, wieder freigibt usw.) mein bisheriger quelltext sieht so aus:
gibt es eine möglichkeit, dass ich bei programmstart die console (oder sonstwas eingabeaufforderungsmäßiges) aufrufe und man dann in der console einfach nur "run", "reserve" oder "dump" eingeben muss und dann die dazugehörigen Methoden starten? danke!
Ich habe mal ne Frage: Ich soll ein Programm schreiben, welches 3-,4-,oder x-stellige nummern verwaltet (dh. für kunden reserviert, wieder freigibt usw.) mein bisheriger quelltext sieht so aus:
Java:
import javax.swing.JOptionPane;
public class ReservationSystem {
static int stellen = 2;
String[] nummern = new String[(new Double(Math.pow(10, stellen))).intValue()];
boolean[] reserviert = new boolean[nummern.length];
String[] kunden = new String[nummern.length];
String kunde;
int anzahl;
int frei = 0;
int start = 0;
public ReservationSystem(String kunde, int anzahl)
{
this.kunde = kunde;
this.anzahl = anzahl;
}
void dump()
{
reserve();
for (int i = 0; i < nummern.length; i++)
if (reserviert[i] == true)
System.out.println(nummern[i] + " reserviert von "
+ kunden[i]);
else
System.out.println(nummern[i] + " " + reserviert[i]);
}
void run() {
for (int i = 0; i < nummern.length; i++)
{
nummern[i] = String.format("%0" + stellen + "d", i);
}
}
void reserve() {
if ( anzahl > (nummern.length/10))
{
JOptionPane.showMessageDialog(null, "So viele Nummern stehen nicht zur Verfügung.");
}
else
{
while ( frei < anzahl )
{
if ( anzahl < 10 )
{
for ( int i = 0; i < nummern.length; i++)
{
if ( reserviert[i] == true )
{
frei = 0;
start = i + 1;
}
else
{
frei++;
}
}
}
else
if ( anzahl >= 10 )
{
for ( int i = 0; i < nummern.length; i += 10 )
{
if ( reserviert[i] == true )
{
frei = 0;
i++;
start = i + 11;
}
else
{
frei++;
}
}
}
}
{
if ( anzahl < 10 )
{
for ( int i = start; i < anzahl; i++)
{
reserviert[i] = true;
kunden[i] = kunde;
}
}
else
{
for ( int i = start; i < anzahl*10; i += 10 )
{
reserviert[i] = true;
kunden[i] = kunde;
}
}
}
}
}
public static void main(String[] args) {
do
{
String kunde = JOptionPane.showInputDialog("Bitte Namen eingeben");
int anzahl = Integer.parseInt(JOptionPane.showInputDialog("Wieviele Nummern möchten Sie reservieren?"));
ReservationSystem r = new ReservationSystem(kunde, anzahl);
r.dump();
}
while (JOptionPane.showConfirmDialog(null,
"Wollen Sie noch weitere Reservierungen tätigen?",
"Weitere Reservierungen?",
JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION);
}
}
gibt es eine möglichkeit, dass ich bei programmstart die console (oder sonstwas eingabeaufforderungsmäßiges) aufrufe und man dann in der console einfach nur "run", "reserve" oder "dump" eingeben muss und dann die dazugehörigen Methoden starten? danke!
Zuletzt bearbeitet von einem Moderator: