import java.util.Arrays;
import javax.swing.*;
public class AnotherStupidLager {
//Eingabe einer neuen Kiste
static void eingabe(int[][] argEingabe) {
int kneingabe;
int breite, laenge, hoehe;
//Kistennr. eingeben bis gültig
do {
kneingabe=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer: 1-100 eingeben"));
//wenn gültig und noch nicht vorhanden, Daten eingeben
if(kneingabe>0 && kneingabe<=argEingabe.length)
if(argEingabe[kneingabe-1][0]==0){
//Nummer zuweisen
argEingabe[kneingabe-1][0]=kneingabe;
//Werte Einlesen und Arrayelementen zuweisen
breite=Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argEingabe[kneingabe-1][1]=breite;
laenge=Integer.parseInt(JOptionPane.showInputDialog("Kistenlaenge"));
argEingabe[kneingabe-1][2]=laenge;
hoehe=Integer.parseInt(JOptionPane.showInputDialog("Kistenhoehe"));
argEingabe[kneingabe-1][3]=hoehe;
System.out.println("Das Volumen, der Kiste "+kneingabe+" beträgt: "+(breite*laenge*hoehe));
}
else {
System.out.println("Kistennummer breits vergeben.");
System.out.println("Kistennummer ungültig.");
}
}
while(kneingabe<=0 || kneingabe>argEingabe.length);
}
//Anzeigen der Daten einer vorhandenen Kiste
static void anzeigen(int[][] argAnzeigen){
}
//Löschen der Daten einer vorhandenen Kiste
static void loeschen(int[][]argLoeschen) {
int knloeschen;
knloeschen=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer 1-100 wählen die gelöscht werden soll"));
//Wenn Kiste gültig und schon vorhanden dann löschen
for(int x=0; x<argLoeschen.length; x++) {
for(int y=0; y<argLoeschen.length; y++)
if(knloeschen>0 && knloeschen<=argLoeschen.length && argLoeschen[x][0]==knloeschen){
System.out.println("Löschen der Kiste\t"+argLoeschen[x][0]);
return;
}
}
System.out.println("Die Kiste ist nicht vorhanden, dem entsprechend kann sie nicht gelöscht werden");
}
static void aendern(int[][] argAendern) {
StringBuilder zBuilder = new StringBuilder();
int knaendern;
knaendern=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer: 1-100 wählen"));
for(int e=0; e<argAendern.length; e++) {
for(int f=0; f<argAendern.length; f++)
if(knaendern>0 && knaendern<=argAendern.length && argAendern[e][0] ==knaendern)
System.out.println("Ändern der Kiste"+zBuilder.substring(argAendern[e][0]).trim());
else {
System.out.println("Kiste nicht vorhanden");
}
System.out.println(zBuilder);
}
}
static void auflisten(int[][] argAuflisten) {
for(int g=0; g<argAuflisten.length; g++) {
for(int h=0; h<argAuflisten.length; h++)
System.out.println("Auflistung der Kisten"+Arrays.asList(argAuflisten[g][0]));
}
}
public static void main(String[] args) {
//Die Vereinbarung des Arrays
int[][] zahlenArray = new int[100][4];
String funktionwahlEinlesen;
char funktionwahl;
System.out.println("Sie haben folgende Auswahl: ");
System.out.println("a Eingabe");
System.out.println("b Löschen");
System.out.println("c Ändern");
System.out.println("d Anzeigen");
System.out.println("e Auflisten");
funktionwahlEinlesen=JOptionPane.showInputDialog("Bitte treffen Sie Ihre Wahl:");
funktionwahl = funktionwahlEinlesen.charAt(0);
switch(funktionwahl) {
case 'a':
case 'A':
System.out.println("Sie wollen was Eingeben!");
eingabe(zahlenArray);
break;
case 'b':
case 'B':
System.out.println("Sie wollen was Löschen!");
loeschen(zahlenArray);
break;
case 'c':
case 'C':
System.out.println("Sie wollen was Ändern!");
aendern(zahlenArray);
break;
case 'd':
case 'D':
System.out.println("Sie wollen was Anzeigen!");
anzeigen(zahlenArray);
break;
case 'e':
case 'E':
System.out.println("Hier sind alle vorhandenen Daten!");
auflisten(zahlenArray);
break;
}
System.exit(0);
}
}
Nun meine frage(n).
Ich will ein Lager aufbauen. Ich habe Platz für 100 Kisten. Jede Kiste soll das länge, breite, höhe, sowie volume.
Dann muss ich eine Listefunktion erstellen; Eingeben, Anzeigen, Löschen, Ändern, und Auflisten. Auch das habe ich hingekriegt
Für jede Funktion habe ich das passesnde Methode und Körper geschrieben. Aber weiter komme ich weiter nicht.
Problem 1. Bei switch case. Warum kann ich continue Anweisung nicht benutzen? Da soll ein Mehrfachen auswahl zur stande kommen. Jetzt laüft das Programm nur einmal.
Problem 2. Anzeigen haha!
Problem 3. Löschen Sind die Daten wirklich weg?
Problem 4. Ändern Da komm ich auch nicht weiter.
Bitte um Hilfe!!!
import javax.swing.*;
public class AnotherStupidLager {
//Eingabe einer neuen Kiste
static void eingabe(int[][] argEingabe) {
int kneingabe;
int breite, laenge, hoehe;
//Kistennr. eingeben bis gültig
do {
kneingabe=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer: 1-100 eingeben"));
//wenn gültig und noch nicht vorhanden, Daten eingeben
if(kneingabe>0 && kneingabe<=argEingabe.length)
if(argEingabe[kneingabe-1][0]==0){
//Nummer zuweisen
argEingabe[kneingabe-1][0]=kneingabe;
//Werte Einlesen und Arrayelementen zuweisen
breite=Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argEingabe[kneingabe-1][1]=breite;
laenge=Integer.parseInt(JOptionPane.showInputDialog("Kistenlaenge"));
argEingabe[kneingabe-1][2]=laenge;
hoehe=Integer.parseInt(JOptionPane.showInputDialog("Kistenhoehe"));
argEingabe[kneingabe-1][3]=hoehe;
System.out.println("Das Volumen, der Kiste "+kneingabe+" beträgt: "+(breite*laenge*hoehe));
}
else {
System.out.println("Kistennummer breits vergeben.");
System.out.println("Kistennummer ungültig.");
}
}
while(kneingabe<=0 || kneingabe>argEingabe.length);
}
//Anzeigen der Daten einer vorhandenen Kiste
static void anzeigen(int[][] argAnzeigen){
}
//Löschen der Daten einer vorhandenen Kiste
static void loeschen(int[][]argLoeschen) {
int knloeschen;
knloeschen=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer 1-100 wählen die gelöscht werden soll"));
//Wenn Kiste gültig und schon vorhanden dann löschen
for(int x=0; x<argLoeschen.length; x++) {
for(int y=0; y<argLoeschen.length; y++)
if(knloeschen>0 && knloeschen<=argLoeschen.length && argLoeschen[x][0]==knloeschen){
System.out.println("Löschen der Kiste\t"+argLoeschen[x][0]);
return;
}
}
System.out.println("Die Kiste ist nicht vorhanden, dem entsprechend kann sie nicht gelöscht werden");
}
static void aendern(int[][] argAendern) {
StringBuilder zBuilder = new StringBuilder();
int knaendern;
knaendern=Integer.parseInt(JOptionPane.showInputDialog("Bitte eine Kistennummer: 1-100 wählen"));
for(int e=0; e<argAendern.length; e++) {
for(int f=0; f<argAendern.length; f++)
if(knaendern>0 && knaendern<=argAendern.length && argAendern[e][0] ==knaendern)
System.out.println("Ändern der Kiste"+zBuilder.substring(argAendern[e][0]).trim());
else {
System.out.println("Kiste nicht vorhanden");
}
System.out.println(zBuilder);
}
}
static void auflisten(int[][] argAuflisten) {
for(int g=0; g<argAuflisten.length; g++) {
for(int h=0; h<argAuflisten.length; h++)
System.out.println("Auflistung der Kisten"+Arrays.asList(argAuflisten[g][0]));
}
}
public static void main(String[] args) {
//Die Vereinbarung des Arrays
int[][] zahlenArray = new int[100][4];
String funktionwahlEinlesen;
char funktionwahl;
System.out.println("Sie haben folgende Auswahl: ");
System.out.println("a Eingabe");
System.out.println("b Löschen");
System.out.println("c Ändern");
System.out.println("d Anzeigen");
System.out.println("e Auflisten");
funktionwahlEinlesen=JOptionPane.showInputDialog("Bitte treffen Sie Ihre Wahl:");
funktionwahl = funktionwahlEinlesen.charAt(0);
switch(funktionwahl) {
case 'a':
case 'A':
System.out.println("Sie wollen was Eingeben!");
eingabe(zahlenArray);
break;
case 'b':
case 'B':
System.out.println("Sie wollen was Löschen!");
loeschen(zahlenArray);
break;
case 'c':
case 'C':
System.out.println("Sie wollen was Ändern!");
aendern(zahlenArray);
break;
case 'd':
case 'D':
System.out.println("Sie wollen was Anzeigen!");
anzeigen(zahlenArray);
break;
case 'e':
case 'E':
System.out.println("Hier sind alle vorhandenen Daten!");
auflisten(zahlenArray);
break;
}
System.exit(0);
}
}
Nun meine frage(n).
Ich will ein Lager aufbauen. Ich habe Platz für 100 Kisten. Jede Kiste soll das länge, breite, höhe, sowie volume.
Dann muss ich eine Listefunktion erstellen; Eingeben, Anzeigen, Löschen, Ändern, und Auflisten. Auch das habe ich hingekriegt
Für jede Funktion habe ich das passesnde Methode und Körper geschrieben. Aber weiter komme ich weiter nicht.
Problem 1. Bei switch case. Warum kann ich continue Anweisung nicht benutzen? Da soll ein Mehrfachen auswahl zur stande kommen. Jetzt laüft das Programm nur einmal.
Problem 2. Anzeigen haha!
Problem 3. Löschen Sind die Daten wirklich weg?
Problem 4. Ändern Da komm ich auch nicht weiter.
Bitte um Hilfe!!!