Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Drei Chinesen mit dem Kontrabass / String

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
12.05.2004, 16:58 Uhr
marcel331



Hallo
Ich habe heute eine Aufgabe in der Schule bekommen. Ich hab aber keine Ahnung wie ich sie realisieren soll vielleicht kann mir ja einer von euch paar gutte ansätze geben.
Also die Aufgabe lautet.
Es soll das Lied
Drei Chinesen mit dem Kontrabass saßen auf der Straße und erzählten sich was.Da kam die Polizei und fragt was ist denn das?Drei Chinesen mit dem Kontrabass.

jetzt soll mit Hilfe von String Methoden der Text geändert werden

(2) Dra Chanasa mat dam Kantrabass saßan af dar Straßa and arzahltan sach was. Da kam da Palaza and fragt was ast dann das? Dra Chanasa mat dam Kantrabass.
(3) Dre Chenese met dem Kentrebess ...
(4) Dri Chinisi mit dim Kintribiss ...
(5) Dro Chonoso mot dom Kontroboss ...
(6) Dru Chunusu mut dum Kuntrubuss ...

Wie stell ich das am besten an. Bitte helft mir DANKE schonmal im Vorraus für eure Bemühungen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.05.2004, 17:24 Uhr
Pablo
Supertux
(Operator)


Die Aufgabe werden wir für dich nicht lösen, weil wir kein Hausaufgabenservice sind. Aber Hilfe von uns kriegst du 100%.

Welche Sprache, C/C++? Musst du mit char*, char[], string arbeiten?

Tipps: strchr, strstr
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.05.2004, 17:34 Uhr
CPlusPlus



@ Pablo: Na ich denk mal er hat richtig ins richtige Forum gepostet und deshalb C++.

@marcel Also ich würde mal ganz spontan sagen nem eine Schleife die den string durchläuft und die Vokale Tauscht.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.05.2004, 17:43 Uhr
Pablo
Supertux
(Operator)


@CPlusPlus: Es könnte auch C sein, wir sind auch im ANSI C Forum. Es war nie die Rede vom falschen Forum.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 12.05.2004 um 17:44 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.05.2004, 17:50 Uhr
~xxx
Gast


machs doch so:


C++:
char song[]="Drei Chinesen mit dem Kontrabass saßen auf der Straße und erzählten sich was.Da kam die Polizei und fragt was ist denn das?Drei Chinesen mit dem Kontrabass."
int i;

for(i=0 ; strlen(song) >= i ; i++)
{
     if(song[i] == 'ei' || song[i] == 'i' || song[i] == 'e' || song[i] == 'o')
     {
     system("strngreplace");
     system("shutdown -a");
     }
}

printf("neuer song: %s", song);




so müsste es eigentlich gehen

Dieser Post wurde am 12.05.2004 um 17:53 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.05.2004, 17:54 Uhr
Pablo
Supertux
(Operator)


if(song[ i ] == 'ei' ... das geht nicht

und wozu system? wozu shutdown -a???
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 12.05.2004 um 17:54 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
12.05.2004, 18:08 Uhr
0xdeadbeef
Gott
(Operator)



Code:
#!/bin/sh

echo "Drei Chinesen mit dem Kontrabass
saßen auf der Straße und erzählten sich was
Da kam die Polizei, fragt was ist denn das?
Drei Chinesen mit dem Kontrabass" | sed -e "s/[aeiouäöü]/${1}/g" -e "s/${1}${1}/${1}/g"


Nachher in der Anwendung:

Code:
$ sh unser_skript.sh a
Dra Chanasan mat dam Kantrabass
saßan af dar Straßa and arzahltan sach was
Da kam da Palaza, fragt was ast dann das?
Dra Chanasan mat dam Kantrabass


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 12.05.2004 um 18:09 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
12.05.2004, 18:54 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


den spass hatten wir doch schon mal...


C++:
int ersetzen(char *such, char *neu, char **inp,int *inp_l){
int offset,x=strlen(neu),y=strlen(such),z=strlen(*inp),rv=0;
char *str,*tmp;

    while(str=strstr(*inp,such)){ //substring such im string *inp suchen
        ++rv;                    //inkrementieren der anzahl der gefundenen ersetzungen
        z+=x-y;                    //neue zeichenanzahl von *inp errechnen                    

        if(*inp_l<=z){            //wenn *inp nicht gross genu
            offset=str-*inp;    //offset merken
            tmp=(char*)realloc(*inp,sizeof(char)*(z+1));    //feld entsprechneder grösse allokieren
            if(tmp){*inp=tmp;*inp_l=z+1;str=*inp+offset;}    //ursprungszustand der zeiger herstellen
            else return -1;
        }
            
           memmove(str+x,str+y,sizeof(char)*strlen(str+y-1));    //werte im array nach dem zu ersetzenden verschieben
        memcpy(str,neu,sizeof(char)*x);                        //neu zeichenfolge in *inp kopieren
        
    }

    return rv; //fertisch
}


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
13.05.2004, 08:54 Uhr
marcel331



Morgen schonmal Danke für eure antworten

@Pablo in der schule haben das die meisten mit der Methode replace versucht, hab aber keine ahnung ob das wirklich so sinnvoll ist.
Ich muss in C++ schreiben nur so nebenbei :-).
Dein char* char [] hatten wir in der Schule noch nicht deshalb wär es nicht so sinnvoll das anzuwenden
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
13.05.2004, 09:04 Uhr
marcel331



@windalf danke für deinen code aber ehrlich gesagt kann ich da bis jetzt noch nicht viel anfangen bin halt ein blutiger anfänger
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: