Hallo,
ich habe in der Schule aufgehabt ein Programm zu schreiben was eine tabelle von 0-99 erstellt. Wenn man jetzt eine Zahl zwischen 2 und 9 eingibt soll diese Zahl dann mit einem Sternchen ersetzt werden, alle Zeilen wo die Zahl enthalten ist (zb bei 4 die komplette 40er Reihe und alle Zahlen die man mit 4 teilen kann ohne das ein Rest ensteht). Hoffe das awr verständlich :)
Ich habe zwei Programme geschrieben. Das erste war mit einem array was einen kürzeren Code hat und das zweite war eigentlicht nur if anweisung + ne for Schleife.
jetzt wollte ich fragen ob man den Code vom zweiten Programm verkürzen kann - ich habe schon nachgedacht aber irgendwie weis ich nciht wirklich was ich da noch weg nehmen kann.
Es muss nicht kürzer werden - es würde mich eigentlich nur interessieren ob man da noch etwas austauschen kann:
Alles anzeigen
Danke!
MFG
illidan
ich habe in der Schule aufgehabt ein Programm zu schreiben was eine tabelle von 0-99 erstellt. Wenn man jetzt eine Zahl zwischen 2 und 9 eingibt soll diese Zahl dann mit einem Sternchen ersetzt werden, alle Zeilen wo die Zahl enthalten ist (zb bei 4 die komplette 40er Reihe und alle Zahlen die man mit 4 teilen kann ohne das ein Rest ensteht). Hoffe das awr verständlich :)
Ich habe zwei Programme geschrieben. Das erste war mit einem array was einen kürzeren Code hat und das zweite war eigentlicht nur if anweisung + ne for Schleife.
jetzt wollte ich fragen ob man den Code vom zweiten Programm verkürzen kann - ich habe schon nachgedacht aber irgendwie weis ich nciht wirklich was ich da noch weg nehmen kann.
Es muss nicht kürzer werden - es würde mich eigentlich nur interessieren ob man da noch etwas austauschen kann:
Quellcode
- public class CMatrixV2
- {
- public void ausgabe()
- {
- int i, tastaturZahl; // Variablen deklarieren
- String j, j2, j_subString;
- System.out.println("Matrix Berechnung");
- System.out.print("Zahl zwischen 2 und 9 eingeben (2 und 9 miteinbezogen): ");
- tastaturZahl = Kon.readInt(); // Zahl eingabe ueber Tastatur
- if(tastaturZahl < 2 || tastaturZahl > 9) // Ueberpruefung ob eingegebene Zahl unter 2 bzw. ueber 9 liegt
- {
- System.out.println("Bitte eine Zahl zwischen 2 und 9 eingeben (2 und 9 miteinbezogen)!");
- } else {
- for(i = 0; i<=99; i++) // for Schleife von 0 bis 99 für das Feld
- {
- j = (new Integer(i)).toString(); // Variable i in einen String konventieren
- if(i == tastaturZahl || i >= tastaturZahl*10 && i < (tastaturZahl*10)+10 || i%tastaturZahl == 0 && i != 0) // Ueberpruefung ob i die Tastatur Zahl, ob i die Zahl enthält, ob es einen Rest gibt wenn man i durch Zahl teilt wenn i nicht Null ist
- {
- j = "* "; // Das Symbol * wird in den String j gespeichert
- }
- if(i <= 9) // wenn i unter 9 und i die eingegeben Zahl ist oder enthält ist soll die Null nicht angezeigt werden
- {
- if(i == 0 || i != tastaturZahl && i%tastaturZahl != 0)
- {
- System.out.print("0");
- }
- }
- System.out.print(j+" "); // Ausgabe von j
- j2 = (new Integer(i)).toString(); // i wird nochmal in den String j2 konventiert
- if(i <= 9) { // ueberpruefung ob i unter gleich 9 ist
- j_subString = j2.substring(0, 1); // wenn ja dann wird j2 geteilt von Anfang erster Stelle bis Ende erster Stelle
- }
- else
- {
- j_subString = j2.substring(1, 2); // wenn nein dann wird j2 geteilt von Anfang zweiter Stelle bis Ende zweiter Stelle
- }
- if(j_subString.equals("9")) // wenn j_subString nun 9 entspricht dann wird ein Zeilenumbruch gemacht
- {
- System.out.print("\n"); // Zeilenumbruch
- }
- }
- System.out.println("Programmende CMatrixV2");
- }
- }
- }
Danke!
MFG
illidan