Sunteți pe pagina 1din 17

1. Scrie un program care afiseaza pe ecran o urare pentru persoanele dragi!

Exemplu: ”Sarbatori fericite!” => programul afiseaza: Sarbatori


fericite!

2. Scrie un program care citește 2 numere natural și determină suma lor.

Exemplu: a=3, b=7 => programul afiseaza: s=10 -> (3+7=10)

3. Scrie un program care citește 2 numere natural și determină difernta lor.

Exemplu: a=7, b=3 => programul afiseaza: s=4 -> (7-3=4)

4. Scrie un program care citește 2 numere natural. Afișați suma, diferenţa,


produsul şi câtul lor, în această ordine, separate prin câte un spațiu.

Exemplu: a=15, b=3 => programul afiseaza: s=18, d=12, p=45, c=5

5. Într-un brad sunt a globuri albe, de două ori mai multe globuri roșii, globuri
verzi cu 4 mai puține ca numărul de globuri roșii. Câte globuri avem albe, rosii
sau verzi? Dar cate globuri sunt în total?

Exemplu: glouri_albe=7 => programul afiseaza: glouri_albe=7,


glouri_rosii =14, glouri_verzi=10, Total 31 globuri

6. Într-o clasă sunt F fete și B băieți. Fiecare fată citește 3 pagini pe zi și fiecare
băiat citește 2 pagini pe zi. Câte pagini vor citi copii în n zile?

Exemplu: F=7, B=5, N=3 => programul afiseaza: c= 93

7. Într-un parc sunt n alei. Pe fiecare alee sunt n arbori. Fiecare arbore are n
crengi. Pe fiecare creanga sunt n cuiburi. În fiecare cuib sunt n păsări. Câte
păsări sunt în parc?
Exemplu: n=3 => programul afiseaza: pasari= 243
1
8. Într-o curte sunt câini, pisici și găini. Se știe că numărul de pisici este egal cu
dublul numărului de câini, iar numărul de găini este egal cu dublul numărului
de pisici. Dacă în curte sunt C câini, câte animale sunt în curte? Dar din fiecare
animal?

Exemplu: câini =3 => programul afiseaza: câini =3, pisici =6, găini =12,
Total 21 globuri

9. O firmă are două tipuri de camioane: camioane de tipul 1, care pot


transporta câte t1 tone de marfă pe zi, și camioane de tipul 2, care pot
transporta câte t2 tone de marfă pe zi. Știind că firma are n camioane de tipul
1 și m camioane de tipul 2, câte tone de marfă pot transporta camioanele
firmei în z zile.
 t1*n --> reprezinta cat transporta n camionane te tipul t1
 t2*m--> reprezinta cat transporta m camioane te tipul t2
 (t1*n+t2*m)*z--> reprezinta cat transporta n camioane de tipul t1 si
m camioane de tipul t2 in z zile

Exemplu: t1 =2, t2 =3, n 4=, m =6, z=3 => programul afiseaza: t= 78

10. Se dau două numere naturale x și y determinați valoarea care trebuie


adunată la x pentru a obține triplul lui y.

Exemplu: x=5, y=12 => programul afiseaza: n=31

11. Se citesc numere naturale pana cand se introduce valoarea 0. Calculati si


afisati media aritmetica a numerelor.

Exemplu: 3 5 6 0 => programul afiseaza: n= 4.667

12. O cutie cu bomboane costă x lei. Ionel are N lei. Determinați câte cutii cu
bomboane poate cumpăra Ionel și câți lei trebuie să mai primească pentru a
cumpăra încă o cutie.

2
Exemplu: x=4, N=9 => programul afiseaza: cutii=2, lei_pt_o_cutie = 3

13. Pe planeta Saturn anul durează z zile. Gigel își serbează ziua de naștere și
constată că a trăit n zile. Câte lumânări va avea tortul lui Gigel?

Exemplu: z=7, n=53 => programul afiseaza: lumânări=7

14. Câte cutii cubice de latură l pot fi suprapuse într-o încăpere de înălțime h.

Exemplu: l=2, h=7 => programul afiseaza: lumânări=3

15. Într-o curte sunt G găini și N oi. Să se determine numărul de capete și


numărul de picioare din curte.

Exemplu: G=3, N=2 => programul afiseaza: c=5, p=14

16. Se citește n număr natural. Calculați suma tuturor numerelor naturale mai
mici sau egale cu n.

Restricții: n ≤ 1000
Exemplu: n=7 => programul afiseaza: s=28 -> (1+2+3+4+5+6+7=28)

17. Scrie un program care citește numărul natural n și determină suma


S=2+4+..+(2n).

Restricții: n ≤ 1000
Exemplu: n=3 => programul afiseaza: s=12 -> (sum = sum +i*2 )

18. Să se scrie un program care citește un numar natural n. Determină daca


numărul este norocos, daca numarul este norocos afișați cele n numere
consecutive . Se numește norocos dacă pătratul lui se poate scrie ca sumă de
n numere naturale consecutive.
Exemplu:
3 este norocos: 3 * 3 = 2 + 3 + 4

3
7 este norocos: 7 * 7 = 4 + 5 + 6 + 7 + 8 + 9 + 10

19. Să se scrie un program care citeşte de la tastatură un număr natural şi


verifică dacă numărul este par sau impar.

Exemplu: n = 2012 => programul afiseaza: 2012 este par

20. Să se scrie un program care determină maximul a două numere întregi citite
de la tastatură.

Exemplu: a=125, b=68 => programul afiseaza: n_max = 125

21. Scrieți un program care determină câte sticle de x litri cu apă trebuie
deschise pentru a umple un vas de y litri.

Exemplu: x=5, y=8 => programul afiseaza: x_litri = 2

22. Se citeste un numar natural n cu cel mult 2 cifre. Afisati pe ecran o figura
formata din caracterul *, ca in exemplul alaturat pentru n=4.
Exemplu:

23. Se citeste un numar natural n cu cel mult 2 cifre. Afisati pe ecran o figura sub
forma de romb formata cu numerele naturale de la 1 la n, ca in exemplul
alaturat pentru n=4.
Exemplu:

4
24. Scrie un program care determina daca un elev este promovat sau corigent.
Programul va afișa pe ecran corigent dacă n este mai mic ca 5, altfel va afișa
promovat.

Exemplu: elev_1 = 6 => programul afiseaza: promovat

25. Se dau trei numere naturale a, b, x. Să se verifice dacă numărul x aparține


intervalului [a,b].

Exemplu: a=4, b=11, c= 8 => programul afiseaza: Numarul 8 apartine


intervalului (4, 11)

26. La concursul de alergat pot participa copii cu vârste între a și b ani, inclusiv.
Ionel are n ani. Stabiliți dacă poate participa la concurs.

Exemplu: a=8, b=18, n= 12 => programul afiseaza: Ionel are 12 ani si


poate participa la concurs

27. Se dau trei numere naturale a, b,c. Să se verifice care este minimul celor 3
numere.

Exemplu: a=28, b=18, c= 39 => programul afiseaza: 18

28. Se dau varstele a doi copii (a si b), afisati care dintre ei este cel mai mare si
cu cat.

Exemplu: a=8, b=4 => programul afiseaza: Primul copil este mai mare
cu 4 ani

29. Se dau 5 numere natural distincte a, b, c, d, e. Să se determine suma celor


mai mari 3 dintre ele.

Exemplu: a=8, b=4, c=1, d=2, e=3 => programul afiseaza: 15

5
30. Să se scrie un program care citeşte de la tastatură trei numere naturale și
determină diferenţa dintre cel mai mare şi cel mai mic.

Exemplu: a=8, b=4, c=3 => programul afiseaza: 5

31. Ana are S lei. O ciocolata costă c lei, iar o napolitană costă n lei. Ana poate
să cumpere fie ciocolate, fie napolitane, cu condiția să cheltuiască întreaga sumă.
Scrieți un program care să citească numerele S, c, n și să afișeze pe ecran:
 "Ciocolate sau napolitane" - dacă Ana poate alege să cumpere ciocolate sau
napolitane;
 Ciocolata - dacă Ana poate să cumpere numai ciocolate;
 Napolitana - dacă Ana poate să cumpere numai napolitane;
 NIMIC - dacă Ana nu poate să cumpere nici ciocolate, nici napolitane.

Exemplu: S=15, c=3, n=2 => programul afiseaza: Ciocolata

32. Se apropie Pastele. Ana a văzut la magazin trei jucării care îi plac: cel mai
mult îi place o dronă, care costă d lei, apoi îi place un robot care costă r lei, apoi o
mașină care costă m lei, d > r > m. De Paste Ana merge la colindat la rude și va primi
de la acestea S lei. Aflați ce jucărie va cumpăra Ana cu banii câștigați: drona,
robotul, masina sau niciuna dintre ele!

Exemplu: S=175, d=250, r=160, m= 100 => programul afiseaza: robot


33. Se citește de la tastatură un număr natural de 3 cifre. Să se stabilească dacă
are toate cifrele egale.

Exemplu: S=175 => programul afiseaza: Numerele nu este egal


S=222 => programul afiseaza: Numerele sunt egal

34. Să se scrie un program care citeşte de la tastatură două numere întregi a şi


b şi verifică dacă cele doua numere au acelaşi semn.

Exemplu: a=5, b=-3 => programul afiseaza: Nu au acelasi semn

6
35. Se citesc 3 numere naturale z l a, reprezentand o data calendaristica in
format zi luna an. Sa se afiseze data zilei anterioare.

Exemplu: a= 3 4 2020 => programul afiseaza: 2 4 2020

36. Să se scrie un program care verifică dacă un an calendaristic precizat este


bisect. Un an este bisect dacă se divide cu 4 și nu se divide cu 100 sau se divide cu
400.
Exemplu: a= 2000 => programul afiseaza: anul este bisect
b= 1990 => programul afiseaza: anul nu este bisect

37. Se citesc numere de la tastatură până la apariția lui zero. Să se determine


câte dintre ele sunt pare.

Exemplu: 1,2,3,4,5,6,0 => programul afiseaza: 3

38. Se dă un număr natural n. Afișați în ordine crescătoare primele n numere


naturale pare nenule.
Exemplu: n=5 => programul afiseaza: 2, 4, 6, 8, 10

39. Se citește un vector cu n elemente, numere naturale. Să se afișeze


elementele cu indici pari în ordinea crescătoare a indicilor, iar elementele cu indici
impari în ordinea descrescătoare a indicilor.

Exemplu: v=7, 9, 2, 6, 8 => programul afiseaza: 9, 6 si 8, 2, 7

40. Se citește n, apoi încă n numere naturale, reprezentând elementele unui


vector. Să se determine maximul şi minimul valorilor elementelor unui vector.

Exemplu: v=5, 2, 9, 3, 6 => programul afiseaza: baloarea minima este


2; valoarea maxima este 9

41. Se citește un vector cu n elemente, numere naturale distincte. Să se afișeze

7
elementele cuprinse între elementul cu valoarea minimă și cel cu valoare maximă
din vector, inclusiv acestea.

Exemplu: v=6, 2, 4, 5, 8 => programul afiseaza: 2 4 5 8

42. Se dă un vector x cu n elemente, numere naturale. Să se construiască un alt


vector, y, care să conțină elementele prime din x, în ordine inversă.

Exemplu: v=13, 15, 5, 29, 40 => programul afiseaza: 13 29 5

43. Scrieti un program care introduce de la tastatura valorile pentre 3 laturi ale
unui triunghi notate a,b, respectiv c si inaltimea acestuia notata cu h.
a) Scrieti o functie care verifica ce fel de triunghi este: echilateral, isoscel sau
oarecare;
b) Scrieti o functie care calculeaza aria triunghiului (functia va fi de tip intreg
si va avea 2 paramentrii intregi - bazei si inaltimea, functia va returna
valoarea ariei);
c) Afisati pe ecran ce fel de triunchi este (echilateral, isoscel sau oarecare) si
aria acestuia.
Incercati sa scrieti programul cat mai usor de citit in consola.
Tips: Pt a rezolva punctul a) verificati cum am scris functia care determina rasp “DA” sau
“NU” pt problema 3 din laboratorul cursului 7.

44. Scrieti un program care citeste de la tastatura dimensiunea unui vector n si


valoarile acestuia de tip intreg. Afisati pe ecran cate elemente pare si impare sunt
in vector. Rezolvati acest exercitiu intr-o functie de tip void, pe care o apelati din
int main() pt a se executa.
Exemplu: pt n= 3 si v[]={1,2,3} => nr elemente cu valoari pare: 1, nr elemente cu valoari
impare: 2

45. La liceul de muzica sunt m clase, fiecare având n elevi. Pentru fiecare elev se
cunoaşte talentul artistic, exprimat printr-un număr natural. Să se determine
cea mai mare valoarea pe care o are talentul artistic al elevilor, notată cu
MAX şi numărul de clase din liceu în care există elevi care au talent maxim.

Exemplu: m= 3 , n =3 (c1: 1, 5, 6) - (c2: 2, 4, 3) - (c3: 3, 6, 1)


8
=> programul afiseaza: t_elev= 6, n_clase = 2

46. Se citește de la tastatură numărul n, iar apoi n numere naturale, separate


prin spaţii, reprezentând elementele primului şir. Apoi citeşte numărul m şi m
numere naturale, separate prin spaţii, reprezentând elementele celui de-al doilea
şir. Determinaţi câte dintre elementele primului şir sunt mai mari decât toate
elementele celui de-al doilea şir.

Exemplu: n= 4 , m =3 (n: 8, 5, 9) - (m: 5, 4, 3) => programul afiseaza: 8, 9

47. Se dă un șir cu n elemente întregi și un număr p. Să se șteargă din șirul X


elementul aflat pe poziția p.

Exemplu: n= 4 , m =2 (n: 5, 2, 9, 6) => programul afiseaza:5, 9, 6

48. Se dă un vector cu n elemente numere naturale. Să se șteargă din vector


toate elementele pare.

Exemplu: n= 5 (n: 5, 2, 9, 6, 7) => programul afiseaza: 5, 9, 7

49. Se citește un șir cu n elemente, numere întregi. Să se șteargă elementele


care se repeat.

Exemplu: n= 5 (n: 5, 2, 5, 6, 7) => programul afiseaza: 5, 2, 6, 7

50. Se citește un șir cu n elemente întregi, valoare întreagă X și un număr p. Să


se insereze pe poziția p în șir valoarea X.

Exemplu: n=4, X=9, p=2 (n: 5, 2, 6, 7) => programul afiseaza: 5, 9, 2, 6, 7

51. Se citește un șir cu n elemente întregi. Să se insereze în șir după fiecare


element par dublul său.

Exemplu: n=4 (n: 5, 2, 6, 7) => programul afiseaza: 5, 2, 4, 6, 12, 7

9
52. Citeste un vector de la tastatura dupa care verifica daca o valoare introdusa
este sau nu memorata in vectorul deja citit. Daca numarul este in vector
elimina dublura.

53. Se afiseaza elementele de pe pozitiile pare ale unui vector, dupa care, in
continuarea lor, cele de pe pozitii impare.

54. Verifica daca un numar citit de la tastatura se gaseste sau nu intr-un vector
citit si el de la tastatura.
Nota: Se ordoneaza crescator valorile din vector. Apoi, se lucreaza prin injumatatiri succesive. Mai intai
se compara numarul cautat cu elementul din mijloc. Daca este egal cu elementul din mijloc, s-a gasit
numarul si programul se termina. Daca nu este egal, se verifica daca numarul cautat este mai mare
decat elementul din mijloc, caz in care cautam mai departe numai in cea de-a doua jumatate. Daca
numarul cautat este mai mic decat elementul din mijloc, cautam mai departe numai in prima
jumatate.

55. Scrie un program care numara aparitiile unui caracter intr-un sir .

56. Scrie 2 programe care ilustreaza utilizarea functiile strrchr (), strchr ().
Programul calculeaza pozitia pe care o ocupa in sir prima aparitie a caracterulului
cautat, daca este gasit in sir sau afiseaza un mesaj, daca acest caracter nu este gasit
in sir.

57. Scrieti un program ajuta un copil sa invete tabla inmultirii pana la 10.
Programul genereaza aleator doua numere naturale mai mici decat 10, le va afisa
pe ecran si il va intreba pe copil cu cat este egal produsul lor. Daca raspunsul este
incorect, il intreaba pe copil daca doreste sa mai incerce sau daca doreste sa afle
raspunsul corect. Programul repeta invatarea pana cand copilul raspunde cu ‘N’
(nu).
Nota:
Pentru generarea aleatoare a doua numere naturale mai mici decat 10 va trebui sa se initializeze generatorul de
numere aleatoare, cu ajutorul functiei randomize() declarata in fisierul antet stdlib.h astfel:
void randomize(void);
ceea ce inseamna ca functia nu are parametrii si nu returneaza nici un rezultat.
Dupa initializarea generatorului de numere aleatoare, pentru a genera un numar aleator se va utiliza functia
random (), declarata in fisierul antet stdlib.h astfel:
int random (int x);
Functia returneaza o valoare aleatoare de tip int, cuprinsa intre 0 si x-1.

10
58. Inversarea unui sir de de caractere. Dandu-se un sir de caractere citit de la
tastatura, functia recursiva creez_invers () va crea un nou sir care este inversul
sirului citit si apoi va afisa pe ecran sirul de caractere creat in ordine inversa.

59. Scrieti un program care citeste de la tastatura doua siruri de caractere de


maximum 100 de litere mici si verifica utilizand apeluri ale functiei aparitii
daca cele doua siruri sunt anagrame (contin aceleasi litere, dar in ordine
diferita). Se cere afisarea mesajului anagrame in caz afirmativ si a mesajului
nu sunt anagrame in caz contrar.
Exemplu: ioana si oania => programul afiseaza anagrame

60. Sa se scrie un program care citeste de la tastatura un cuvant de cel mult 30


de litere mici ale alfabetului englez si care sa afiseze pe ecran, pe linii diferite,
cuvintele obtinute prin stergerea succesiva a vocalelor in ordinea alfabetica
a lor (a, e, i, o, u). La fiecare pas se vor sterge toate aparitiile din cuvant ale
unei vocale.
Exemplu: daca se citeste cuvantul programare se va afisa:
 progrmre (s-au sters cele doua aparitii ale vocalei a)
 progrmr (s sters unica aparitie ale vocalei e)
 prgrmr (s sters unica aparitie ale vocalei o)

61. Scrieti un program care creaza doua functii cu acelasi nume combin_v care
combina doi vectori A si B de n elemente, conform relatiilor urmatoare:
A[i] = A[i] + B[i]
B[i] = A[i] *B[i], pentru orce i = 0, 1, 2, …, n-1
Prima functie combin_v accepta vectori de tip int, in timp ce a doua
functie combin_v accepta vectori de tip float.

11
Exp:

62. Ionel are p iepuri pe care vrea să-i distribuie în n cuști astfel încât:
 toți iepurii să intre în cuști
 fiecare cușcă să conțină cel puțin un iepure
 să nu existe două cuști cu același număr de iepuri
 diferența dintre numărul maxim de iepuri dintr-o cușcă și numărul minim de
iepuri dintr-o cușcă să fie minimă
Determinați o modalitate de distribuire a iepurilor în cuști care să respecte
condițiile de mai sus.

Exemplu: n = 3, p = 10 => programul afiseaza: 2 3 5

63. Într-un grup sunt n persoane, numerotate de la 1 la n și fiecare are cont pe


Facebook. Ele îsi dau like-uri unul altuia, dar o persoană nu-și poate da like ei însăși.
Despre fiecare pereche de persoane i j se știe câte like-uri a dat persoana i
persoanei j. Să se determine persoana care a primit cele mai multe like-uri.
Programul citește de la tastatură numărul n, iar apoi n șiruri cu câte n-1 numere
naturale. Al ilea șir reprezintă numărul de like-uri date de persoana i, celeorlate
persoane, în ordine.

Exemplu: n=3 (n: 1, 1, 2, 1, 1, 3) => programul afiseaza: 2

12
64. Studentii dintr-o facultate vor să facă un top al celor mai bune 10 melodii
pentru fiecare săptămană. Ajutaţi-i să realizeze un program prin care se
introduc n date de forma:
 titlu melodie
 interpret
 număr puncte acumulate
 număr puncte primite
Sa se afiseze primele 10 titluri, in ordinea descrescătoare a punctelor.

65. Intr-o grupă de maxim 25 de studenti, fiecare a primit cate unul din
calificativele suficient, bine şi foarte bine la fiecare din cele 10 materii.
Datele se introduc in calculator sub forma:
 nume student
 număr de calificative suficient (s)
 număr de calificative bine (b)
 număr de calificative foarte bine (fb)
Să se afişeze in ordine descrescătoare statistica notării (numărul de suficient,
de bine şi foarte bine) şi numele studentului cu cele mai multe calificative fb.

66. Se da o lista cu studentii care au sustinut examenul la Fundamentele


programarii. Pentru fiecare student se cunosc: numele, prenumele, nota
obtinuta. Se cere sa se ordoneze studentii descrescator dupa nota obtinuta
si sa se afiseze studentii promovati. Sa se calculeze media aritmetica a
notelor obtinute.

67. La o staţie meteo se trec temperaturile inregistrate intr-o saptamana. Să se


prelucreze aceste date afişandu-se zilele in care temperatura a fost maximă.

68. Se da o matrice cu n linii si m coloane. Calculeaza suma tuturor elementelor.

69. Se da o matrice cu n linii si m coloane. Elimina o linie si o coloana.

70. Determinare valoare minimă dintr-o matrice utilizand o funcţie.

71. Se introduc de la tastatură mai multe şiruri formate din cuvinte despărţite

13
prin spaţii, până la tastarea sirului “terminat”. Să se afişeze numărul de cuvinte din
fiecare şir precum şi numarul caracterelor din fiecare cuvânt al şirului, utilizându-
se referirea caracterelor cu ajutorul unui pointer la şir.

72. Se considera urmatoarele declaratii şi conventii:


typedef int vector[20]; x – este un vector (sir de elemente) n – este lungimea sa
(n>=1)
Se cere sa se scrie functii recursive pentru a determina, pentru un vector x de
lungime n, urmatoarele:
a. citirea componentelor sirului
b. afisarea elementelor din sir
c. suma componentelor
d. produsul componentelor
e. numarul componentelor negative
f. produsul componentelor pozitive
g. media aritmetica a elementelor
Exemplu:

73. În jocul LOL participă două echipe a câte 5 jucători notați a,b,c,d,e, respectiv
A,B,C,D,E. Fiecare jucător are o valoare, inițial 300, și un câștig, inițial 0. În joc au
loc lupte între perechi de jucători din echipe diferite, în urma fiecărei lupte fiind un
învingător și un învins. După luptă, câștigul învingătorului crește cu valoarea
învinsului, valoarea sa crește cu 50 de bani, fără să depășească 1000 de bani, iar
valoarea învinsului scade cu 50 de bani, neputând deveni mai mică decât 0.

14
74. Dorel este acum în clasa a XII-a și nu dorește să dea examenul de Bacalaureat,
ci să ajungă direct la vacanța de vară. Pentru a se teleporta în timp și a ajunge la o
zi după examen, acesta se folosește de o aplicație pentru mobil. Însă doar elevii
foarte inteligenți au dreptul să călătorească în timp, motiv pentru care Dorel
trebuie să dovedească că face parte din acea categorie. Aplicația îi generează un
număr natural aleatoriu, N și N cifre aleatorii. Pentru a intra în aplicație, Dorel
trebuie să introducă codul de securitate, care este cel mai mic număr care se poate
forma din toate cele N cifre. Dorel nu poate face singur acest lucru, dar își dorește
mult să vină vacanța de vară și vă roagă pe voi să-i generați codul de securitate.

Fișierul de intrare vacanta_de_vara.in conține pe prima linie numărul N, iar pe a


doua linie N numere naturale separate prin spații.

Exemplu: date in fisier: (n1:10) – (6 0 0 7 4 1 0 1 0 8) => programul


afiseaza: 1000014678

75. Se considera fisierul BAC.TXT ce contine un sir crescator cu cel mult un


milion de numere naturale de cel mult noua cifre fiecare, separate prin cate
un spatiu. Sa se scrie un program care citeste din fisier toti termenii sirului
si afiseaza pe ecran, pe o singura linie, fiecare termen distinct al sirului urmat
de numarul de aparitii ale acestuia in sir. Valorile afisate sunt separate prin
cate un spatiu.
Exemplu: fisierul BAC.TXT are urmatorul continut:
1 1 1 5 5 5 5 9 9 11 20 20 20
programul afiseaza: 1 3 5 4 9 2 11 1 20 3
Unde: 1 apare de 3 ori, 5 apare de 4 ori, 9 apare de 2 ori, 20 apare de
3 ori.
76. Fisierul text bac.txt contine, pe o singura linie, cel mult 1000 de numere
naturale nenule, numerele fiind separate prin cate un spatiu. Scrieti un
program care citeste de la tastatura un numar natural nenul n si numerele
din fisierul bac.txt si care afiseaza pe ecran, separate prin cate un spatiu,
toate numerele din fisier care sunt divizibile cu n. Daca fisierul nu contine
niciun astfel de numar, atunci se va afisa pe ecran mesajul NU EXISTA.

Exemplu: fisierul bac.txt contine numerele: 3 100 40 70 25 5 80 6 3798,


15
pentru n=10 atunci pe ecran se va afisa: 100 40 70 80

77. Să se scrie un program care gestionează o stivă de numere întregi. Inițial


stiva este vidă. Programul va citi de la tastatură o listă de operații, care pot
fi:
 push X – adaugă valoarea întreagă X pe stivă;
 pop – elimină elementul din vârful stivei;
 top – afișează elementul din vârful stivei.
Programul va realiza asupra stivei operațiile citite, în ordine. Afișările se fac pe
ecran, câte o valoare pe linie.
Programul citește de la tastatură un număr n, apoi cele n operații.
Programul va afișa pe ecran numere rezultat ale operațiilor top, câte unul pe o
linie.

Exemplu: 12, push 5, push 4, top, push 7, push -5, pop, top, pop, top,
push 11, top, pop => programul afiseaza: 4, 7, 4, 11

78. Gigel are un set de n cuburi. Fiecare cub este marcat cu un număr natural, de
la 1 la n și i se cunoaște lungimea laturii – număr natural. Cu o parte dintre
aceste cuburi Gigel va construi o stivă, astfel:

 fiecare cub se analizează o singură dată, în ordinea numerelor marcate;


 dacă stiva nu conține niciun cub, cubul curent devine baza stivei
 dacă cubul curent are latura mai mică sau egală cu cubul din vârful stivei, se
adaugă pe stivă;

79. Scrieti o functie recursiva cu numele cifre care primeste prin parametrul n
un numar natual si furnizeaza:
- prin parametrul p numarul format cu cifrele pare ale lui n,
- prin parametrul i numarul format cu cifrele impare ale lui n.
Exemplu: 4536597,p,I => programul afiseaza p= 46; i =53597

80. Sa se scrie o functie recursiva care calculeaza si returneaza diferenta dintre


suma elementelor de pe pozitii pare si cea a celor aflate pe pozitii impare

16
dintr-un vector A primit ca parametru impreuna cu n reprezentand numarul
lui de elemente. Elementele tabloului sunt indexate de la 1.

Exemplu: functia primeste tabloul A={4,5,6,3,2,9} cu n=6 => programul


afiseaza: 5 adica (5+3+9)-(4+6+2).

81. Scrieti o functie recursiva care primeste ca paramentru un numar natural n


si returneaza numarul obtinut din n prin eliminarea cifrelor impare.

Exemplu: n=234435 => programul afiseaza: 244

82.

17

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