Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo

Ich habe folgendes Problem,

Ich möchte in C++ ein Programm entwerfen das von einem eingegebenen Satz die einzelnen Wörter in Subsantive und Verben unterscheiden kann (zu den Verben zählen hier auch Adjektive, Pronomen, Artikel...) und die einzelnen Wörtern sollen ebenfalls analysiert werden (also die einzelnen Buchstaben sollen unterschieden werden in Vokale und Konsonanten).

Ich habe folgenden Ansatz:

Die einzelnen Buchstaben beschreiben als Vokale und Konsonanten und um Verb und Substantiv zu unterscheiden den ersten Buchstaben überprüfen ob er groß oder klein geschrieben ist . Den Satz würde ich als Listenelement eingeben. Mein Problem besteht aber darin, dass ich noch nicht so viele Erfahrungen in C++ besitze, deshalb möchte ich um eure Hilfe bitten

Hier mein bisheriger Quelltext

#include <cstdlib>

#include <iostream>

using namespace std;

struct WBA+SBA // Wortbauanalyse und Satzbauanalyse

{

int Inhalt

struct WBA+SBA *next;

*Wurzel, *Le, *Zeiger;

}

void Zeiger()

{

a=Vokal;

e=Vokal;

i=Vokal;

o=Vokal;

u=Vokal;

b=Konsonant;

c=Konsonant;

d=Konsonant;

f=Konsonant;

g=Konsonant;

h=Konsonant;

j=Konsonant;

k=Konsonant;

l=Konsonant;

m=Konsonant;

n=Konsonant;

p=Konsonant;

q=Konsonant;

r=Konsonant;

s=Konsonant;

t=Konsonant;

v=Konsonant;

w=Konsonant;

x=Konsonant;

y=Konsonant;

z=Konsonant;

ä=ae;

ö=oe;

ü=ue;

}

int main(int argc, char *argv[])

{

char* text=new text;

getline (cin, dateiname);

cin>>"Hier Satz eingeben\n";

system("PAUSE");

return EXIT_SUCCESS;

}

(Unvollständig)

Ich danke schonmal im vorraus

Ich würde hier nicht so beginnen, sondern eine Grammatik für das Problem entwerfen. Die Beschreibung einer solchen Grammatik geschieht mit Erweiterte Backus-Naur-Form ? Wikipedia

Über einen Lexikalischer Scanner ? Wikipedia wird dann Dein eingegebener Satz in die entsprechenden Tokens anhand der Grammatik zerlegt (für C/C++ würde man Flex nehmen). Um die erzeugten Tokens zu verarbeiten kann man GNU Bison ? Wikipedia verwenden. Dadurch kannst Du dann anhand Deiner Grammatik nun die Daten korrekt verarbeiten.

Dein Ansatz nur via Gross- und Kleinschreibung zu arbeiten ermittelt nicht Substantive, denn jeder Satzanfang wird groß geschrieben oder nach einem Doppelpunkt schreibt man ebenfalls groß. Du ignorierst ggf. Tippfehler o.ä.

Wenn Du es so einfach machen willst, dann kannst Du einfach anhand eines Separators den String auftrennen (z.B. geht so etwas via Boost ). Dann musst nur die erzeugte Liste einmal durchlaufen und eben bei jedem Wort den ersten Buchstaben prüfen. Aber hier wäre das Problem mit den genannten Fehlern.

Hallo,

mal 2 Fragen/Anmerkungen:

Wenn es nur Vokale und Konsonanten gibt, dann reicht es eines von beiden festzulegen, das Andere ergibt sich automatisch.

Welchen Sinn verfolgt diese Substantiv & Co. Bestimmung?

Gruß Martin

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.