Lista de probleme 28

Filtrare

Scrieți o funcție operand cu doi parametri care returnează poziția maximului dintr-un șir dat de numere întregi. Se presupune că elementele șirului sunt distincte și memorate începând cu poziția 1. Parametrii funcției sunt: tabloul în care este memorat șirul și numărul de elemente ale acestuia.

Scrieți o funcție procedurală cu trei parametri care oferă poziția minimului dintr-un șir dat de numere întregi. Se presupune că elementele șirului sunt distincte și memorate începând cu poziția 1. Parametrii funcției sunt: tabloul în care este memorat șirul, numărul de elemente ale acestuia precum și rezultatul.

Scrieți o funcție procedurală care interschimbă două valori întregi.

Scrieți o funcție procedurală care are trei parametri, în ordine: v (tablou unidimensional cu elemente int), pozInit (de tip int), pozFin (de tip int), și care afișează în ordine descrescătoare a indicilor (separate prin spații) elementele secvenței delimitate de pozInit și pozFin, inclusiv. Se garantează că primul parametrul pozInit se transmite funcției mai mic strict decât pozFin. Se garantează că tabloul are cel puțin pozFin elemente și că ambii indici se transmit funcției mai mari sau egali cu 1.

Scrieți un program care, apelând util TOATE funcțiile de mai sus, preia dintr-un fișier dimensiunea (notată de noi mai departe n) și elementele unui vector și le stochează în acesta începând cu poziția 1. Programul va scrie într-un fișier, în ordine descrescătoate a indicilor, elementele cuprinse între valoarea minimă și valoarea maximă. Se garantează că elementele șirului se dau distincte.

#1307 Siruri1

Se citeşte un şir X de numere naturale cu n elemente. Scrieţi un program care determină şirul Y de numere prime distincte, care figurează la puterea întâi în cel puţin o descompunere ȋn factori primi a unui număr din șirul X. Dacă niciun element al şirului X nu are un factor prim la puterea întâi, atunci se va tipări mesajul Sirul Y e vid.

Admitere Mate-Info UBB, septembrie 2013

Verificați dacă un șir dat este palindrom ciclic .

#996 Div3

Se dă un şir cu n elemente, numere naturale. Să se afişeze elementele şirului pentru care suma cifrelor este divizibilă cu 3.

#988 Prime

Se dă un tablou cu n elemente, numere naturale. Să se afișeze numerele prime din șir, în ordinea în care apar în șir.

Se va defini și apela subprogramul prim, care verifică dacă un număr natural este prim.

Se dă un şir cu n elemente, numere naturale. Să se afişeze elementele şirului care sunt termeni ai şirului lui Fibonacci.

#1001 Rotund

Spunem că un număr natural x este rotund dacă există un număr natural nenul k, mai mic strict decât numărul de cifre ale lui x, astfel încât prin permutarea circulară a cifrelor numărului cu k poziţii la dreapta, să se obţină numărul iniţial x.

Se dă un şir cu n elemente, numere naturale. câte elemente din șir sunt rotunde, și care sunt acestea.

Se va defini şi apela subprogramul rotund care verifică dacă un număr natural, transmis ca parametru, este rotund.

Se dă un vector cu n elemente, numere naturale, și un număr k, divizor al lui n. Se împarte vectorul în k secvențe disjuncte, numerotate de la 1 la k. Să se permute circular cu o poziție spre stânga elementele din fiecare dintre cele k secvențe și să se afișeze pe ecran vectorul rezultat în urma acestor modificări.

Se dă un vector cu n elemente, numere naturale, și un număr k, divizor al lui n. Se împarte vectorul in secvențe disjuncte de lungime k. Să se oglindească elementele (primul element din secvență se interschimbă cu ultimul, al doilea cu penultimul, etc.) din fiecare dintre cele n/k secvențe și să se afișeze pe ecran vectorul rezultat în urma acestor modificări.

Se dă un tablou cu n elemente, numere naturale. Să se înlocuiască fiecare element din tablou care nu este număr prim cu cel mai mic număr prim, mai mare decât el.

Se vor defini și apela următoarele subprograme:

  • citire, care citește de la tastatură valoarea lui n și cele n elemente ale tabloului
  • afisare, care afișează pe ecran elementele tabloului, separate prin exact un spațiu
  • prim, care verifică dacă un număr natural este prim
  • urmatorul_prim, care determină pentru un număr dat cel mai mic număr prim, mai mare decât acesta, folosind subprogramul prim
  • inloc, care realizează înlocuirile cerute.

În programele C/C++ nu se vor folosi variabile globale.