Subprograme pascal c
This presentation is the property of its rightful owner.
Sponsored Links
1 / 19

Subprograme PASCAL/C++ PowerPoint PPT Presentation


  • 94 Views
  • Uploaded on
  • Presentation posted in: General

Subprograme PASCAL/C++. Aplicaţii de laborator. (Bac 2009, SIII, Var. 4, p4)

Download Presentation

Subprograme PASCAL/C++

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Subprograme pascal c

SubprogramePASCAL/C++

Aplicaţii de laborator


Problema 1

  • (Bac 2009, SIII, Var. 4, p4)

  • Subprogramulcif, cu doiparametri, primeşteprinintermediulparametruluia un număr natural cu celmult8 cifreşiprinintermediulparametruluib o cifră; subprogramulreturneazănumărul de apariţii ale cifreib înscriereanumăruluia.

  • Exemplu: pentrua=125854 şib=5, subprogramulvareturnavaloarea2.

  • a) Scrieţidefiniţiacompletă a subprogramuluicif.(4p.)

  • b) Scrieţideclarările de date şiprogramul principal Pascal/C++ care citeşte de la tastatură un număr natural n cu exact 8 cifre, fiecarecifrăfiindnenulă, şi care determinăşiafişeazăpeecran, folosindapeluri utile ale subprogramuluicif, celmaimicnumărpalindromcepoate fi obţinutprinrearanjareatuturorcifrelornumăruluin. Dacă nu se poateobţine un palindrom din toatecifrelenumăruluin, programulvaafişapeecrannumărul0. Un număr natural estepalindromdacăesteegal cu numărulobţinutprinscriereacifrelor sale înordineinversă.

  • Exemplu: dacăn=21523531 atunci se vaafişapeecrannumărul12355321, iardacăn=12272351 atunci se vaafişapeecrannumărul0.(6p.)

Problema 1


Problema 2

  • (Bac 2009, SIII, Var. 5, p4)

  • Subprogramulf, cu un parametru:

  • - primeşteprinintermediulparametruluia un număr natural cu celmult8 cifre (a>1)

  • - returneazăcelmaimicdivizor prim al valoriiparametruluia.

  • Exemplu: pentruvaloarea45 a parametruluia, subprogramulvareturnavaloarea3

  • deoarecea=32*5, iarcelmaimicdivizor prim al săueste3.

  • a) Scrieţidefiniţiacompletă a subprogramuluif.

  • b) Scrieţideclarările de date şiprogramul principal Pascal care săcitească de la tastatură un număr natural nenuln (n≤100) şiapoi un şir de n numerenaturale de celmult8 cifrefiecare, toatenumerele din şirfiind strict maimaridecât1. Folosindapeluri utile ale subprogramuluif, programulvadeterminaşivaafişapeecrantoatenumerele prime din şirulcitit. Numerele determinate se vorafişapeecran, separate princâte un spaţiu, înordinecrescătoare a valoriilor. Dacă nu existăastfel de numere se vaafişapeecranmesajulNU EXISTA.

  • Exemplu: pentrun=7, şirul: 1125, 2, 314, 101, 37, 225, 12 peecran se vaafişa:

  • 2 37 101

Problema 2


Problema 3

  • (Bac 2009, SIII, Var. 9, p3)

  • Scrieţidefiniţiacompletă a subprogramuluisub cu doiparametri: n(număr natural,0<n≤50) şik (număr natural, 0<k≤20). Subprogramuldeterminăafişareape o linienouă a ecranului, înordinedescrescătoare, a primelorn numerenaturalenenuledivizibile cu k. Numerelevor fi separate princâtespaţiu.

  • Exemplu: dacăn=3 şik=5 la apelulsubprogramuluise vaafişapeecran:

  • 15 10 5

Problema 3


Problema 4

  • (Bac 2009, SIII, Var. 10, p3)

  • Scrieţidefiniţiacompletă a subprogramuluisub cu treiparametri: n (număr natural,5<n≤30000), a şib; subprogramulfurnizeazăprinintermediulparametrilora şib celemaimaridouănumereprime distinctemaimicidecâtn.

  • Exemplu: dacăn= 28 la apelulsubprogramuluise vafurnizaprinparametrula valoarea23 şiprinparametrulb valoarea19.

Problema 4


Problema 5

  • (Bac 2009, SIII, Var. 13, p4)

  • Se consideră subprogramul P care are doi parametri:

  • – n, prin intermediul căruia primeşte un număr natural de cel mult 9 cifre

  • – c, prin intermediul căruia primeşte o cifră.

  • Subprogramul va furniza tot prin intermediul parametrului n numărul obţinut din n prin eliminarea tuturor apriţiilor cifrei c. Dacă, după eliminare, numărul nu mai conţine nicio cifră sau conţine doar cifre 0, rezultatul returnat va fi 0.

  • a) Scrieţi doar antetul subprogramului P.

  • b) Scrieţi un program cu definiţia completă a subprogramului P.

Problema 5


Problema 6

  • (Bac 2009, SIII, Var. 16, p3)

  • Scrieţidefiniţiacompletă a subprogramuluimultiplucare are 3 parametri: a, prin care primeşte un tablouunidimensional cu maximum 100 de numerenaturalemaimicidecât1000, n, numărulefectiv de elemente ale tablouluişik, un număr natural (k<9). Subprogramulreturneazănumărul de elemente din tablou care suntmultipliainumăruluik şi au ultimacifrăegală cu k.

  • Exemplu: dacăn=6, a=(9,273,63,83,93,123), iark=3, subprogramulvareturnavaloarea4.

Problema 6


Problema 7

  • (Bac 2009, SIII, Var. 17, p3)

  • Scrieţidefiniţiacompletă a subprogramuluiinterval care are 2 parametria şin, prin care primeşte un tablouunidimensional cu maximum 100 de numerenaturalemaimicidecât1000 şirespectivnumărulefectiv de elemente din tabloulunidimensional. Subprogramulreturneazănumărul de elemente din tabloulunidimensional care aparţinintervaluluiînchisdeterminat de primulşirespectivultimul element al tabloului.

  • Exemplu: dacătabloul are 6 elementeşieste de forma (12,27,6,8,9,2), subprogramulvareturnavaloarea5.

Problema 7


Problema 8

  • (Bac 2009, SIII, Var. 18, p3)

  • Scrieţidefiniţiacompletă a subprogramuluicount care are 2 parametriprin care primeşte un tablouunidimensional cu maximum 100 de numererealeşinumărul de elemente din tablou. Subprogramulreturneazănumărul de elemente din tabloulunidimensional care suntmaimarisaucelpuţinegale cu media aritmetică a tuturorelementelor din tablou.

  • Exemplu: dacătabloul are 6 elementeşieste de forma (12, 7.5, 6.5, 3, 8.5, 7.5), subprogramulvareturnavaloarea4. (10p.)

Problema 8


Problema 9

  • (Bac 2009, SIII, Var. 1, p4)

  • Subprogramulsub, cu treiparametri, primeşteprinintermediulparametrului:

  • – v un tablouunidimensional cu celmult100 de componentecememoreazănumereîntregi cu celmult4 cifre;

  • – n un număr natural nenulmaimicsauegal cu 100 cereprezintănumărulefectivde componenteale tablouluiprimitprinintermediulparametruluiv;

  • – a un numărîntreg cu celmult4 cifre.

  • Subprogramulsub returneazănumărulcomponentelortablouluiprimitprinintermediulparametruluiv ale cărorvalorisunt strict maimicidecâtvaloareaparametruluia.

  • Exemplu: pentruvalorilen=5, v=(1,21,9,21,403), a=20 ale parametrilor, înurmaapelului, subprogramuluisub vareturnavaloarea2.

Problema 9


Problema 9 continuare

  • a) Scrieţidefiniţiacompletă a subprogramuluisub. (4p.)

  • b) Să se scrie un program C/C++ care săcitească de la tastatură un număr natural nenuln (n≤100) şin numereîntregi, fiecareavândcelmult4 cifre, şi care, folosindapeluri utile ale subprogramuluisub, săafişezepeecranmesajulDA dacăoricaredouădintrecelen numereîntregicititesuntdistinctedouăcâtedouă, saumesajulNU încazcontrar. Exemplu: pentrun=6 şicelen numerecitite de la tastatură: 47 183 69 8 134 -56

    se vaafişapeecranmesajulDA (6p.)

Problema 9 (continuare)


Problema 10

  • (Bac 2009, SIII, Var. 11, p4)

  • a) Scrieţidoarantetulfuncţieisum care primeştecaparametru un număr natural x cu maximum 9 cifreşireturneazăsumadivizorilornumăruluix.

  • Exemplu: sum(6) are valoarea12 (=1+2+3+6). (3p.)

  • b) Să se scrie un program C/C++ care citeşte de la tastatură un număr natural nenuln şiapoin numerenaturale cu maximum 9 cifrefiecare. Programulcalculează, folosindapeluri ale funcţieisum, şiafişeazăpeecrancâtenumere prime conţineşirulcitit.

  • Exemplu: pentrun=5 şivalorile12 3 9 7 1 se vaafişapeecranvaloarea2 (înşiruldatexistădouănumere prime şianume3 şi7). (7p.)

Problema 10


Problema 11

  • (Bac 2009, SIII, Var. 19, p3)

  • Subprogramularanjareare 2 parametri: a prin care primeşte un tablouunidimensional cu maximum 100 de numererealeşin, numărul de elemente din tablou. Subprogramulrearanjeazăelementeletablouluiunidimensionalastfelîncâttoatevalorile negative să se aflepeprimelepoziţii, iarvalorilepozitiveîncontinuareacelor negative. Ordineaîncadrulsecvenţei de elementepozitive, respectivîncadrulsecvenţei de elemente negative, poate fi oricare. Tabloulmodificatva fi furnizat tot prinintermediulparametruluia.

  • Exemplu: dacătabloul are 6 elementeşieste de forma (12, -7.5, 6.5, -3, -8, 7.5), dupăapel, acestaarputea fi: (-7.5, -3, -8, 12, 6.5, 7.5).

  • Scrieţidefiniţiacompletă a subprogramuluiaranjare. (10p.)

Problema 11


Problema 12

  • (Bac 2009, SIII, Var. 20, p3)

  • Subprogramulnuleare 2 parametri: a, prin care primeşte un tablouunidimensional cu maximum 100 de numereîntregi, cu celmult4 cifrefiecareşin, numărul de elemente din tablou. Subprogramulrearanjeazăelementeletablouluiunidimensionalastfelîncâttoatevalorilenulesă se afle la sfârşitultabloului. Ordineaîncadrulsecvenţei de elementenenulepoate fi oricare. Tabloulmodificatestefurnizat tot prinparametrula.

  • Exemplu: dacăn=6, a=(12,0,0,-3,-8,0), dupăapel, acestaarputea fi: a=(12,-3,-8,0,0,0).

  • Scrieţidefiniţiacompletă a subprogramuluinule. (10p.)

Problema 12


Problema 13

  • (Bac 2009, SIII, Var. 21, p3)

  • Scrieţidefiniţiacompletă a unui subprogram i_primcare primeşteprinsingurulsăuparametru, n, un număr natural din intervalul[2,30000] şireturneazădiferenţaminimăp2-p1 în care p1 şip2 suntnumere prime şip1n  p2.

  • Exemplu: dacăn=20 atuncii_prim(n)=4, valoareobţinutăpentrup1=19 şip2=23. (10p.)

Problema 13


Problema 14

  • (Bac 2009, SIII, Var. 25, p3)

  • Subprogramulf primeşteprinintermediulparametruluin un număr natural nenul (1≤n≤9), iarprinintermediulparametruluia, un tablouunidimensional care conţinen valorinaturale, fiecaredintreacesteareprezentândcâte o cifră a unuinumăr. Astfel, a0 reprezintăcifraunităţilornumărului, a1 cifrazecilor etc.

  • Subprogramulfurnizeazăprinparametrulk o valoarenaturalăegală cu numărulobţinutdin cifrelepare reţinuteîntabloula sauvaloarea-1 dacăîntablou nu existăniciocifrăpară. Scrieţidefiniţiacompletă a subprogramuluif.

  • Exemple: dacăsubprogramul se apeleazăpentrun=6 şipentrutaboula avândvalorile(2,3,5,6,4,1), parametrulk vafurnizavaloarea462. Dacăsubprogramul se apeleazăpentrun=4 şipentrua reţinândvalorile(0,0,1,1), k vafurnizavaloarea0. Dacăsubprogramul se apeleazăpentrun=3 şipentrua reţinândvalorile(3,7,1), k vafurnizavaloarea-1.

Problema 14


Problema 15

  • (Bac 2009, SIII, Var. 35, p4)

  • a) Scrieţidefiniţiacompletă a unui subprogram sum care primeşteprinparametrulx un număr natural de celmult4 cifreşireturneazăsumadivizorilornumăruluix, diferiţi de 1 şi de el însuşi.

  • Exemplu: dacăx=10 se vareturnavaloarea7 (7=2+5).

  • b) ScrieţiprogramulC/C++ care citeşte de la tastatură un număr natural n (0<n<100), apoin numerenaturale (cu celmult4 cifrefiecare). Programuldetermină, folosindapeluri utile ale subprogramuluisum, pentrufiecarenumăr natural citit, sumadivizorilorsăipropriişiafişeazăpeecransumele determinate, înordineacrescătoare a valorilorlor, separate princâte un spaţiu. (6p.)

Problema 15


Problema 15 exemplu

  • Exemplu: dacăn=5 şinumerelecititesunt10 2 33 6 11

  • valorileafişatepeecranvor fi: 0 0 5 7 14

  • deoarecesumadivizorilorlui10 este7, sumadivizorilorlui2 este0, sumadivizorilorlui33 este14, sumadivizorilorlui6 este5, sumadivizorilorlui11 este0.

Problema 15 (exemplu)


  • Login