0% au considerat acest document util (0 voturi)
16 vizualizări7 pagini

Problem e 2023

Documentul prezintă o serie de probleme de programare care presupun citirea de date de la tastatură și scrierea rezultatelor în fișiere. Problemele vizează operații cu matrici, vectori, polinoame, puncte în plan și șiruri de caractere și implică determinarea unor valori precum sume, produse, poziții etc.

Încărcat de

Userfromromania
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
16 vizualizări7 pagini

Problem e 2023

Documentul prezintă o serie de probleme de programare care presupun citirea de date de la tastatură și scrierea rezultatelor în fișiere. Problemele vizează operații cu matrici, vectori, polinoame, puncte în plan și șiruri de caractere și implică determinarea unor valori precum sume, produse, poziții etc.

Încărcat de

Userfromromania
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

Probleme Recapitulative

Se consideră o matrice pătratică A cu n linii şi n coloane, având ca elemente numere întregi


(n<=50). Să se calculeze şi să se scrie în fişierul [Link], pe linii diferite:
a) suma elementelor prime de pe linii divizibile cu o valoare oarecare k, citită de la
Co

tastatură;
b) produsul elementelor care au exact trei divizori.
le

Exemplu:
Dacă se citesc de la tastatură n=4,k=2 şi matricea:
1224
gi

5763
9876
2661
ul

se va genera în fişierul [Link]:


a) s=17 (adică 5+7+3+2)
b) p=36 (elementele 9 şi 4 îndeplinesc această condiţie)
Na

2
ti

Pentru un vector cu n elemente, numere întregi, citit de la tastatură, să se realizeze


următoarele cerinţe:
on

a) să se scrie în fişierul [Link] elementele aflate pe poziţii pare şi care sunt pătrate
perfecte;
b) să se verifice dacă o anumită valoare k, citită de la tastatură, se află în vector şi, în caz
al

afirmativ, să se determine poziţia ultimei apariţii a acesteia.


Exemplu:
Pentru n=5 şi elementele (16,64,32,49,16) se vor scrie in fişierul [Link] numerele 64,49
”M

Pentru k=16 se va afişa: 5


ih

3
Se citeşte un număr natural nenul n. Să se construiască un triunghi dreptunghic, cu unghiul
ai

de 900 în dreapta jos, ce conţine caracterul * de n ori, în felul următor:


 pe primul rând un caracter * ;
 pe fiecare rând vor fi scrise cu două caractere * mai mult decât pe rândul anterior şi cu
două mai puţin decât pe rândul următor
Vi

În cazul în care, pentru valoarea lui n citită, un astfel de triunghi nu poate fi construit, se va
afişa un mesaj corespunzător.
te

Exemplu:
a) dacă n=9, se va afişa:
az

*
***
ul

*****

b) dacă n=10, se va afişa: imposibil


4
Se dă fişierul [Link] care conţine pe prima linie un şir de caractere s iar de pe linia
următoare un caracter c.
a) Să se scrie un program care determină numărul de apariţii ale caracterului c în şirul s.
b) Să se afişeze poziţia ultimei apariţii a caracterului c în şirul s.
Co

Exemplu:
Dacă fişierul dat [Link] conţine :
le

Pe prima linie şirul:


Ana este în vacanţă.
Pe linia următoare caracterul:
gi

„ n”
Se va afişa: 3 (caracterul „n” apare de 3 ori în şirul de pe prima linie)
ul

Se va afişa: 17 (ultima apariţie a caracterului „n” este pe poziţia 17)

5
Na

Se dă fişierul [Link] care conţine un text.


Să se scrie un program care afişează:
ti

a) perechile de cuvinte care rimează (au cel puţin două litere, situate la sfârşit, identice)
b) toate literele distincte din acel text şi frecvenţa de apariţie a fiecareia. Nu se face
diferenţă între literele mari şi mici.
on

Exemplu:
La curte vine-un ciobanas,
al

Si nu e hot, dar e poznas!


a) Se va afişa: (ciobanas, poznas)
b) a –5;b – 1; c – 2;d – 1;e – 4 ;l-1;s-3 etc.
”M

6
ih

Se citesc de la tastatură n perechi de numere reale reprezentând puncte din plan (în
ordinea abscisă, ordonată)
a) să se determine câte din punctele date sunt simetrice faţă de origine şi să se scrie în
ai

fişierul [Link];
b) determinaţi câte din punctele date se găsesc pe axele de coordonate (au abscisa sau
ordonata 0).
Vi

Exemplu:
Pentru n =5 şi punctele:
(7,-2) (3,-3) (6,-6) (4,0) (1,4)
te

Se va se scrie în fişierul [Link]:


2 puncte (3,-3) (6,-6)
az

1 punct (4,0)
ul

7

Se citesc de la tastatură doi vectori de n numere naturale (cu n citit de la tastatură) de cel
mult două cifre fiecare.
a) Să se construiască un şir care conţine elementele prime comune celor doi vectori.
Elementele şirului se vor scrie pe o singură linie a fişierului [Link].
Co

b) Să se determine numărul cu cei mai mulţi divizori din cele două şiruri.
Exemplu:
le

Pentru n=7
X=(31,17,43,23,44,61,77)
Y=(31,17,43,22,41,60,77)
gi

Se va afişa în fişierului [Link]:


Elementele prime comune sunt: 31,17,43
ul

Numărul cu cei mai mulţi divizori din cele două şiruri este: 60

8
Na

Se citesc de la tastatură n perechi de numere reale reprezentând puncte din plan (în
ordinea abscisă, ordonată).
ti

a) să se determine punctul cel mai apropiat de origine şi să se scrie în fişierul [Link].


b) determinaţi câte din punctele date au coordonatele numere consecutive.
on

Exemplu:
Pentru n =5 şi punctele:
(7,-2) (3,4) (6,7) (1,0) (1,4)
al

Se va se scrie în fişierul [Link]: punctul (1,0)


(punctul A(x,y) este cel mai apropiat de origine dacă distanţa este minimă)
2 puncte (punctele (3,4) şi (6,7) au cele două coordonate numere consecutive)
”M

9
ih

Scrieţi un program în care, folosind subprograme, să citească de la tastatură coeficienţii a


două polinoame p (de grad n) şi q (de grad m), apoi să se adune. Coeficienţii polinomului
ai

sumă (r) se vor scrie în fişierul [Link].


Exemplu:
Dacă polinomul p (de grad n=2) are coeficienţii :
3, 0, 8
Vi

si polinomul q (de grad m=3) are coeficienţii:


8, 6, 5, 4
te

Coeficienţii polinomului sumă (r) care se vor scrie în fişierul [Link] vor fi
8, 9, 5, 12
az

10
ul

Să se determine primele n perechi de numere prime gemene. Două numere p şi q sunt


gemene dacă q – p = 2

Perechile de numere prime gemene se vor scrie în fişierul [Link] sub forma:
3, 5
5, 7
11, 13
17,19 etc.
11

Să se determine toate numerele de maxim cinci cifre cu proprietatea că sunt egale cu


pătratul sumei cifrelor lor. Numerele determinate se vor scrie în fişierul [Link].
12
Fie o matrice de n linii şi m coloane ce conţine numere întregi, datele fiind citite de la
tastatură. Să se realizeze un program în care, folosind subprograme, se vor determina şi se
Co

vor scrie în fişierul [Link] numai elementele matricei care sunt numere superprime.
Numim număr superprim dacă atât el, cât şi răsturnatul lui sunt numere prime.
le

Exemplu:
Dacă se citesc de la tastatură :
n=3 şi m=4 şi matricea:
gi

24 28 17 26
55 65 11 75
ul

33 23 13 93
Se va scrie în fişierul [Link]
11,17,13
Na

13
ti

Folosind subprograme, să se determine recursiv şi să se scrie în fişierul [Link] suma


elementelor pare dintr-un vector v cu n componente numere întregi, de cel mult cinci cifre,
citit de la tastatura.
on

Exemplu:
Dacă se citeşte de la tastatură: n=5
al

şi vectorul V: ( 23 456 321 457 342 1242)


Se va afişa în fişierul [Link]:
2040 (456+342+1242)
”M

14
ih

Să se realizeze un program în care, folosind subprograme şi căutarea binară, să se verifice


dacă există într-un vector a cu m componente numere întregi citite de la tastatura o valoare
oarecare y. Mesajul se va scrie în fişierul [Link].
ai

Exemplu:
Dacă se citesc de la tastatură: m=5, vectorul a: 23 456 321 457 342 1242 şi valoarea y=23
Se va afişa în fişierul [Link]:
Vi

Valoarea 23 este în vector.

15
te

Se dă fişierul [Link] care conţine pe prima linie un număr n şi pe linia următoare cele n
az

numere, de cel mult cinci cifre fiecare.


Să se realizeze un program în care, folosind subprograme, să se citească din fişierul [Link]
ul

cele n numere naturale şi să se afişeze numai acele numere care sunt strict monoton
crescător sau strict monoton descrescător (adică toate cifrele numărului sunt în ordine
crescătoare sau descrescătoare).

Exemplu:
Dacă fişierul [Link] conţine :
5
23456 321 457 342 1242
Se va afişa:
23456 321 457
16

Se dau de la tastatura două mulţimi a şi b cu componente numere naturale mai mici sau
egale cu 255. Se cere să se determine şi afişeze pe ecran mulţimile ab, ab, (a-b)(b-a).
Exemplu:
Co

Pentru mulţimile:
123475
le

458
se va afişa pe ecran :
1234578
gi

45
12378
ul

17
Folosind subprograme, să se determine recursiv şi să se scrie în fişierul [Link], elementul
Na

maxim dintr-un vector x cu n componente numere întregi cu cinci cifre, citite de la tastatură.
Exemplu:
ti

Pentru n=7
şi vectorul x : (76,54,32,3,5,6,7)
se va afişa în fişierul [Link]
on

76
al

18

Fie o matrice de n linii şi m coloane ce conţine numere naturale. Să se realizeze un


program în care, folosind subprograme, se vor determina şi se vor scrie în fişierul
”M

[Link], elementele palindrom de pe fiecare linie (pe o linie a fişierului se vor scrie
numerele palindrom de pe o linie a matricei sau 0 în cazul în care nu există astfel de valori
pe linia respectivă).
ih

Exemplu:
Dacă se citesc de la tastatură :
ai

n=3 şi m=4 şi matricea:


24 28 24 26
55 65 75 75
33 23 13 93
Vi

Se va scrie în fişierul [Link]:


0 (Pe linia 1 nu e nici un element de tip palindrom)
te

55
33
az

19
ul

Se citesc de la tastatură: un text cu cel mult 255 caractere şi un cuvânt. În text, cuvintele
sunt separate prin unul sau mai multe spaţii. Se cere să se determine în text, numărul de
apariţii al şirului de caractere reprezentând cuvântul citit.

Exemplu:
Pentru textul:
Un elev priveste la televizor
şi cuvântul elev
Se va afişa 2 ( şirul de caractere al cuvântul elev apare de două ori)
20

Fie o matrice de n linii şi m coloane ce conţine numere întregi. Să se realizeze un program


în care, folosind subprograme, se vor determina şi se vor scrie în fişierul [Link], cel
mai mare divizor comun al elementelor de pe fiecare coloană.
Exemplu:
Pentru n=3 şi m=4, matricea:
4846
5677
3219
Co

Se va afişa în fişierul [Link]:


1 (cmmdc (4,5,3)=1 )
le

2 (cmmdc (8,6,2)=2 )
1 (cmmdc (4,7,1)=1 )
1 (cmmdc (6,7,9)=1 )
gi

21
ul

Să se realizeze un program în care, folosind subprograme, se vor citi din fişierul [Link]
numărul de n linii şi de coloane (de pe prima linie a fişierului), respectiv elementele matricei
a ce conţine numere întregi (de pe fiecare linie a fişierului se citeşte o linie a matricei). Să se
anuleze elementele diagonalei principale ale matricei, care sunt mai mici decât o valoare
Na

dată y.
Exemplu:
ti

Pentru fişierul [Link] Pentru y=5 se va afişa:


3 0 3 4 (S-a anulat a[1,1] are valoarea 4<5)
434 567
on

567 3 2 0 (S-a anulat a[3,3] are valoarea 1<5)


321
al

22
Să se realizeze un program în care, folosind subprograme, se vor citi din fişierul [Link]
numărul de linii n şi numărul de coloane m (citite de pe prima linie a fişierului), respectiv
”M

elementele unei matrice a ce conţine numere naturale (de pe fiecare linie a fişierului se
citeşte o linie a matricei). Să se determine liniile matricei care încep şi se termină cu un
ih

număr prim.
Exemplu:
Pentru fişierul [Link]
ai

34
Se va afişa: Linia 1 (începe cu elementul 2 număr prim
2345
şi se termină cu 5 număr prim)
5679
3214
Vi

23
te

Să se realizeze un program în care, folosind subprograme, se vor citi din fişierul [Link]
numărul de linii n şi numărul de coloane m (citite de pe prima linie a fişierului), respectiv
az

elementele unei matrice a ce conţine numere întregi distincte de cel mult 2 cifre fiecare (de
pe fiecare linie a fişierului se citeşte o linie a matricei). Să se afişeze elementele matricei
ul

care sunt situate pe linii şi coloane de sumă egală. Un element a[i,j] se va afişa dacă suma
elementelor de pe linia i este egală cu suma elementelor de pe coloana j. În cazul că nu
există un astfel de element se va afişa un mesaj corespunzător.

Exemplu:
Pentru fişierul [Link] dat
3 4
2 14 0 5
5 16 7 9
3 0 1 6
Se va afişa:3 (adică elementul a[3,1] este singurul element care are suma elementelor de pe
linia 3 egală cu suma elementelor de pe coloana 1)

ul
az
te
Vi
ai
ih
”M
al
on
ti
Na
ul
gi
le
Co

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