Sunteți pe pagina 1din 3

Subiecte pentru lucrare de laborator

la tema: Prelucrarea şirurilor de caractere,2018

LUCRAREA DE LABORATOR №
Tema: Prelucrarea şirurilor de caractere
1. Se consideră şirul de caractere S. Să se compună un program care va număra de câte ori secvenţa
de litere ‘cert’ este inclusă în S.
2. Se consideră şirul de caractere S. Să se compună un program care va substitui(înlocui) fiecare
secvenţă de litere ‘tg’ din acest şir prin secvenţa ‘cos’.
3. Se consideră mărimea X de tip char, valoarea căreia este o literă a alfabetului englez. Să se
elaboreze un program care va determina poziţia acestei litere în alfabetul numit, fără a folosi
funcţia Pos.
4. Se consideră şirul de caractere S. Să se compună un program care va determina numărul sumar
de litere ‘a’ şi ‘b’ din stringul S.
5. Se consideră şirul de caractere S. Să se compună un program care va suprima(şterge) fiecare
literă ‘d’ din stringul S.
6. Se consideră şirul de caractere S. Să se compună un program care va substitui(înlocui) în stringul
dat fiecare literă ‘a’ prin ‘b’ şi invers.
7. Se consideră şirul de caractere T. Să se compună un program care va tripla în acest string
fiecare blanc(lacună).
8. Se consideră şirul de caractere T. Să se compună un program care va insera în faţa fiecărei
vocale din stringul T, precum şi după ea –litera ‘p’.
De exemplu, ‘corectitudine’ se va schimba în ‘cpoprpepctpiptpupdpipnpep’.
9. Se consideră şirul de caractere S. Să se compună un program care va substitui fiecare secvenţă
de litere ‘sin’ din acest şir prin secvenţa ‘tg’.
10. Se consideră şirul de caractere T. Să se compună un program care va dubla fiecare secvenţă de
caractere ‘da’ din stringul dat T.
11. Se consideră o literă a alfabetului englez. Să se compună un program care va verifica dacă este
sau nu vocală această literă, fără a folosi funcţia Pos.
12. Se consideră o literă a alfabetului englez. Să se compună un program care va verifica dacă este
sau nu consoană această literă, fără a folosi funcţia Pos.
13. Se consideră un caracter imprimabil al codului ASCII. Să se compună un program care va
răspunde este sau nu literă a alfabetului englez acest caracter, fără a folosi funcţia Pos.
14. Fie dat un şir de caractere S din cel mult 250 caractere. Scrieţi un program care verifica, dacă
şirul S este palindrom, adică şirul citit de la stânga spre dreapta, coincide cu şirul citit de la
dreapta spre stânga. Exemple de cuvinte palindrom: ‘COJOC’, ‘CAZAC’, ‘POTOP’, ‘ROTOR’.
15. Se consideră şirul de caractere T. Să se compună un program care va afla numărul de cuvinte
din acest şir. Cuvintele sunt separate printr –un singur spaţiu.
16. Se consideră şirul de caractere T. Să se compună un program care răspunde ’Da’ sau ’Nu’ în
dependenţă de faptul se conţine sau nu în T combinaţia de litere ’liter’, fără a folosi funcţia Pos.
17. Se consideră şirul de caractere T. Să se compună un program care înlocuieşte fiecare cuvânt
‘sau’ din T cu cuvântul ’ori’. Cuvintele sunt separate printr –un singur spaţiu.
18. Se consideră şirul de caractere T, format din mai multe cuvinte despărţite prin mai multe
lacune. Să se compună un program care va înlocui în acest şir lacunele dintre cuvinte printr –o
singură lacună. Şirul modificat de afişat pe ecran.
19. Se dă un număr natural N. Alcătuiţi un program care va forma un alt număr K, ce se
deosebeşte de N prin faptul că nu conţine cifre de ’2’, şi ’4’, păstrând consecutivitatea celorlalte
cifre.
20. Se consideră mărimile S1 şi S2 de tip String. Să se compună un program ce realizează funcţia
Pos din limbajul Turbo Pascal, adică returnează poziţia primei întâlniri a şirului S1 în şirul S2.
21. Se consideră o expresie algebrică memorată în variabila T de tip String. Să se compună un
program care verifică dacă în şirul T sunt aplicate corect parantezele rotunde.
Exemple: ‘(12+ab(c-d)/5 -67) +(a+b)’ –corect; ‘(12+ab(c-d)/5 -67) +)a+b(’ –incorect.

22. Se consideră un şir de caractere S, ce reprezintă o expresie aritmetică cu un singur operator


binar(+,-,* sau /). Să se compună un program care evaluează această expresie. De exemplu, dacă
S = ‘234+153’, se va obţine 387.
23. Se consideră şirul de caractere S format din litere mici şi mari ale alfabetului latin. Să se
compună un program care transformă literele mari în literele respective mici.
24. Se consideră tabloul A format din n(<=20) cuvinte spaţiu. Să se elaboreze un program care
va inversa fiecare cuvânt din tabloul dat.
25. Se consideră o propoziţie P formată din cuvinte separate prin spaţiu. Să se compună un program
care determină cel mai lung şi cel mai scurt cuvânt din P.
26. Se consideră un şir de caractere S, format din cel mult 80 de litere. Să se compună un program
care codifică acest text după regula: fiecare literă se înlocuieşte cu numărul ei de ordine din
alfabet(număr format din două cifre). De exemplu, pentru cuvântul ‘Abac’ se va obţine codul
01020103.
27. Fie un şir de caractere S, format din cel mult 80 de litere a fost codificat după regula: fiecare
literă s-a înlocuit cu numărul ei de ordine din alfabet(număr format din două cifre). Să se compună
un program care va realiza decodificarea şirului S. De exemplu, pentru codul 01020103 va
obţine cuvântul ‘Abac’.
28. În tabloul T[1..n] sunt amplasate numele elevilor unei clase. Elaboraţi un program care
răspunde ‘Da’ dacă în clasă sunt măcar doi elevi cu acelaşi nume şi ‘Nu’ dacă nici un nume nu se
repetă.
29. Se consideră şirul de caractere T. Să se compună un program care va afişa cuvintele distincte
şi numerele de apariţii ale lor în şirul T. Cuvintele sunt separate printr –un singur spaţiu.
30. Se consideră cuvintele A şi B. Să se compună un program care stabileşte dacă în componenţa
cuvintele A şi B figurează aceleaşi litere. De exemplu, cuvintele ‚’ARC’ şi ’RAC’ sunt formate
din aceleaşi litere. Dacă o literă se repetă într-un cuvânt de câteva ori, ea trebuie să se repetă tot
de atâtea ori şi în celălalt cuvânt.
31. Se consideră şirul de caractere S format din litere mari ale alfabetului englez şi spaţii. Elaboraţi
un program care codifica şirul în studiu după următoarele reguli:
– fiecare literă de la ‘A’ până la ’Y’ se înlocuieşte prin succesorul ei din alfabet;
– fiecare literă ‘Z’ se înlocuieşte prin litera ‘A’;
fiecare spaţiu se înlocuieşte prin ‘-’.
32. Elaboraţi un program care descifrează şirul cifrat conform regulilor din problema 25.

33. Se consideră un text T cu n linii de lungime arbitrară. Să se compună un program care va


reforma textul astfel ca în fiecare linie să nu existe mai mult de 50 de caractere. Să se listeze noul
text.
34. Să se elaboreze un program care va realiza defilarea pe ecran a unui mesaj. Mesajul apare din
extrema dreaptă a ecranului, se mişcă spre stânga şi iese prin extrema stângă. Procesul se repetă
până se apasă o tastă.
35. Se consideră două şiruri de caractere S1 şi S2. Să se compună un program care compară aceste
şiruri fără a ţine cont de diferenţa dintre literele mari şi cele mici.
36. Se consideră şirul de caractere T format din cuvinte separate prim spaţiu. Să se compună un
program care determină cu ce literă încep cele mai multe cuvinte din acest şir.
37. Se consideră şirul de caractere S format exclusiv din cifre zecimale. Să se compună un
program care determină numerele de repetări ale fiecărei cifre zecimale în acest şir.
38. Se consideră şirul de caractere S format exclusiv din litere mici ale alfabetului latin. Să se

2
compună un program care determină numerele de repetări ale fiecărei litere în acest şir.
39. Se consideră un şir de caractere S, ce reprezintă o expresie aritmetică formată din numere
întregi şi operatori binari(+,-,* sau /). Să se compună un program care evaluează această
expresie. De exemplu, dacă S = ‘234+153-36’, se va obţine 351.

S-ar putea să vă placă și