LUCRAREA DE LABORATOR № Tema: Fişiere Text 1. Să se scrie un program care transcrie liniile nevide ale fişierului text F1.txt în fişierul text F2.txt, păstrând ordinea iniţiala a liniilor. 2.Se consideră fişierul text F.txt. De transcris liniile fişierului F.txt în fişierul G.txt, inserând la începutul fiecărei linii câte un spaţiu. Ordinea liniilor de păstrat. 3. Se consideră fişierele text F.txt şi G.txt ce au acelaşi număr de linii. Să se scrie un program care compară, linie cu linie, conţinuturile fişierelor date, afişând numerele de ordine ale celor care nu sunt identice. 4. De interschimbat conţinutele fişierelor text F1.txt şi F2.txt utilizând un fişier auxiliar H.txt. 5. Se consideră fişierul text F.txt. Să se scrie un program care va afişa prima dintre cele mai scurte linii din F.txt şi numărul de spaţii din această linie. 6. Să se scrie un program care va afişa linia de lungime maximală din fişierul text dat F.txt. Dacă în fişier sunt mai multe linii de lungime maximală, de afişat şi numărul acestora. 7. Se consideră fişierele text F.txt şi G.txt ce au acelaşi număr de linii. Să se scrie un program care compară, linie cu linie, conţinuturile fişierelor date. Dacă toate liniile coincid, de afişat mesajul respectiv, dacă nu, de afişat numărul primei linii, începând cu care fişierele date diferă unul de altul. 8. Se dă fişierul text F.txt. De transcris în fişierul G.txt toate liniile fişierului F.txt, înlocuind în ele caracterul 0 cu caracterul 1 şi invers. 9. Se dă fişierul text F.txt. De transcris în fişierul G.txt liniile inversate ale fişierului F.txt. Ordinea liniilor în fişierul G.txt trebuie să coincidă cu cea a liniilor din fişierul F.txt. 10. Se consideră fişierul text F.txt. De transcris liniile fişierului F.txt în fişierul G.txt, suprimând spaţiile situate la sfârşiturile liniilor fişierului sursă. 11. Să se scrie un program care va concatena două fişiere text F1.txt şi F2.txt într-un al treilea fişier text F3.txt. 12. Se dă fişierul text F.txt şi stringul S. De transcris în fişierul G.txt toate liniile fişierului F.txt ce conţin în calitate de subşir stringul S, iar în fişierul H.txt - celelalte, păstrând ordinea reciprocă iniţială a liniilor. 13. Se dau 2 şiruri de caractere X si Y, precum şi un fişier text F.txt. Să se elaboreze programul care copiază fişierul F.txt în fişierul G.txt înlocuind toate apariţiile şirului X cu şirul Y. 14. Se dă fişierul text F.txt. De creat fişierul G.txt, format din fişierul F.txt prin înlocuirea tuturor literelor latine minuscule prin literele respective majuscule. 15. Se consideră un fişier text F.txt. Să se transcrie în fişierul text G.txt liniile de ordin impar din F.txt, iar în fişierul text H.txt - cele de ordin par. 16. Se consideră un fişier text F.txt. Să se creeze două fişiere text G1.txt şi G2.txt în felul următor: liniile fişierului F.txt ce au un număr mai mic sau egal cu 65 de caractere se vor copia identic în fişierul G1.txt, celelalte –în fişierul G2.txt. 17. Se consideră fişierul text F.txt care este alcătuit din linii , lungimile cărora nu depăşesc 60. De compus programul, care completează din dreapta liniile mai scurte de 60 ale fişierului F.txt cu caractere „*”, formând fişierul text F60.txt, toate liniile căruia au lungimea 60. 18. Se dă fişierul text F.txt. De transcris în fişierul G.txt liniile inversate ale fişierului F.txt. 19. Se dă fişierul text F.txt. De transcris în fişierul G.txt conţinutul fişierului F.txt. Ordinea liniilor în fişierul G.txt trebuie să fie inversă în raport cu ordinea liniilor din fişierul F.txt. 20. Se dă fişierul text F.txt. Scrieţi un program care transformă toate literele mari din fişierul dat în litere mici. 21. În fişierul text F1.txt este scris un şir de numere întregi, separate prin spaţii sau sfârşit de linie. De transcris în fişierul text F2.txt toate numerele pozitive din F1.txt, separându-le cu câte un spaţiu sau sfârşit de linie. 22. Se consideră fişierul text F.in, care conţine numere pe mai multe rânduri, numerele de pe acelaşi rând fiind despărţite între ele prin spaţii. Să se compună un program care va crea fişierul F.out, liniile cărui vor conţine numărul de zerouri de pe liniile respective ale fişierului F.in. 23. Se consideră fişierul text F.txt, fiecare linie a cărui conţine două numere întregi şi trei numere reale separate prin spaţii. Elaboraţi un program care afişează suma numerelor întregi şi suma celor reale din fiecare linie pe ecran. 24. Se consideră fişierul text F.txt, fiecare linie a cărui conţine trei numere întregi şi două numere reale separate prin spaţii. Elaboraţi un program care afişează pe ecran numărul numerelor reale din fiecare linie apoi media aritmetică a numerelor întregi din tot fişierul. 25. Se consideră fişierul text F.txt, fiecare linie a cărui conţine trei numere reale ce reprezintă laturile unui triunghi. Elaboraţi un program care înscrie în linia respectivă a fişierului text G.txt tipul triunghiului format (echilateral, isoscel, scalen). 26. Se dă un fişier text F.txt în prima linie a cărei sunt înscrise dimensiunile M( numărul de linii) şi N(numărul de coloane) ale unei matrice A cu elemente numere întregi, iar începând cu a doua linie - însăşi matricea reprezentată pe linii. Numerele sunt separate unul de altul prin spaţii sau sfârşit de linie. De transcris matricea A în fişierul text G.txt, păstrând ordinea liniilor. 27. Se dă un fişier text F.txt în prima linie a cărei sunt înscrise dimensiunile M( numărul de linii) şi N(numărul de coloane) ale unei matrice A cu elemente numere întregi, iar începând cu a doua linie - însăşi matricea reprezentată pe linii. Numerele sunt separate unul de altul prin spaţii sau sfârşit de linie. Să se înscrie, pe 2 linii diferite ale fişierului G.txt, valorile elementelor maximal şi minimal din matricea A. 28. În fişierul text NUMERE.IN sunt înscrise în fiecare rând câte un număr întreg. Scrieţi programul cu ajutorul căruia în fişierul de ieşire NUMERE.OUT se vor înscrie toate numerele cu condiţia că cele ce conţin mai mult de 2 cifre se modifică prin înlăturarea cifrelor din interior. De exemplu, dacă numărul era 287 –rezultatul va fi 27, pentru 8569 – rezultatul va fi 89. 29. Se cunoaşte că fişierul text LUCR.TXT este alcătuit dintr-un număr par de linii şi conţine în liniile impare numele elevilor, iar în cele pare –notele acestora la o lucrare de control. Numărul maxim al elevilor în clasă -40. Scrieţi un program care citeşte fişierul dat şi afişează la ecran notele maximă şi minimă. Intrare: Fişierul text LUCR.TXT Ieşire: La ecran se vor afişa două numere. 30. Se cunoaşte că fişierul text LUCR.TXT este alcătuit dintr-un număr par de linii şi conţine în iniile impare numele elevilor, iar în cele pare –notele acestora la o lucrare de control. Numărul maxim al elevilor în clasă -40. Scrieţi un program care citeşte fişierul dat şi afişează la ecran nota medie şi notele mai mici ca cea medie. Intrare: Fişierul text LUCR.TXT Ieşire: La ecran se vor afişa în prima linie nota medie şi în următoarele linii –notele mai mici ca media. 31. Se cunoaşte că fişierul text LUCR.TXT este alcătuit dintr-un număr par de linii şi conţine în liniile impare numele elevilor, iar în cele pare –notele acestora la o lucrare de control. Numărul maxim al elevilor în clasă -40. Scrieţi un program care citeşte fişierul dat şi creează un fişier text LIST.TXT care conţine 10 linii: în prima linie numele tuturor elevilor cu nota „10”, 2 în a doua linie –cu nota „9” şi a. m. d. Numele în linie se separă prin spaţiu. Intrare: Fişierul text LUCR.TXT Ieşire: Fişierul text LIST.TXT 32. Se consideră un fişier text cu mai multe linii. Să se scrie un program care numără apariţiile în acest fişier a unui cuvânt dat . Separatorii pentru cuvinte sunt: spaţiul, punctul, virgula sau sfârşitul unei linii. 33. Se consideră fişierul text Fis.txt care conţine numere şi cuvinte pe mai multe, fiecare linie având maximum 255 de caractere, iar separatorii fiind spaţiul sau sfârşitul unei linii. Să se realizeze un program care inventariază conţinutul fişierului dat, afişând pentru fiecare linie numărul de cuvinte şi numărul de valori numerice. 34. Se consideră fişierul text F.txt. Să se scrie un program care ignorează divizarea iniţială a fişierului în linii, îl reformatează, divizându-l în linii astfel încât fiecare linie să se termine cu punct sau conţine exact 60 caractere (excepţie, eventual, ultima ) daca printre ele nu-s puncte. 35. Se consideră un fişier text F1.txt. Din liniile fişierului F1.txt să se creeze un alt fişier F2.txt în felul următor: - o linie cu un număr mai mic sau egal cu 65 de caractere se va copia identic în F2.txt; - o linie cu un număr mai mare de 65 de caractere se va transforma în două sau mai multe linii cu câte 65 caractere( excepţie, eventual, ultima ). 36. Se consideră fişierul text F.txt ce conţine propoziţii etichetate. Fiecare etichetă este o secvenţă de simboluri 0..9, urmată de caracterul ':'. Să se scrie un program care să dialogheze cu utilizatorul pentru a realiza oricare din cerinţele următoare: a) Listarea textului considerând propoziţiile în ordinea lor curentă; b) Listarea textului în ordinea crescătoare a etichetelor propoziţiilor; c) Eliminarea unei propoziţii din text, dacă se indică eticheta acesteia. 37. Se consideră fişierul text F.txt ce conţine propoziţii etichetate. Fiecare etichetă este o secvenţă de simboluri 0..9, urmată de caracterul ':'. Să se scrie un program care să dialogheze cu utilizatorul pentru a realiza oricare din cerinţele următoare: a) Listarea unei propoziţii a cărei etichetă se specifică; b) Substituirea unei propoziţii vechi cu una nouă, însă cu aceeaşi etichetă; c) Inserarea unei propoziţii noi după o propoziţie a cărei etichetă se specifică.