Hallo Zusammen .
Wieder mal ein Grünschnabel der sich zu Wort meldet und Hilfe gebrauchen kann.
Ja auch ich habe mich dazu entschlossen das Programmieren zu erlernen.
Ich weis ich werde mit meiner frage auch wieder einige nerven .Es tuuuut mir Leid wirklich !!!
Aber auch ich sitze schon seit nunmehr fast zwei wochen an dieser aufgabe und weis auch nicht mehr weiter.
bitte ein Paar tips bitte bitte bitte:
Was ist zu Verbessern an diesem Code?
import java.util.Arrays;
import javax.swing.*;
/**Diese Klasse enthält Methoden zur Verwaltung von Kisten
* Die Kisten werden in einem 2D-Array gespeichert, wobei jede
* Kiste durch ihre Nummer, Breite, Länge,Höhe representiert wird
*/
public class Java04d_einsend_01 {
//Eingabe einer gültigen Kistennummer
static int eingabeKistennummer() {
int nummer;
do {
nummer =
Integer.parseInt(JOptionPane.showInputDialog("Geben Sie bitte eine Kistennummer ein von (1-75)"));
if (nummer <= 0 || nummer >75) {
System.out.println("Die Kistennummer ist üngültig");
}
}while (nummer <= 0 || nummer > 75);
return nummer;
}
/* Fügt eine neue Kiste dem
* 2D-Array hinzu.
* @parameter argEingabe Das
* 2D-Array,in dem die kisten gespeichert werden.
*/
//Eingabe einer neuen Kiste
static void eingabe(int[][] argEingabe) {
int nummer = eingabeKistennummer();
int breite, länge, höhe;
//Wenn Kistennummer gültig und noch nicht vergeben
if (argEingabe[nummer-1][0] == 0) {
//Nummer der Kiste zuweisen
argEingabe[nummer-1][0] = nummer;
//Werte Einlesen
breite=
Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argEingabe[nummer-1][1]=breite;
länge=
Integer.parseInt(JOptionPane.showInputDialog("Kistenlänge"));
argEingabe[nummer-1][2]=länge;
höhe=
Integer.parseInt(JOptionPane.showInputDialog("Kistenhöhe"));
argEingabe[nummer-1][3]=höhe;
{
System.out.println("Die Kistennummer ist schon vergeben");
}
}
}
/*Löscht eine vorhandene Kiste
* aus dem 2d-Array,und Überprüft ob die zu löschende Kiste vorhanden ist.
*/
//Das Löschen einer Kiste
static void löschen(int[][] argLöschen) {
int nummer = eingabeKistennummer();
//Kontrolle ob die Kistennummer mit einer bereits gespeicherten
//Kiste übereinstimmt
if (argLöschen[nummer-1][0]!=0)
//Setzt die Kisten nummer auf 0 zum Löschen der Kiste
{argLöschen[nummer-1][0] = 0;
}else {
System.out.println("Die Kistennummer " +nummer +" ist nicht bekannt");
}
}
/*Ändert die Daten von einer Kiste
* die im 2D-Array vorhanden ist.
*/
//Das Ändern von Daten einer Kiste
static void ändern(int[][] argÄndern) {
int nummer = eingabeKistennummer();
int breite = 0 , länge, höhe;
//KIstennummer eingeben
do {
nummer= eingabeKistennummer();
//Kontrolle ob die Kistennummer mit einer bereits gespeicherten
//Kiste übereinstimmt
if (nummer>0 && nummer<=argÄndern.length)
if (argÄndern[nummer-1][0] !=0)
//Werte Einlesen
breite=
Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argÄndern[nummer-1][1]=breite;
länge=Integer.parseInt(JOptionPane.showInputDialog("Kistenlänge"));
argÄndern[nummer-1][2] = länge;
höhe=Integer.parseInt(JOptionPane.showInputDialog("Kistenhöhe"));
argÄndern[nummer-1][3] = höhe;
{
{
System.out.println("Die Kistennummer ist ungültig oder schon vergeben");
}
}
} while (nummer<=0 || nummer>=argÄndern.length);
}
//Anzeigen der Daten einer Kiste
static void anzeigen(int[][]argAnzeigen) {
int nummer;
nummer=Integer.parseInt(JOptionPane.showInputDialog("Geben Sie eine vorhandene Kistennummer ein"));
for(int i=0; i<argAnzeigen.length; i++) {
if(nummer>0 && nummer<=argAnzeigen.length && argAnzeigen[0] == nummer) {
System.out.println("Die Daten der Kiste sind "+Arrays.toString(argAnzeigen));
return;
}
}
System.out.println("Die Kistennummer " +nummer + " ist nicht bekannt.");
}
//Anzeigen der Daten aller Kisten
static void gesamtListe (int[][]gesamtListe) {
for (int kistenIndex =0;kistenIndex < gesamtListe.length; kistenIndex++) {
if(gesamtListe[kistenIndex][0] == 0) {
continue;
}
for (int detailsIndex=0; detailsIndex<gesamtListe[kistenIndex].length; detailsIndex++) {
System.out.println(gesamtListe[kistenIndex][detailsIndex]);
}
}
}
public static void main(String[] args) {
//Vereinbarung des Arrays
//Ein 2D-Array das 75 Kisten beinhaltet und 4reihen aufweist.
int[][] kistenArray = new int[75][4];
//Auswahl der Funktionen
//Hier kann der Benutzer zwischen mehreren funktionen wählen.
String funktionEinlesen;
char funktion;
System.out.println("Sie haben Folgende Funktionen zur Auswahl:");
System.out.println("A Eingabe einer neuen Kiste.");
System.out.println("B Löschen der Daten einer Kiste.");
System.out.println("C Ändern der Daten einer Kiste.");
System.out.println("D Daten einer Kiste anzeigen.");
System.out.println("E Daten aller Kisten anzeigen.");
funktionEinlesen=JOptionPane.showInputDialog("Bitte wählen sie eine Funktion.");
funktion = funktionEinlesen.charAt(0);
//Auswahl auswerten
switch(funktion) {
case 'a':
case 'A':
System.out.println("Sie haben eine neue Kiste eingegeben.");
eingabe(kistenArray);
break;
case 'b':
case 'B':
System.out.println("Sie haben löschen einer Kiste gewählt.");
löschen(kistenArray);
break;
case 'c':
case 'C':
System.out.println("Sie haben ändern einer Kiste gewählt.");
ändern(kistenArray);
break;
case 'd':
case 'D':
System.out.println("Sie haben Datenanzeigen einer Kiste gewählt.");
anzeigen(kistenArray);
break;
case 'e':
case 'E':
System.out.println("Sie haben Datenanzeigen aller Kisten gewählt.");
gesamtListe(kistenArray);
break;
}
System.exit(0);
}
}
Wieder mal ein Grünschnabel der sich zu Wort meldet und Hilfe gebrauchen kann.
Ja auch ich habe mich dazu entschlossen das Programmieren zu erlernen.
Ich weis ich werde mit meiner frage auch wieder einige nerven .Es tuuuut mir Leid wirklich !!!
Aber auch ich sitze schon seit nunmehr fast zwei wochen an dieser aufgabe und weis auch nicht mehr weiter.
bitte ein Paar tips bitte bitte bitte:
Was ist zu Verbessern an diesem Code?
import java.util.Arrays;
import javax.swing.*;
/**Diese Klasse enthält Methoden zur Verwaltung von Kisten
* Die Kisten werden in einem 2D-Array gespeichert, wobei jede
* Kiste durch ihre Nummer, Breite, Länge,Höhe representiert wird
*/
public class Java04d_einsend_01 {
//Eingabe einer gültigen Kistennummer
static int eingabeKistennummer() {
int nummer;
do {
nummer =
Integer.parseInt(JOptionPane.showInputDialog("Geben Sie bitte eine Kistennummer ein von (1-75)"));
if (nummer <= 0 || nummer >75) {
System.out.println("Die Kistennummer ist üngültig");
}
}while (nummer <= 0 || nummer > 75);
return nummer;
}
/* Fügt eine neue Kiste dem
* 2D-Array hinzu.
* @parameter argEingabe Das
* 2D-Array,in dem die kisten gespeichert werden.
*/
//Eingabe einer neuen Kiste
static void eingabe(int[][] argEingabe) {
int nummer = eingabeKistennummer();
int breite, länge, höhe;
//Wenn Kistennummer gültig und noch nicht vergeben
if (argEingabe[nummer-1][0] == 0) {
//Nummer der Kiste zuweisen
argEingabe[nummer-1][0] = nummer;
//Werte Einlesen
breite=
Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argEingabe[nummer-1][1]=breite;
länge=
Integer.parseInt(JOptionPane.showInputDialog("Kistenlänge"));
argEingabe[nummer-1][2]=länge;
höhe=
Integer.parseInt(JOptionPane.showInputDialog("Kistenhöhe"));
argEingabe[nummer-1][3]=höhe;
{
System.out.println("Die Kistennummer ist schon vergeben");
}
}
}
/*Löscht eine vorhandene Kiste
* aus dem 2d-Array,und Überprüft ob die zu löschende Kiste vorhanden ist.
*/
//Das Löschen einer Kiste
static void löschen(int[][] argLöschen) {
int nummer = eingabeKistennummer();
//Kontrolle ob die Kistennummer mit einer bereits gespeicherten
//Kiste übereinstimmt
if (argLöschen[nummer-1][0]!=0)
//Setzt die Kisten nummer auf 0 zum Löschen der Kiste
{argLöschen[nummer-1][0] = 0;
}else {
System.out.println("Die Kistennummer " +nummer +" ist nicht bekannt");
}
}
/*Ändert die Daten von einer Kiste
* die im 2D-Array vorhanden ist.
*/
//Das Ändern von Daten einer Kiste
static void ändern(int[][] argÄndern) {
int nummer = eingabeKistennummer();
int breite = 0 , länge, höhe;
//KIstennummer eingeben
do {
nummer= eingabeKistennummer();
//Kontrolle ob die Kistennummer mit einer bereits gespeicherten
//Kiste übereinstimmt
if (nummer>0 && nummer<=argÄndern.length)
if (argÄndern[nummer-1][0] !=0)
//Werte Einlesen
breite=
Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
argÄndern[nummer-1][1]=breite;
länge=Integer.parseInt(JOptionPane.showInputDialog("Kistenlänge"));
argÄndern[nummer-1][2] = länge;
höhe=Integer.parseInt(JOptionPane.showInputDialog("Kistenhöhe"));
argÄndern[nummer-1][3] = höhe;
{
{
System.out.println("Die Kistennummer ist ungültig oder schon vergeben");
}
}
} while (nummer<=0 || nummer>=argÄndern.length);
}
//Anzeigen der Daten einer Kiste
static void anzeigen(int[][]argAnzeigen) {
int nummer;
nummer=Integer.parseInt(JOptionPane.showInputDialog("Geben Sie eine vorhandene Kistennummer ein"));
for(int i=0; i<argAnzeigen.length; i++) {
if(nummer>0 && nummer<=argAnzeigen.length && argAnzeigen[0] == nummer) {
System.out.println("Die Daten der Kiste sind "+Arrays.toString(argAnzeigen));
return;
}
}
System.out.println("Die Kistennummer " +nummer + " ist nicht bekannt.");
}
//Anzeigen der Daten aller Kisten
static void gesamtListe (int[][]gesamtListe) {
for (int kistenIndex =0;kistenIndex < gesamtListe.length; kistenIndex++) {
if(gesamtListe[kistenIndex][0] == 0) {
continue;
}
for (int detailsIndex=0; detailsIndex<gesamtListe[kistenIndex].length; detailsIndex++) {
System.out.println(gesamtListe[kistenIndex][detailsIndex]);
}
}
}
public static void main(String[] args) {
//Vereinbarung des Arrays
//Ein 2D-Array das 75 Kisten beinhaltet und 4reihen aufweist.
int[][] kistenArray = new int[75][4];
//Auswahl der Funktionen
//Hier kann der Benutzer zwischen mehreren funktionen wählen.
String funktionEinlesen;
char funktion;
System.out.println("Sie haben Folgende Funktionen zur Auswahl:");
System.out.println("A Eingabe einer neuen Kiste.");
System.out.println("B Löschen der Daten einer Kiste.");
System.out.println("C Ändern der Daten einer Kiste.");
System.out.println("D Daten einer Kiste anzeigen.");
System.out.println("E Daten aller Kisten anzeigen.");
funktionEinlesen=JOptionPane.showInputDialog("Bitte wählen sie eine Funktion.");
funktion = funktionEinlesen.charAt(0);
//Auswahl auswerten
switch(funktion) {
case 'a':
case 'A':
System.out.println("Sie haben eine neue Kiste eingegeben.");
eingabe(kistenArray);
break;
case 'b':
case 'B':
System.out.println("Sie haben löschen einer Kiste gewählt.");
löschen(kistenArray);
break;
case 'c':
case 'C':
System.out.println("Sie haben ändern einer Kiste gewählt.");
ändern(kistenArray);
break;
case 'd':
case 'D':
System.out.println("Sie haben Datenanzeigen einer Kiste gewählt.");
anzeigen(kistenArray);
break;
case 'e':
case 'E':
System.out.println("Sie haben Datenanzeigen aller Kisten gewählt.");
gesamtListe(kistenArray);
break;
}
System.exit(0);
}
}