mArt1n Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 Hei! Jeg har en liten idè til et program. En l33t converter! Funker sånn at man skriver inn noe i vanlig skrift, og det kommer som leet under! Jeg er ganske n00b så prøv å forklar litt enkelt.... code, forslag, alt kan være til hjelp!! Takk på forhånd!! Lenke til kommentar
søppel Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 (endret) #include <iostream> #include <string> std::string l33tisize(std::string const& s) { std::string ret = s; for(std::string::size_type pos = 0; pos < ret.size(); pos++) { if(ret[pos] == 'e' || ret[pos] == 'E') ret[pos] = '3'; if(ret[pos] == 'o' || ret[pos] == 'O') ret[pos] = '0'; if(ret[pos] == 'i' || ret[pos] == 'I') ret[pos] = '1'; } return(ret); } // l33tisize() int main() { using namespace std; string s = "Hei!\n" "Jeg har en liten idé til et program. En leet converter!\n" "Funker sånn at man skriver inn noe i vanlig skrift, og det kommer som leet under!\n" "Jeg er ganske noob så prøv å forklar litt enkelt.... code, forslag, alt kan være til hjelp!!\n" "Takk på forhånd!!"; cout << l33tisize(s) << endl; return(0); } // main() Under kjøring: H3i!J3g har 3n lit3n idé til 3t pr0gram. 3n l33t c0nv3rt3r! Funk3r sånn at man skriv3r inn n03 i vanlig skrift, 0g d3t k0mm3r s0m l33t und3r! J3g 3r gansk3 n00b så prøv å f0rklar litt 3nk3lt.... c0d3, f0rslag, alt kan vær3 til hj3lp!! Takk på f0rhånd!! Ganske l33t? .. huhu Endret 19. mars 2004 av søppel Lenke til kommentar
☀ ❄ Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 Ville han ikke lært mer om du bare ga noen hint og tips...? Lenke til kommentar
søppel Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 (endret) #include <iostream> #include <string> std::string l33tisize(std::string const& s) { std::string ret = s; for(std::string::size_type pos = 0; pos < ret.size(); pos++) { if(ret[pos] == 'e' || ret[pos] == 'E') ret[pos] = '3'; if(ret[pos] == 'o' || ret[pos] == 'O') ret[pos] = '0'; if(ret[pos] == 'i' || ret[pos] == 'I') ret[pos] = '1'; } return(ret); } // l33tisize() #define M_buffersize 100 char buf[M_buffersize]; std::string readLine(std::istream& in = std::cin) { std::string ret; while(in.get(buf, M_buffersize)) ret.append(buf); in.clear(); in.ignore(); return(ret); } // readLine() int main() { using namespace std; string s; cout << "Skriv inn noe stuff: "; s = readLine(); cout << l33tisize(s) << endl; return(0); } // main() Endret 19. mars 2004 av søppel Lenke til kommentar
søppel Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 (endret) Myubi: Jeg gidder ikke, blir for mye å skrive. Du kan gi hint & tips om du vil. Edit: hint("Finn en bok"); Endret 19. mars 2004 av søppel Lenke til kommentar
☀ ❄ Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 Martin: Hent teksten inn i en std::string, og bytt ut alle e'er med 3 og alle i'er med 1 osv. Evt. analyser koden til søppel til du forstår alt den gjør Hvis du vil vite HVORDAN du henter inn teksten og bytter ut osv, leser du i boka di. Lenke til kommentar
søppel Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 (endret) Ups -- glømte 'i' ja ... :] Endret 19. mars 2004 av søppel Lenke til kommentar
mArt1n Skrevet 19. mars 2004 Forfatter Del Skrevet 19. mars 2004 Kjempe bra, tusen takk!!! skal prøva å analysere ja! TAKK! Lenke til kommentar
mArt1n Skrevet 19. mars 2004 Forfatter Del Skrevet 19. mars 2004 Jepp det funka! fiksa litt på det da + lagt inn noen nye bokstaver #include <iostream> #include <string> std::string l33tisize(std::string const& s) { std::string ret = s; for(std::string::size_type pos = 0; pos < ret.size(); pos++) { if(ret[pos] == 'e' || ret[pos] == 'E') ret[pos] = '3'; if(ret[pos] == 'o' || ret[pos] == 'O') ret[pos] = '0'; if(ret[pos] == 'i' || ret[pos] == 'I') ret[pos] = '1'; if(ret[pos] == 't' || ret[pos] == 'T') ret[pos] = '7'; if(ret[pos] == 's' || ret[pos] == 'S') ret[pos] = '5'; if(ret[pos] == 'a' || ret[pos] == 'A') ret[pos] = '4'; if(ret[pos] == 'g' || ret[pos] == 'G') ret[pos] = '6'; } return(ret); } #define M_buffersize 100 char buf[M_buffersize]; std::string readLine(std::istream& in = std::cin) { std::string ret; while(in.get(buf, M_buffersize)) ret.append(buf); in.clear(); in.ignore(); return(ret); } int main() { using namespace std; string s; cout << "Skriv inn det du vil ha i l33t: "; s = readLine(); cout << l33tisize(s) << endl; return(0); } Men æ har fortsatt problemet med at æ må åpne programman gjennom CMD for at det ska funk! Som sagt så lukkes dæm etter æ har skrevve inn nå text å trykke enter hvis æ bare dobbel klikke på programmet i mappa. Noen som har en løsning? Bruker Dev - C++ compiler hvis det betyr noe.. Takk! Lenke til kommentar
søppel Skrevet 19. mars 2004 Del Skrevet 19. mars 2004 (endret) Legg til readLine .. ... readLine(); return(0); } ..eller cin.get() : ... cin.get(); return(0); } ..eller system("pause") : ... system("pause"); } Husk at system er deklarert i stdlib.h, så du må "include" denne. Endret 19. mars 2004 av søppel Lenke til kommentar
mArt1n Skrevet 19. mars 2004 Forfatter Del Skrevet 19. mars 2004 Tusen takk søppel!!! det der readLine() stæsjet funke!!! tusen takk!! Lenke til kommentar
Manfred Skrevet 21. mars 2004 Del Skrevet 21. mars 2004 for at programmet skal vente, så kan du jo også legge inn en getch(); eller getche() (med eller uten echo til skjerm)... krever vel include av conio.h om jeg ikke husker feil. Lenke til kommentar
søppel Skrevet 21. mars 2004 Del Skrevet 21. mars 2004 (endret) Bare husk at getch* -funksjonene ikke hører med til standard C eller C++ (tror de, og conio.h, orginalt er Borland-spesifike), så det kan hende din kompiler og ditt bibliotek ikke har disse funksjonene. GCC under Linux har ikke. MinGW (eller Dev-Cpp) under Win32 har heller ikke. Er ikke noe i veien for å laste ned et bibliotek som har disse funksjonene da. Som f.eks. Ncurses-biblioteket. Endret 21. mars 2004 av søppel Lenke til kommentar
☀ ❄ Skrevet 21. mars 2004 Del Skrevet 21. mars 2004 (endret) Ja, getch() er jo enda verre enn system("pause") tilogmed. EDIT: Yay, innlegg 133. 133 er yndlings- / lykketallet mitt Endret 21. mars 2004 av Myubi Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå