Orar semigroup #2

Orar semigroup #2

Subiecte BAC 20 noiembrie

Subprogramul sub, cu trei parametri, primeşte prin intermediul parametrilor:
– v un tablou unidimensional cu cel mult 100 de componente ce memorează numere întregi de cel mult 4 cifre fiecare;
– n un număr natural nenul mai mic sau egal cu 100 ce reprezintă numărul efectiv de componente ale tabloului primit prin intermediul parametrului v;
– a un număr întreg cu cel mult 4 cifre.
Subprogramul sub returnează numărul componentelor tabloului primit prin intermediul parametrului v ale căror valori sunt strict mai mici decât valoarea parametrului a.
Exemplu: pentru valorile n=5, v=(1,21,9,21,403), a=20 ale parametrilor, în urma apelului, subprogramului sub va returna valoarea 2.
a) Scrieţi definiţia completă a subprogramului sub.
b) Să se scrie un program C/C++ care să citească de la tastatură un număr natural nenul n (n≤100) şi n numere întregi, fiecare având cel mult 4 cifre, şi care, folosind apeluri utile ale subprogramului sub, să afişeze pe ecran mesajul DA dacă oricare două dintre cele n numere întregi citite sunt distincte două câte două, sau mesajul NU în caz contrar.
Exemplu: pentru n=6 şi cele n numere citite de la tastatură: 47 183 69 8 134 -56
se va afişa pe ecran mesajul DA

#include<iostream>
#include<fstream>
using namespace std;
int sub(int v[], int n, int a)
{int i,j=0;
for(i=0;i<n;i++)
    if(v[i]<a)
        j++;
return j;}

int main()
{int n,v[100],i,a,vv[100];
cin>>n;
for(i=0;i<n;i++)
    cin>>v[i];
for(i=0;i<n;i++)
    vv[i]=sub(v,n,v[i]);
for(i=0;i<n-1;i++)
    for(int j=i+1;j<n;j++)
        if(vv[i]==vv[j])
            {cout<<"NU";return 0;}
cout<<"DA";
}

marți, 20 noiembrie 2012 by DlMuresan
Categories: | Leave a comment

Leave a Reply