Wörter Zählen

Status
Nicht offen für weitere Antworten.

gebr

Mitglied
hallo.. absoluter programmier neuling und hätte mich jetzt erst mal über mein erstes programm gestürzt. leider ist das ganze nicht so einfach wie man sich das vorstellt..

also, gefragt wäre, die Wörter eines eigegebenen Satzes zu zählen:
hätte das so gelöst.. :

Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class countWörter {

    public static void main(String[] args) throws IOException {

        int l, a=0, z = 0;

        System.out.println("Geben Sie einen Satz ein: ");  //Eingabeauffortderung

        String Satz;
        BufferedReader myInput = new BufferedReader(new InputStreamReader(System.in));
        Satz = myInput.readLine();
        System.out.println("Sie haben folgenden Satz eingegeben: " + Satz);
        Satz = Satz.trim();    //Leerzeichen am Ende und Anfang werden entfernt

        //System.out.println("Satz ohne Leerzeichen: " + Satz);      
        
       
       
        l=Satz.length();
        //System.out.println(l);
        a=0;

        do {  

            l=Satz.length();
            
            boolean check = Satz.startsWith(" ");

            if (check == true) {
                a = Satz.indexOf(" ");
                if (a < l){
                Satz.substring(a + 1);
                
                }
                else{a=l;}
            }
            
            else {
 
                z=z+1;
                a = Satz.indexOf(" ");
                if (a<l){
                Satz.substring(a + 1);
                }
                else {a=l;}
            }
            
           
        }
        while (a != l);
        System.out.println(z); 
    }
}


hätte das jetzt schon ein paar mal gedanklich durchgespielt.. finde aber den fehler nicht.. irgendwo ist da eine endlosschleife oder sowas eingebaut.. HILFE.. ;)
mfg
 

Soi

Mitglied
Also ich versteh nicht wie du dir das gedacht hast, es geht aber viel einfacher:

Code:
String[] einzelneWoerter = Satz.split(" ");
z = einzelneWoerter.length;

Da gibt es nur ein Problem wenn am Anfang ein Leerzeichen steht oder dazwischen mehrere hinterdeinander. Aber das bekommst du schon hin :D
 

Quaxli

Top Contributor
Leerzeichen am Anfang hat er ja durch den trim() schon abgetötet und für mehrere hinteinander tut's ein einfacher replaceAll(..)
 
T

TGIF

Gast
Und wie soll er nach replaceAll() die Methode split(" ") anwenden?
 

Verjigorm

Top Contributor
Code:
		String s = " 12345 67890     12345     67890 ";
		
		String[] split = s.trim().replaceAll("[ ]+", " ").split(" ");
		
		for(String st : split)
		{
			System.out.println(st);
		}

Ausgabe:

12345
67890
12345
67890
 

Quaxli

Top Contributor
Schade, daß Du die Lösung schon gepostest hast, auch wenn sie sehr schön ist. Aber leider hindert es einige am selbständigen Denken ;)
 

Verjigorm

Top Contributor
Quaxli hat gesagt.:
Schade, daß Du die Lösung schon gepostest hast, auch wenn sie sehr schön ist. Aber leider hindert es einige am selbständigen Denken ;)

Mein selbständiges Denken wurde dafür kurzfristig angeregt :D
Und wenn man Glück hat, dann wirds nicht 1:1 kopiert, sondern sich Gedanken drüber gemacht, wieso und warum ^^
 

gebr

Mitglied
*g* danke.. habs aber jetzt eh schon anders gelöst..

Code:
import java.util.Scanner;



public class bsp3_0725238_1 {

    public static void main(String[] args) {
        System.out.println("Geben Sie einen Satz ein: ");
       
        int i, a, Zähler = 0;
 
        Scanner sc = new Scanner(System.in);    //Definieren eines Scanners zum String einlesen

        String Satz = sc.nextLine();            //Einlesen eines Satzes in eines String

        Satz = Satz.trim();        //Entfernen der Leerzeichen vor dem ersten und letzten Wort (Buchstaben)

        i = Satz.length();         //Wieviele Zeichen enthält der Satz (String)

        Satz=" "+Satz;
        
        a = Satz.indexOf(" "); //Bestimmung der Position des ersten Leerzeichens im String        
        Satz = Satz.substring(a + 1); //Löschen des Strings bis inkl. des Leerzeichens
        
        

        while (a != -1) //Funktion indexOf: wird das gesuchte String nämlich " " nicht gefunden: wird -1 ausgegeben;
        {
            boolean check = Satz.startsWith(" ");
            
            if (check == false) //War das Zeichen nach dem Leerzeichen kein weiteres, muss es ein
            {
                Zähler++;            //Buchstabe sein -> Anzahl Wörter +1

            }
            
            a = Satz.indexOf(" ");     //Setzen des Zeigers auf das nächste Leerzeichen
            Satz = Satz.substring(a + 1);    //Abschneiden des Strings bis inkl. des Leerzeichen
        }
        
        
        
        if (i != 0) //der Satz enthält Wörter
        {
            System.out.println("Anzahl der im Satz enthaltenen Wörter: " + Zähler);
        }
        
        else //Wurden nur Leerzeichen eingegeben, folgt diese Ausgabe
        {
            System.out.println("Der Satz enthält keine Wörter.");
        }
    }
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Satz aufteilen und die Wörter zählen (HashMap) Java Basics - Anfänger-Themen 15
B Collections Java Wörter in String zählen und geordnet ausgeben Java Basics - Anfänger-Themen 10
A Text teilen und Wörter zählen Java Basics - Anfänger-Themen 7
B Input/Output Wörter zählen & sortieren Java Basics - Anfänger-Themen 9
S Buchstaben/Wörter im String zählen Java Basics - Anfänger-Themen 6
J Wörter in einem string zählen und die anzahl zurückgeben Java Basics - Anfänger-Themen 4
S Wörter zählen Java Basics - Anfänger-Themen 19
N Wörter zählen im String Java Basics - Anfänger-Themen 3
J Wörter im String zählen Java Basics - Anfänger-Themen 4
P wörter im string zählen Java Basics - Anfänger-Themen 9
G Häufigkeit der Wörter einer Webseite zählen Java Basics - Anfänger-Themen 7
K Wörter zählen auf Internetseiten... die zweite Java Basics - Anfänger-Themen 4
julian0507 Wörter einlesen lassen und rückwärts ausgeben Java Basics - Anfänger-Themen 7
B String - Wörter finden, welches Punkt und entsprechender Pre / Suffix hat? Java Basics - Anfänger-Themen 30
M Regex für bestimmte Wörter bzw. bestimmte Zeichen erstellen Java Basics - Anfänger-Themen 5
N Wörter und Zahlen nach speziellen Wörtern ausgeben Java Basics - Anfänger-Themen 11
S spezielle Wörter aus Liste entfernen Java Basics - Anfänger-Themen 2
J Wörter aus Textdatei suchen Java Basics - Anfänger-Themen 2
CptK Datentypen Verdrehte Wörter wieder herstellen Java Basics - Anfänger-Themen 21
CptK Variablen Wörter erschließen Java Basics - Anfänger-Themen 7
B String: suche nach Wörter und in List<String> speichern Java Basics - Anfänger-Themen 3
Orkanson Methoden String in Wörter zerlegen und Endungen der Wörter überprüfen. Java Basics - Anfänger-Themen 4
JavaNewbie2.0 Tausende Wörter in Arrays automatisch einfügen Java Basics - Anfänger-Themen 10
E Datei einlesen und bestimmte Wörter ausgeben Java Basics - Anfänger-Themen 2
DestinatioN Problem beim splitten eines Satzes in Wörter und die Wörter in Buchstaben Java Basics - Anfänger-Themen 2
A Wie am effizientesten bzw. schnellsten Namen/Wörter sortieren? Java Basics - Anfänger-Themen 1
I String teilen und zwei Wörter generieren Java Basics - Anfänger-Themen 1
I String trennen und verschiedene Wörter holen Java Basics - Anfänger-Themen 6
T Eingegebene Wörter ausgeben? Java Basics - Anfänger-Themen 3
T Wörter mit @ als Zeichen finden Java Basics - Anfänger-Themen 13
J Alle Wörter der Länge n mit 0 und 1 Java Basics - Anfänger-Themen 17
G wörter speichern Java Basics - Anfänger-Themen 12
T Erste Schritte einzelne Wörter aus textdatei lesen... Java Basics - Anfänger-Themen 4
C Wörter aus einer txt datei lesen Java Basics - Anfänger-Themen 19
C String Arrays - häufigste Wörter Java Basics - Anfänger-Themen 10
T Erste Schritte Eingelesenen Satz - Wörter und Leerzeichen getrennt in 2x Array's Java Basics - Anfänger-Themen 7
K Anzahl Wörter in Zeile Java Basics - Anfänger-Themen 24
F wörter trennen und in txt-file schreiben Java Basics - Anfänger-Themen 5
J Von einem String einzelne Wörter speichern Java Basics - Anfänger-Themen 6
R Wörter-KarteiSystem/Vokabel Trainer Source Fragen Java Basics - Anfänger-Themen 9
A Wörter umgekehrten Reihenfolge ausgeben Java Basics - Anfänger-Themen 3
P Zwei Wörter vergleichen Java Basics - Anfänger-Themen 11
Screen Wie lese ich Wörter ein? Java Basics - Anfänger-Themen 6
C Wörter suchen Java Basics - Anfänger-Themen 4
M Anzahl von Wörter in einer eingelesenen Datei Java Basics - Anfänger-Themen 10
S Regex, Wörter ersetzen Java Basics - Anfänger-Themen 2
S Welche Bedeutung haben diese Wörter? Java Basics - Anfänger-Themen 2
S Zeilen, Zeichen, Wörter Java Basics - Anfänger-Themen 3
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
M Häufigkeit von Wörtern zählen Java Basics - Anfänger-Themen 6
Cassy3 Binäre Bäume Rekursiv durchlaufen und bestimmte Elemente Zählen Java Basics - Anfänger-Themen 6
D spezifische Knoten in einem Baum zählen Java Basics - Anfänger-Themen 9
F Werte in einer Arraylist Zählen Java Basics - Anfänger-Themen 2
S Java Methodenaufrufe zählen Java Basics - Anfänger-Themen 4
P Doppelte werte in einer Liste zählen Java Basics - Anfänger-Themen 11
S Methoden Methodenaufruf rekursiv zählen Java Basics - Anfänger-Themen 4
J Methoden Positive Werte zählen Java Basics - Anfänger-Themen 3
H Buchstaben zählen Java Basics - Anfänger-Themen 9
Poppigescorn Häufigkeit einer zahl zählen Java Basics - Anfänger-Themen 5
HighLife Bestimmte Werte aus Array zählen Java Basics - Anfänger-Themen 15
O Attribute die Methoden zählen Java Basics - Anfänger-Themen 5
X Game of Life Nachbarn zählen Java Basics - Anfänger-Themen 20
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
S Binärbäume knoten zählen Java Basics - Anfänger-Themen 16
K Counts zählen Java Basics - Anfänger-Themen 23
Kirby.exe Anzahl vorkommender Elemente im Array zählen Java Basics - Anfänger-Themen 9
J Zeichen im String zählen Java Basics - Anfänger-Themen 3
G Binärer Suchbaum Knoten zählen Java Basics - Anfänger-Themen 1
N Zeichen in einem Textfeld zählen und hinterlegen Java Basics - Anfänger-Themen 6
E Knoten eines Baumes unter Bedinung zählen Java Basics - Anfänger-Themen 2
T x Schritte zählen Java Basics - Anfänger-Themen 18
P Schlüsselworte Zählen und Zuweisen von eingelesenen Zahlen Java Basics - Anfänger-Themen 1
A In einem String alle Eigennamen zählen Java Basics - Anfänger-Themen 6
L Baum Knoten zählen Java Basics - Anfänger-Themen 6
B Objekte zählen/ Vererbung/ Kopplung/ Interface/ Abstract Class Java Basics - Anfänger-Themen 5
S Zählen der Zeiger auf Objekte Java Basics - Anfänger-Themen 35
S Zeichen zählen kopierter Text Java Basics - Anfänger-Themen 6
B Array - die Häufigkeit der Zahl zählen Java Basics - Anfänger-Themen 9
L Vorherige Objekte zählen und ausgeben Java Basics - Anfänger-Themen 11
L Diphthonge zählen... Java Basics - Anfänger-Themen 5
O ELOPS Zählen Java Basics - Anfänger-Themen 1
S Rekursives Zählen einer Zahl Java Basics - Anfänger-Themen 8
X Quick Sort - Vergleichsoperationen zählen Java Basics - Anfänger-Themen 0
K alle Vorkommen einer bestimmten Ziffer in einer Zahl zählen Java Basics - Anfänger-Themen 2
O Großbuchstaben im Satz zählen Java Basics - Anfänger-Themen 6
S zahl hoch und runter zählen per button Java Basics - Anfänger-Themen 25
N Zählen von Rationalen Werten eines Arrays Java Basics - Anfänger-Themen 10
Y for-Schleife zählen Java Basics - Anfänger-Themen 6
K Probleme mit Sortieren und dem Zählen Java Basics - Anfänger-Themen 13
S Vererbung Objekte von Ober - und Unterklassen zählen Java Basics - Anfänger-Themen 3
F SubString in String zählen Java Basics - Anfänger-Themen 3
C Im Array zählen und verändern Java Basics - Anfänger-Themen 5
O Zählen der while-Scheife Java Basics - Anfänger-Themen 3
P bytes aus einem InputStream zählen Java Basics - Anfänger-Themen 2
G Erste Schritte Einen Array absuchen und Buchstaben zählen Java Basics - Anfänger-Themen 17
F Problem mit Tabulatoren bei Zeilen zählen einer Textdatei Java Basics - Anfänger-Themen 17
F Textdatei einlesen und Zeilen zählen Java Basics - Anfänger-Themen 10
D Groß/KleinBuchstaben zählen Java Basics - Anfänger-Themen 21
D Buchstabe zählen/mappen Java Basics - Anfänger-Themen 3
S Anzahl unterschiedlicher Elemente zählen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben