fisa 1

Upload: lumi-popescu

Post on 09-Jan-2016

9 views

Category:

Documents


0 download

DESCRIPTION

Probleme propuse C++

TRANSCRIPT

  • Biletul nr. 1.

    Fiierul date.in conine pe prima linie o valoare natural nenul n, iar pe urmtoarele n linii, separate printr-un spaiu, cte o pereche de numere naturale nenule reprezentnd numrtorul, respectiv, numitorul unei fracii (2 n 10). S se determine suma acestor fracii. Numrtorul i numitorul fraciei obinute n forma ireductibil (valori mai mici sau egale dact 1000000000) vor fi scrise n fiierul date.out pe prima linie a acestuia separate printr-un spaiu.

    Ex. date.in date.out Explicaie 4

    7 6

    1 3

    1 4

    2 5

    43 20

    20

    43

    5

    2

    4

    1

    3

    1

    6

    7

    Biletul nr. 2.

    Fiierul date.in conine pe unica sa linie un numr natural n (n 1000000000). S se determine cifra de control a acestui numr, efectund suma cifrelor sale, apoi suma cifrelor acestei sume, etc., pn se obine o sum format dintr-o singur cifr. Rezultatul obinut va fi scris n fiierul date.out.

    Ex. date.in date.out Explicaie 1971 9 1971189

    Biletul nr. 3.

    Fiierul date.in conine pe unica sa linie, separate prin spaii, trei numere naturale nenule, a, b i n,

    100000 ba , 100000 n . S se determine primele n zecimale ale fraciei a/b. Cifrele determinate vor fi scrise n fiierul date.out pe o singur linie.

    Ex. date.in date.out Explicaie 5 23 5 21739

    ...21739.023

    5

    Biletul nr. 4.

    S se determine toate numerele naturale prime de trei cifre care citite invers sunt tot numere prime. Rezultatele obinute vor fi scrise n fiierul date.out, cte unul pe fiecare linie a fiierului.

    Ex. date.out Explicaie 101

    167

    dou astfel de numere sunt 101 i 167

  • Biletul nr. 5.

    Un numr natural n este deosebit dac exist un numr natural m cu proprietatea c adunnd acest numr m cu suma cifrelor numrului m se obine numrul n. Fiierul date.in conine pe unica sa linie un numr natural n (n 1000000000). S se verifice dac acest numr este deosebit. Rezultatul verificrii va fi scris n fiierul date.out pe unica linie a acestui fiier sub forma unui mesaj corespunztor (DA sau NU dup cum numrul are proprietatea respectiv sau nu).

    Ex. date.in date.out Explicaie 1235 DA 1235 poate fi scris ca 1225+10

    date.in date.out

    20 NU

    Biletul nr. 6.

    Fiierul date.in conine pe unica sa linie un numr natural nenul n reprezentnd numrul de pagini ale unuei cri (20 n 10000). S se determine cte cifre au fost folosite la paginarea crii. Rezultatul obinut va fi scris n fiierul date.out.

    Ex. date.in date.out

    100 192

    date.in date.out

    15 21

    Biletul nr. 7.

    Fiierul date.in conine pe unica sa linie, separate printr-un spaiu, dou numere naturale nenule, a i b (1 a,b 1000000000). S se verifice dac aceste numere pot fi termeni consecutivi ai irului Fibonacci (1,1,2,3,5,8,). Rezultatul verificrii va fi scris n fiierul date.out pe unica linie a acestui fiier sub forma unui mesaj corespunztor (DA sau NU dup cum cele dou numere sunt termeni consecutivi ai irului Fibonacci sau nu).

    Ex. date.in date.out

    2 3 DA

    date.in date.out

    89 55 DA

    date.in date.out

    4 5 NU

  • Biletul nr. 8.

    Fiierul date.in conine pe unica sa linie un numr natural n (n 1000000000). S se determine toate reprezentrile posibile ale acestui numr ca sum de numere naturale nenule consecutive. Aceste reprezentri vor fi scrise n fiierul date.out, cte una pe fiecare linie a fiierului; numerele din cadrul fiecrei reprezentri vor fi separate prin spaii.

    Ex. date.in date.out

    15 1 2 3 4 5

    4 5 6

    7 8

    date.in date.out

    50 8 9 10 11 12

    11 12 13 14

    Biletul nr. 9.

    Un numr natural se numete super prim dac numrul respectiv i toate prefixele acestuia sunt numere prime. Fiierul date.in conine pe unica sa linie un numr natural n (n 1000000000). S se verifice dac acest numr este super prim i, n caz afirmativ, s se determine prefixele sale. Rezultatul verificrii va fi scris n fiierul date.out pe prima linie a acestui fiier sub forma unui mesaj corespunztor (DA sau NU dup cum numrul este super prim sau nu); dac numrul este super prim, fiecare urmtoare linie a fiierului va conine cte un prefix al numrului respectiv.

    Ex. date.in date.out Explicaie 239 DA

    2

    23

    numrul 239 este prim; prefixele sale (2 i 23) sunt numere prime

    date.in date.out Explicaie 17 NU numrul 17 este prim; prefixul su (1) nu este prim

    Biletul nr. 10.

    Fiierul date.in conine pe unica sa linie un numr natural n (n 1000000000). S se determine cel mai apropiat numr prim fa de n. Programul va conine cel puin un subprogram, iar rezultatul obinut va fi scris n fiierul date.out. Dac sunt dou numere prime egal departate de n, se poate afia oricare dintre ele.

    Ex. date.in date.out Explicaie 1400 1399 1399 este numrul prim cel mai apropiat de 1400

    date.in date.out Explicaie 3019 3019 3019 este numr prim

    date.in date.out Explicaie 3000 3001 3001 i 2099 sunt numere prime egal deprtate de numrul 3000

  • Biletul nr. 11.

    Fiierul date.in conine pe prima sa linie un numr natural n (1 n 100), iar pe urmtoarea linie, separate prin spaii, cele n elemente ale unui vector de numere naturale. S se determine cte din elementele vectorului dat sunt numere Fibonacci. Rezultatul obinut va fi scris n fiierul date.out.

    Ex. date.in date.out Explicaie 10

    5 10 1 7 9 8 1 6 55 19

    5 sunt cinci numere Fibonacci n vectorul dat; acestea sunt: 5, 1, 8, 1, 55

    Biletul nr. 12.

    Fiierul date.in conine pe prima sa linie un numr natural n (1 n 100), iar pe urmtoarea linie, separate prin spaii, cele n elemente ale unui vector de numere naturale. S se verifice dac vectorul dat este o mulime (n sensul cunoscut din matematic), dac nu, s se transforme acest vector n mod corespunztor. Elementele vectorului rezultat se vor afia pe prima linie a fiierului date.out, separate prin spaii.

    Ex. date.in date.out Explicaie 10

    1 2 9 4 2 6 5 1 20 3

    1 2 9 4 6 5 20 3 elementele vectorului iniial nu sunt dou cte dou distincte

    date.in date.out Explicaie 7

    1 2 9 4 6 5 3

    1 2 9 4 6 5 3 elementele vectorului iniial sunt dou cte dou distincte

    Biletul nr. 13.

    Fiierul date.in conine: pe prima sa linie un numr natural n ( 1001 n ), pe a doua linie, separate prin spaii, cele n elemente ale unui vector a de numere ntregi, pe a treia linie un numr natural m

    ( 1001 m ), iar pe a patra linie, separate prin spaii, cele m elemente ale unui vector b de numere ntregi. S se afieze pe prima linie a fiierului date.out cte din elementele vectorului b sunt strict mai mici dect toate elementele vectorului a.

    Ex. date.in date.out Explicaie 10

    -3 2 9 4 2 6 -5 -1 20 3

    8

    6 -5 0 -6 20 2 -18 -6

    3 n al doilea vector sunt trei elemente strict mai mici dect toate elementele primului vector; acestea sunt: -6, -18, -6

  • Biletul nr. 14.

    n fiierul date.in se gsesc dou numere mari (care pot avea mai mult de 10 cifre), cte unul pe o linie. S se afieze pe prima linie a fiierului date.out suma celor dou numere.

    Ex. date.in date.out

    45899200768797

    50999867

    45899251768664

    Biletul nr. 15.

    Fiierul date.in conine pe prima sa linie un numr natural n ( 1001 n ), iar pe urmtoarea linie, separate prin spaii, cele n elemente ale unui vector de numere ntregi. tiind c vectorul este format din dou subsecvene de numere ordonate cresctor, s se ordoneze ntregul vector prin interclasarea celor dou subsecvene. Elementele vectorului rezultat se vor afia pe prima linie a fiierului date.out, separate prin cte un spaiu.

    Ex. date.in date.out

    14

    -3 2 4 5 9 14 -12 -6 -5 1 2 5 14 25

    -12 -6 -5 -3 1 2 2 4 5 5 9 14 14 25

    Biletul nr. 16.

    Fiierul date.in conine pe prima sa linie un numr natural n ( 1001 n ), iar pe urmtoarea linie, separate prin spaii, cele n elemente ale unui vector de numere ntregi. S se afieze, separate prin spaii, pe prima linie a fiierului date.out elementul (elementele) care apare (apar) de cele mai multe ori n vectorul dat.

    Ex. date.in date.out Explicaie 14

    3 2 14 5 9 14 12 -6 5 1 12 5 14 2

    14 5 elementele 14 i 5 apar fiecare de trei ori n vector

    Biletul nr. 17.

    Fiierul date.in conine pe prima sa linie un numr natural n ( 1001 n ), iar pe urmtoarea linie, separate prin spaii, cele n elemente ale vectorului v de numere ntregi. S se construiasc un vector w, astfel nct w[i]=numrul de apariii ale lui v[i] n vectorul v, 1 i n. S se afieze cei doi vectori, fiecare pe cte o linie a fiierului date.out. La afiare, elementele fiecrui vector vor fi separate prin cte un spaiu.

    Ex. date.in date.out Explicaie 10

    3 2 14 5 9 14 2 -6 2 -6

    3 2 14 5 9 14 2 -6 2 -6

    1 3 2 1 1 2 3 2 3 2

    elementul 3 apare o dat., elementul 2 de trei ori etc.

  • Biletul nr. 18.

    Din fiierul date.in se citete n numr natural, 1 n 20. S se construiasc o matrice cu n linii i n coloane ce se completeaz cu termenii irului lui Fibonacci. Completarea se va face pe linii, de la stnga la dreapta. Nu se vor folosi structuri de date auxiliare. Matricea obinut se va scrie n fiierul date.out, fiecare linie a matricei pe cte o linie a fiierului, elementele afiate pe o linie separate prin spaii.

    Ex. date.in date.out Explicaie 3 1 1 2

    3 5 8

    13 21 34

    primii 9 termeni ai irului lui Fibonacci sunt: 1, 1, 2, 3, 5, 8, 13, 21 i 34

    Biletul nr. 19.

    De pe prima linie a fiierului date.in se citete n numr natural, 1 n 20, iar de pe urmtoarele n linii se citesc cte n numere ntregi reprezentnd elementele unei matrici. Se consider c diagonalele matricei mpart matricea n 4 zone: nord, sud, vest i est. Se cere s se calculeze suma elementelor impare din zona de nord a matricei (exclusiv elementele de pe diagonalele matricei) i s afieze suma obinut n fiierul date.out.

    Ex. date.in date.out Explicaie 5

    45 2 63 8 10

    3 5 1 0 9

    1 11 12 15 7

    13 8 -1 41 19

    -2 23 18 3 4

    64 elementele impare din zona de nord a matricei

    sunt 63 i 1

    Biletul nr. 20.

    Se citete din fiierul date.in un cuvnt de lungime cel mult 20 de caractere, format numai din litere mari. S se afieze n fiierul date.out, cte unul pe linie, toate cuvintele distincte ce se pot forma prin eliminarea cte unui singur caracter din cuvntul dat.

    Ex date.in date.out Explicaie ACCES CCES

    ACES

    ACCS

    ACCE

    nu conteaz ordinea n care se vor afia cuvintele

    Biletul nr. 21.

    Se citete din fiierul date.in un numr natural cu cel mult 9 cifre. S se afieze n fiierul date.out cel mai mare numr care se poate forma cu cifrele distincte ale numrului dat.

    Ex date.in date.out Explicaie 269363 9632 mulimea cifrelor distincte este {2, 3, 6, 9}

  • Biletul nr. 22.

    Scriei un program care citete de pe prima linie a fiierului date.in dou numere naturale n, m cu mn i scrie n fiierul date.out toate numerele prime din intervalul deschis (n,m). Numerele se scriu n ordine cresctoare, cte 10 numere pe fiecare linie a fiierului, numerele dintr-o linie fiind desprite ntre ele prin cte un spaiu. Dac nu exist niciun numr prim se va scrie un mesajul Niciun numr prim pe prima linie a fiierului.

    Ex. date.in date.out Explicaie 87 162 89 97 101 103 107 109 113 127 131 137

    139 149 151 157

    89 este primul numr prim mai mare dect 87, iar 157 este cel mai mare numr prim mai mic dect 162

    date.in date.out Explicaie 23 28 Niciun numr prim n intervalul (23, 28) nu sunt

    numere prime

    Biletul nr. 23.

    Se citete din fiierul date.in un numr natural n cu cel mult 9 cifre (n 2). S se afieze n fiierul date.out descompunerea numrului n n factori primi. Se va folosi cel puin un subprogram n rezolvarea cerinei. Afiarea fiecrui factor i a puterii corespunztoare lui se face pe cte un rnd al fiierului, conform exemplului de mai jos.

    Ex date.in date.out Explicaie 48 factorul 2 la puterea 4

    factorul 3 la puterea 1

    48=24*3

    Biletul nr. 24.

    De pe prima linie a fiierlui date.in se citete n numr natural, 1 n 20. S se construiasc recursiv triunghiul de numere ca n exemplul de mai jos fr a folosi nicio instruciune repetitiv. Afiarea triunghiului se va face n fiierul date.out, conform exemplului.

    Ex date.in date.out

    5 1

    1 2

    1 2 3

    1 2 3 4

    1 2 3 4 5

    .

  • Biletul nr. 25.

    De pe prima linie a fiierului date.in se citete n numr natural, 1 n 50, de pe a doua linie se citesc n numere reale distincte ordonate cresctor reprezentnd elementele tabloului unidimensional v, iar de pe a treia linie un numr real x. S se afieze n fiierul date.out pe ce poziie din tabloul v se gsete numrul x. Dac valoarea x nu se gsete n tabloul v atunci se va afia valoarea 0. Se va folosi o metod eficient de cutare.

    Ex. date.in date.out Explicaie 5

    12 14 20 24 45

    45

    5 valoarea 45 se gsete pe poziia a 5-a in vectorul v

    date.in date.out Explicaie 4

    50 65 88 89

    13

    0 valoarea 13 nu se gsete n vectorul v