|

Clasificarea Funcțiilor Definite de Utilizator: Funcții Procedurale și Funcții Operand 13


1. Obiectivele lecției:

  • Să înțeleagă diferența dintre funcțiile procedurale și funcțiile operand.
  • Să identifice utilizarea fiecărui tip de funcție.
  • Să implementeze exemple practice pentru a evidenția diferențele.

2. Ce sunt funcțiile definite de utilizator?

  • Funcțiile definite de utilizator sunt module create pentru a rezolva probleme specifice. Acestea pot fi clasificate în funcții procedurale și funcții operand pe baza scopului lor și a modului în care sunt utilizate.

3. Clasificarea funcțiilor


1. Funcții Procedurale

  1. Definiție:
    • Sunt funcții care realizează o serie de operații, fără a returna o valoare semnificativă.
    • Rezultatul lor este de obicei afișat sau utilizat pentru efecte secundare (ex.: modificarea unei structuri de date, afișarea unui mesaj).
  2. Caracteristici:
    • Tipul de returnare este de obicei void.
    • Utilizate pentru sarcini care nu necesită o valoare de ieșire.
  3. Exemple de utilizare:
    • Afișarea unui mesaj.
    • Modificarea unui vector.
    • Scrierea în fișiere.
  4. Exemplu:

#include <iostream>

using namespace std;

void afiseazaMesaj() {

    cout << „Aceasta este o funcție procedurală.” << endl;

}

int main() {

    afiseazaMesaj();

    return 0;

}


2. Funcții Operand

  1. Definiție:
    • Sunt funcții care efectuează o operație și returnează un rezultat.
    • Rezultatul este utilizat direct în program.
  2. Caracteristici:
    • Tipul de returnare este diferit de void (ex.: int, double, string).
    • Pot fi utilizate în expresii sau pentru atribuire.
  3. Exemple de utilizare:
    • Calculul unei sume.
    • Determinarea unui număr maxim.
    • Returnarea unei valori transformate.
  4. Exemplu:

#include <iostream>

using namespace std;

int suma(int a, int b) {

    return a + b;

}

int main() {

    int rezultat = suma(3, 5);

    cout << „Suma este: ” << rezultat << endl;

    return 0;

}


4. Diferențe între funcții procedurale și funcții operand

CaracteristicăFuncții ProceduraleFuncții Operand
Tipul de returnarevoidTipuri precum int, double
ScopRealizează operații sau efecteCalculează și returnează valori
ExempleAfișare, modificări de dateCalcul, comparații, transformări
Utilizare în expresiiNuDa

5. Exemple practice


Exemplu 1: Modificarea unui vector (procedurală)

#include <iostream>

using namespace std;

void cresteElemente(int vec[], int dim) {

    for (int i = 0; i < dim; i++) {

        vec[i] += 1;

    }

}

int main() {

    int vector[5] = {1, 2, 3, 4, 5};

    cresteElemente(vector, 5);

    for (int i = 0; i < 5; i++) {

        cout << vector[i] << ” „;

    }

    return 0;

}


Exemplu 2: Calcularea mediei unui vector (operand)

#include <iostream>

using namespace std;

double calculeazaMedia(int vec[], int dim) {

    int suma = 0;

    for (int i = 0; i < dim; i++) {

        suma += vec[i];

    }

    return static_cast<double>(suma) / dim;

}

int main() {

    int vector[5] = {1, 2, 3, 4, 5};

    double media = calculeazaMedia(vector, 5);

    cout << „Media este: ” << media << endl;

    return 0;

}


6. Combinarea funcțiilor procedurale și operand

  1. Exemplu complet:
    • Procedural: Afișarea unui rezultat.
    • Operand: Calculul unui rezultat.

#include <iostream>

using namespace std;

double calculeazaMedia(int vec[], int dim) {

    int suma = 0;

    for (int i = 0; i < dim; i++) {

        suma += vec[i];

    }

    return static_cast<double>(suma) / dim;

}

void afiseazaMedia(double media) {

    cout << „Media calculată este: ” << media << endl;

}

int main() {

    int vector[5] = {1, 2, 3, 4, 5};

    double media = calculeazaMedia(vector, 5);

    afiseazaMedia(media);

    return 0;

}


7. Activități practice pentru elevi

  1. Scrieți o funcție procedurală care afișează toate elementele pare dintr-un vector.
  2. Implementați o funcție operand care determină produsul elementelor unui vector.
  3. Realizați un program care folosește o funcție operand pentru a calcula factorialul unui număr și o funcție procedurală pentru afișare.

8. Scheme logice

  1. Funcție procedurală:
    • Start -> Realizează operația -> Fără returnare -> Stop.
  2. Funcție operand:
    • Start -> Efectuează calculul -> Returnează rezultatul -> Stop.

9. Concluzie

  • Funcțiile procedurale sunt utile pentru realizarea operațiilor fără a returna un rezultat semnificativ.
  • Funcțiile operand sunt esențiale pentru calcularea și returnarea rezultatelor în expresii.
  • O bună organizare a funcțiilor ajută la crearea de programe clare, eficiente și ușor de întreținut.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *