Ergebnis 1 bis 3 von 3

Thema: Funktionen

  1. #1
    HTML Newbie
    Registriert seit
    09.05.2008
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Funktionen

    Ich habe eine Frage und zwar möchte ich ein Programm schreiben, dass einen String einliest und dann in einer Funktion die Buchstaben a,e,o durch ii,kk,mm ersezten. Das ersetzen funktioniert schon, aber es wird immer wenn ein a durch ii auch der nächste Buchstabe im String überschrieben. Wie kann ich das verhindern und das Array einfach verlängern, dass der nächste Buchstabe überschrieben wird. Das Programm sieht im Moment so auf:

    #include<iostream>
    using namespace std;

    char ersetz(char *arr) {
    int count=0;
    char arr2[100];
    for (int i=0;arr[i]!='\0';i++) {
    if (arr[i]=='a') {
    arr2[i]='i';
    arr2[i+1]='i';
    count++;
    i=i+1;
    }
    else if (arr[i]=='e') {
    arr2[i]='k';
    arr2[i+1]='k';
    count++;
    i=i+1;
    }
    else if (arr[i]=='o') {
    arr2[i]='m';
    arr2[i+1]='m';
    count++;
    i=i+1;
    }
    else {
    arr2[i]=arr[i];
    }
    }
    cout << arr2 << endl;
    cout << count;
    }

    int main() {
    char r;
    char arr[50];
    do
    {
    cout << " Bitte geben Sie die Zeichenkette ein: ";
    cin >> arr;
    ersetz(arr);
    cout << endl << endl;
    cout << " Wollen Sie das Programm nochmals ausfuehren, dann druecken Sie r oder R: ";
    cin >> r;
    cout << endl;
    }
    while (r == 'r' || r == 'R');
    cout << endl << endl << endl;
    return 0;
    }

    Könnte mir vielleicht jemand helfen.
    Vielen Dank im Voraus.
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    HTML Newbie
    Registriert seit
    13.10.2008
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Funktionen

    Hier ne theoretische Idee (programmiere kein C++, verstehe jedoch dein Problem).

    1) Zuerst suchst du nach der Anzahl der Vorkommnisse
    2) Das Ergebniss multiplizierst du mit 2 (wegen aus a wird ii)
    3) Die neue Länge benutzt du um ein neues Array zu erstellen, du merkst dir auch die Positionen der Vorkommnisse
    4) Jetzt schreibst du die Daten jeweils bis zum Ersetzungspunkt in das neue Array rein und dann die entsprechende Ersetzung

    Frei nach dem Motto: Teile und Herrsche

    Klar?

    PS: Gibt bestimmt einen eleganteren Weg, aber wenn du es "zu Fuß" machen willst, dann geht es bestimmt so. Ansonsten mal nach ner lib suchen, die sowas kann, falls du einfach nur ein Interesse daran hast das praktisch zu lösen.

  3. #3
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Funktionen

    Du solltest dir diesen char[]-Typ aus dem Kopf schlagen und die Standard-Bibliothek verwenden, das ist ja auch eine tolle Eigenschaft von C++.
    http://www.cplusplus.com/reference/string/string/
    Damit kannst du das alles machen...

Ähnliche Themen

  1. Friend Funktionen in Komponenten-Funktionen wandeln --Fragen
    Von Epimetheus im Forum Forum für alle anderen Programmiersprachen
    Antworten: 5
    Letzter Beitrag: 30.11.2007, 19:33
  2. Gültigkeit von Funktionen in Funktionen
    Von thomas69 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 25.05.2007, 16:08
  3. alle funktionen von php
    Von WWKiller im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 02.04.2007, 11:24
  4. TAL Funktionen
    Von 00eraser00 im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 3
    Letzter Beitrag: 11.10.2006, 23:23
  5. zip funktionen
    Von phore im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 9
    Letzter Beitrag: 29.03.2006, 11:41

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •