Guten Abend Leute,
ich stehe leider ein wenig auf dem Schlauch...
Das Programm arbeitet größten Teils so wie es soll, es liest eine Datei ein, in der pro Zeile ein Wort steht. Dann kontrolliert das Programm ob Das wort Buchstaben enthält, die im Programm definiert sind (Buchstabenhäufigkeit). Ist das Wort länger als 4 Zeichen wird das Wort ignoriert. Besteht das Wort nur aus den Definierten Buchstaben wird es richtig in einer Punktmatrix Anzeige wiedergegeben. Ist aber eine Buchstabe dabei, der nicht definiert ist wird er einfach weggelassen z.B. es wurde definiert "N" und "M" dann kommt das Wort "Moin" und in der Anzeige kommt "M N". Und wie ich diese Wörter rausfiltern, wo noch andere Buchstaben drin vorkommen, weiß ich nicht. Da stecke ich gerade fest.
Ich arbeite mit Eclipse auf einem Mac
Hier mal mein Code:
ich stehe leider ein wenig auf dem Schlauch...
Das Programm arbeitet größten Teils so wie es soll, es liest eine Datei ein, in der pro Zeile ein Wort steht. Dann kontrolliert das Programm ob Das wort Buchstaben enthält, die im Programm definiert sind (Buchstabenhäufigkeit). Ist das Wort länger als 4 Zeichen wird das Wort ignoriert. Besteht das Wort nur aus den Definierten Buchstaben wird es richtig in einer Punktmatrix Anzeige wiedergegeben. Ist aber eine Buchstabe dabei, der nicht definiert ist wird er einfach weggelassen z.B. es wurde definiert "N" und "M" dann kommt das Wort "Moin" und in der Anzeige kommt "M N". Und wie ich diese Wörter rausfiltern, wo noch andere Buchstaben drin vorkommen, weiß ich nicht. Da stecke ich gerade fest.
Ich arbeite mit Eclipse auf einem Mac
Hier mal mein Code:
Java:
import java.io.IOException;
public class Versuch2 {
public static void main(String[] args) {
try {
FileInput leser = new FileInput ("/Users/niklaskoop/Desktop/Wortliste.txt"); // Hier wird mit der Klasse FileInput die zu lesene Datei ins Programm eingefügt und auf // potentielle fehler überprüft
String zeile = null;
try {
while ((zeile = leser.leseZeile()) != null) // Mit diesem Code wird die Schleife initialisiert, welche die Datei Zeile für Zeile liest, // solange wie die Zeile den Wert != 0 zurückliefert
{
String ZeileGroß = zeile.toUpperCase();
if (ZeileGroß.contains("E") || ZeileGroß.contains("N") || ZeileGroß.contains("I") || ZeileGroß.contains("S") || ZeileGroß.contains("R") || ZeileGroß.contains("A") || ZeileGroß.contains("T")) {
char[] Buchstaben = ZeileGroß.toCharArray();
char[] Definition = new char[]{'E','N','I','S','R','A','T'};
if (Buchstaben.length < 5) {
PunktmatrixAnzeige5x7 matrixAnzeige = new PunktmatrixAnzeige5x7 ();
for(int k = 0; k < Buchstaben.length; k++) {
if (Buchstaben[k] == Definition[0]) {
int MatrixE[][] = { { 255, 255, 255, 255, 255 }, { 255, 0, 0, 0, 0 }, { 255, 0, 0, 0, 0 },
{ 255, 255, 255, 255, 0 }, { 255, 0, 0, 0, 0 }, { 255, 0, 0, 0, 0 }, { 255, 255, 255, 255, 255 } };
matrixAnzeige.addBlock(MatrixE);
} else if (Buchstaben[k] == Definition[1]) {
int MatrixN[][] = { { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 }, { 255, 255, 0, 0, 255 },
{ 255, 0, 255, 0, 255 }, { 255, 0, 0, 255, 255 }, { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 } };
matrixAnzeige.addBlock(MatrixN);
} else if (Buchstaben[k] == Definition[2]) {
int MatrixI[][] = { { 0, 255, 255, 255, 0 }, { 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 },
{ 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 }, { 0, 255, 255, 255, 0 } };
matrixAnzeige.addBlock(MatrixI);
} else if (Buchstaben[k] == Definition[3]) {
int MatrixS[][] = { { 0, 255, 255, 255, 0 }, { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 0 },
{ 0, 255, 255, 255, 0 }, { 0, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 }, { 0, 255, 255, 255, 0 } };
matrixAnzeige.addBlock(MatrixS);
} else if (Buchstaben[k] == Definition[4]) {
int MatrixR[][] = { { 255, 255, 255, 255, 0 }, { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 },
{ 255, 255, 255, 255, 0 }, { 255, 0, 255, 0, 0 }, { 255, 0, 0, 255, 0 }, { 255, 0, 0, 0, 255 } };
matrixAnzeige.addBlock(MatrixR);
} else if (Buchstaben[k] == Definition[5]) {
int MatrixA[][] = { { 0, 0, 255, 0, 0 }, { 0, 255, 0, 255, 0 }, { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 },
{ 255, 255, 255, 255, 255 }, { 255, 0, 0, 0, 255 }, { 255, 0, 0, 0, 255 } };
matrixAnzeige.addBlock(MatrixA);
} else if (Buchstaben[k] == Definition[6]) {
int MatrixT[][] = { { 255, 255, 255, 255, 255 }, { 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 },
{ 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 }, { 0, 0, 255, 0, 0 } };
matrixAnzeige.addBlock(MatrixT);
}
} Thread.sleep(1000);
matrixAnzeige.loesche();
matrixAnzeige.dispose();
}
}
}
leser.schliesseDatei();
IO.println("Programm wurde beendet!");
System.exit(1);
} catch(InterruptedException e) {
IO.println("Fehler bei der LED-Anzeige!");
}
} catch(IOException IOEx) {
IO.println(IOEx.getLocalizedMessage());
System.exit(1);
}
}
}