Lösungsvorschlag 4.2. - Aufgabe 5: Unterschied zwischen den Versionen
Aus ComeniusWiki
| Zeile 12: | Zeile 12: | ||
//innere Schleife läuft jeweils vom ersten bis zum letzten Buchstaben und zählt die Vorkommen des jeweiligen Buchstaben | //innere Schleife läuft jeweils vom ersten bis zum letzten Buchstaben und zählt die Vorkommen des jeweiligen Buchstaben | ||
| − | for(int i= | + | for(int i=0;i<=txt.length()-1;i++){ |
if(c==txt.charAt(i)){j++;};} | if(c==txt.charAt(i)){j++;};} | ||
System.out.println("Der Buchstabe "+c+" kommt "+j+" mal vor."); | System.out.println("Der Buchstabe "+c+" kommt "+j+" mal vor."); | ||
Version vom 4. Dezember 2013, 10:51 Uhr
public void buchstabenZaehlen(String txt){
//Zeichenkette in Kleinbuchstaben umwandeln
txt=txt.toLowerCase();
//äußere Schleife läuft von a bis z
for (char c = 'a'; c <= 'z'; c++){
//Zählvariable, um festzuhalten wie oft der jeweilige Buchstabe auftritt
int j=0;
//innere Schleife läuft jeweils vom ersten bis zum letzten Buchstaben und zählt die Vorkommen des jeweiligen Buchstaben
for(int i=0;i<=txt.length()-1;i++){
if(c==txt.charAt(i)){j++;};}
System.out.println("Der Buchstabe "+c+" kommt "+j+" mal vor.");
}
}
Das Programm kann zum Entschlüsseln von einfach verschlüsselten Texten (z.B. Caesarverschiebung) verwendet werden, indem man die Buchstabenhäufigkeit im verschlüsselten Text mit der Verteilung z.B. im Deutschen vergleicht. Je länger der Ausgangstext, desto höher die Trefferquote.

