Sunteți pe pagina 1din 2

Limbaje de Programare

Laboratorul 10: Recursivitate


Dan Novischi
3 mai 2017

1. Introducere
Scopul acestui laborator este realizarea unor functii recursive si transmiterea ca argumente
a functiilor la alte functii.

2. Cerint, e
Cerint, a 1 (4p) Să se scrie un program care sa afiseze factorialul unui numar intreg citit
de la tastatura folosid o functie recursiva cu urmatorul antet:

int factorial(unsigned int n);

unde parametrul n reprezinta numarul a carui factorial il returneaza functia.

Cerint, a 2 (6p) Sa se realizeze un program care afiseaza daca un anumit numar exista sau
nu intr-un array de intregi introdus de la tastura, respectand urmatoarele cerinte:

a) (1p) Implementati o functie de comparare a doi intregi cu urmatorul antet:

int compareInts(void* a, void* b);

care returneaza -1 daca a < b, 0 daca a == b si 1 daca a > b.

b) (2p) In programul principal, folositi functia qsort() din biblioteca stdlib.h pentru
a sorta vectorul introdus de la tastura. Functia are umatorul antet:

void qsort (void* base, size_t num, size_t size,


int (*compare)(const void*,const void*));

unde base reprezinta adresa de inceput a vectorului, num reprezinta numarul de ele-
mente din vector, size este dimensiunea in octeti a unui element si compare este un
pointer la o functie de comparare.

1
c) (2p) Implementati o functie recursiva pentru algoritmul de cautare binara intr-un vec-
tor de intregi. Functia intoarce 1 daca un anumit element se afla in array-ul primit ca
parametru si 0 altfel:

int binarySearch(int *arr, int num, int x, int firstIndex, int lastIndex);

d) (1p) Utilizati functia realizata la punctul anterior pentru a verifica existenta elemen-
tului 3 in vectorul citit de la tastatura.

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

  • Smart Cities
    Smart Cities
    Document5 pagini
    Smart Cities
    Camer Aptula
    Încă nu există evaluări
  • Realitate Virtuala in Medicina - Asc
    Realitate Virtuala in Medicina - Asc
    Document5 pagini
    Realitate Virtuala in Medicina - Asc
    Camer Aptula
    Încă nu există evaluări
  • Infrastructura Deschisă Pentru Rezultate (ASC)
    Infrastructura Deschisă Pentru Rezultate (ASC)
    Document6 pagini
    Infrastructura Deschisă Pentru Rezultate (ASC)
    Camer Aptula
    Încă nu există evaluări
  • Realitate Virtuala in Medicina - Asc
    Realitate Virtuala in Medicina - Asc
    Document7 pagini
    Realitate Virtuala in Medicina - Asc
    Camer Aptula
    Încă nu există evaluări
  • Metodologie Acs
    Metodologie Acs
    Document5 pagini
    Metodologie Acs
    Camer Aptula
    Încă nu există evaluări
  • Metodologie Acs
    Metodologie Acs
    Document5 pagini
    Metodologie Acs
    Camer Aptula
    Încă nu există evaluări
  • TEMA Finala ASC
    TEMA Finala ASC
    Document1 pagină
    TEMA Finala ASC
    Camer Aptula
    Încă nu există evaluări
  • Smart City
    Smart City
    Document4 pagini
    Smart City
    Camer Aptula
    Încă nu există evaluări
  • Ia2 L3
    Ia2 L3
    Document18 pagini
    Ia2 L3
    Cristian Mihai
    Încă nu există evaluări
  • IA2 L1 PDF
    IA2 L1 PDF
    Document22 pagini
    IA2 L1 PDF
    Mihai Gatea
    100% (1)
  • ASC - Sectiune2 - L1 - Prez IDE - Ex
    ASC - Sectiune2 - L1 - Prez IDE - Ex
    Document51 pagini
    ASC - Sectiune2 - L1 - Prez IDE - Ex
    Camer Aptula
    Încă nu există evaluări
  • Lab 11
    Lab 11
    Document2 pagini
    Lab 11
    Camer Aptula
    Încă nu există evaluări
  • L2. Functii MATLAB de Interes General. Functii Matematice Uzuale. Reprezentarea Graficelor
    L2. Functii MATLAB de Interes General. Functii Matematice Uzuale. Reprezentarea Graficelor
    Document18 pagini
    L2. Functii MATLAB de Interes General. Functii Matematice Uzuale. Reprezentarea Graficelor
    Camer Aptula
    Încă nu există evaluări
  • Lab 12
    Lab 12
    Document1 pagină
    Lab 12
    Camer Aptula
    Încă nu există evaluări
  • LP Curs12
    LP Curs12
    Document19 pagini
    LP Curs12
    Camer Aptula
    Încă nu există evaluări
  • LP Curs12
    LP Curs12
    Document19 pagini
    LP Curs12
    Camer Aptula
    Încă nu există evaluări
  • LP Curs9
    LP Curs9
    Document32 pagini
    LP Curs9
    Camer Aptula
    Încă nu există evaluări
  • Lab 09
    Lab 09
    Document3 pagini
    Lab 09
    Camer Aptula
    Încă nu există evaluări
  • LP Curs6
    LP Curs6
    Document28 pagini
    LP Curs6
    Camer Aptula
    Încă nu există evaluări
  • Lab 10
    Lab 10
    Document2 pagini
    Lab 10
    Camer Aptula
    Încă nu există evaluări
  • Lab 12
    Lab 12
    Document1 pagină
    Lab 12
    Camer Aptula
    Încă nu există evaluări
  • LP Curs10
    LP Curs10
    Document15 pagini
    LP Curs10
    Camer Aptula
    Încă nu există evaluări
  • LP Curs8 PDF
    LP Curs8 PDF
    Document25 pagini
    LP Curs8 PDF
    Camer Aptula
    Încă nu există evaluări
  • Lab 06
    Lab 06
    Document2 pagini
    Lab 06
    Camer Aptula
    Încă nu există evaluări
  • Lab 04
    Lab 04
    Document2 pagini
    Lab 04
    Camer Aptula
    Încă nu există evaluări
  • Lab 05
    Lab 05
    Document3 pagini
    Lab 05
    Camer Aptula
    Încă nu există evaluări
  • Lab 07
    Lab 07
    Document2 pagini
    Lab 07
    Camer Aptula
    Încă nu există evaluări
  • LP Curs8 PDF
    LP Curs8 PDF
    Document25 pagini
    LP Curs8 PDF
    Camer Aptula
    Încă nu există evaluări
  • LP Curs5 PDF
    LP Curs5 PDF
    Document29 pagini
    LP Curs5 PDF
    Camer Aptula
    Încă nu există evaluări