Hey!
Ich muss bei meiner Hausübung ein Programm Erstellen, dass die Häufigkeit der Buchstaben und Zahlen analysiert.
Dazu habe ich folgenden Code mithilfe der ASCII-Tabelle geschrieben. Leider funktioniert diese aber nicht . Programmiere erst seit ein Monat und bin nun an meine Grenzen gestoßen. Hab so ein Verdacht, dass höchstwahrscheinlich bei der Zeile 31 etw. nicht passt, bin mir aber nicht sicher.
Code:
Ich muss bei meiner Hausübung ein Programm Erstellen, dass die Häufigkeit der Buchstaben und Zahlen analysiert.
Dazu habe ich folgenden Code mithilfe der ASCII-Tabelle geschrieben. Leider funktioniert diese aber nicht . Programmiere erst seit ein Monat und bin nun an meine Grenzen gestoßen. Hab so ein Verdacht, dass höchstwahrscheinlich bei der Zeile 31 etw. nicht passt, bin mir aber nicht sicher.
Code:
Java:
public class Buchstabenanalyse {
public static void main(String[] args){
int [] input= new int[36];
Out.print("Bitte Text eingeben:");
input= readText();
printAnalysis(input); //Output Buchstabenstatistik
}
public static int[] readText(){
int pos=0; //position
int[]alphabet= new int[36];
char text=In.read(); //inputtext
//testing individual elements from the input
//from slot 0 to 25
while(text != '\n'){
if (text>='A' && text<='Z'){ //between 65 and 90
pos=text-'A';
alphabet[pos]++;
}else if(text >='a' && text<='z'){ //between 97 and 122
pos=text-'a';
alphabet[pos]++;
//from slot 26 to 36 ?? Does not work, why?
}else if(text>='0' && text<='9'){ //between 48 and 57
pos=text-'9';
alphabet[pos]++;
}
text= In.read();
}
return alphabet;
}
public static void printAnalysis(int[] numLetters){
char unit= 'A';
if(numLetters.length==36){ //number Letters
Out.println("Buchstabenstatistik\n------------------- ");
for(int i=0; i<numLetters.length; i++){
Out.println(unit +" "+ "kommt" + " "+ numLetters[i] + " " + "x vor");
unit++;
}
}else {
return; //nicht möglich
}
}
Anhänge
Zuletzt bearbeitet: