Titlul: Siruri de caractere Scris de: Stratulat Alexandru din Martie 01, 2012, 20:51:37 Buna, am si eu o problema. Nu stiu cum sa citesc o matrice de caractere. Adica vreau ca pe fiecare linie a matricii sa citesc unul sau mai multe cuvinte. Am incercat sa fac asta dar nu imi afiseaza nimic dupa aia, deci este prost. Va rog daca puteti dati-mi o secventa de cod unde pe fiecare linie a matricii citesc caractere.
Codul sa fie in C/C++. Titlul: Răspuns: Siruri de caractere Scris de: Ababab din Martie 01, 2012, 20:56:30 Depinde dacă acele caractere au sau nu spații între ele.
Titlul: Răspuns: Siruri de caractere Scris de: Stratulat Alexandru din Martie 01, 2012, 22:20:53 Caracterele pot fi in orice fel(cu spatiu, fara spatiu,semne precum '!,?.') Pot fi propozitii intregi.
Titlul: Răspuns: Siruri de caractere Scris de: Tudor Tiplea din Martie 01, 2012, 23:16:03 Sa zicem ca ai de citit o matrice cu N linii, iar S[j] reprezinta linia j din matrice. Atunci o sa ai ceva in genul:
Pentru citirea cu streamuri: Cod: for (j=1;j<=N;j++) Unde "fin" e fisierul de intrare. Pentru citirea folosind biblioteca <cstdio>: Cod: for (j=1;j<=N;j++) Titlul: Răspuns: Siruri de caractere Scris de: Stratulat Alexandru din Martie 02, 2012, 11:16:50 In primul rand citirea pe care tu ai propus-o se face cu tipul string. Dar nu asta e o problema. Problema este ca programul da eroare la compilare. Si mam mai gandit la o problema: la afisare de unde stiu pana unde il incrementez pe 'j' ? deoarece nu stiu lungimea fiecare linii. Ma gandeam sa mai folosesc o matrice care sa retina lungimile dar mi se pare prea costisitor. Daca aveti idei mai bune nu ezitati sa imi spuneti.
Asta e ceea ce am lucrat pana acum: Cod: #include<fstream> Editat de moderator: Foloseste tagul code atunci cand postezi cod. Titlul: Răspuns: Siruri de caractere Scris de: George Popoiu din Martie 02, 2012, 11:56:09 Cod: #include<stdio.h> gets citeste pana intalneste '\n' pe linie, si returneaza NULL cand ajunge la sfarsitul fisierului. Titlul: Răspuns: Siruri de caractere Scris de: c a e n din Martie 02, 2012, 12:12:30 In sursa ta, nu trebuie sa declari o matrice de string-uri, ci un vector de string-uri. Iar dupa ce ai citit numarul de linii, iti mai ramane un caracter (newline) pe care nu vrei sa-l bagi in matrice, dar care ar fi prima linie citita daca nu scapi de ea. Si scapi de ea citind un caracter nou, dupa ce ai citit n-ul. Incearca sa faci modificarile astea si vezi ce-ti iese. Si nu uita sa faci si afisarea dupa.
|