Sunteți pe pagina 1din 5

PROBLEME VECTORI

I.PARCURGERI

1.Se citește un vector cu n elemente, numere naturale. Să se afișeze elementele cu


indici pari în ordinea crescătoare a indicilor, iar elementele cu indici impari în ordinea
descrescătoare a indicilor.

2.Se citește un vector cu n elemente, numere naturale. Să se afișeze elementele


vectorului în următoarea ordine: primul, ultimul, al doilea, penultimul, etc.

3.Să se determine indicele maximului şi cel al minimului valorilor elementelor unui


vector.

4.Se citește un vector cu n elemente, numere naturale. Să se determine câte


elemente ale vectorului sunt egale cu diferența dintre cea mai mare și cea mai mică
valoare din vector.

5.Se citește un vector cu n elemente, numere naturale. Să se determine suma


valorilor elementelor cuprinse între primul și ultimul element par al vectorului, inclusiv
acestea.

6.Se dă un șir cu n elemente, numere reale. Să se determine câte dintre elemente


se află în afara intervalului închis determinat de primul și ultimul element.

7. Se dă un vector cu n numere naturale. Să se determine câte dintre perechile de


elemente egal depărtate de capetele vectorului sunt prime între ele.

8.Se dă un vector cu n numere naturale. Să se determine câte dintre perechile de


elemente din vector sunt formate din valori cu aceeași sumă a cifrelor.

9.Se dă un vector x cu n elemente, numere naturale. Să se construiască un alt


vector, y, cu proprietatea că y[i] este egal cu restul împărțirii lui x[i] la suma cifrelor
lui x[i].

10.Se dă un vector x cu n elemente, numere naturale. Să se construiască un alt


vector, y, cu nelemente, cu proprietatea că y[i] este egal cu suma elementelor din x,
cu excepția lui x[i].

11. Se dă un vector x cu n elemente, numere naturale. Să se construiască un alt


vector, y, care să conțină elementele prime din x, în ordine inversă.

II.STERGERI/INSERARI

EXEMPLU: inserare pe pozitia k

int main()
{
int v[20], i, n, k;
cin>>n;
for (i=0; i<n; i++)
cin>>v[i];
cin>>k;
for(int j=n; j>k; j--) v[j]=v[j-1]; n++;
v[k]=0;

for(i=0; i<n; i++) cout<< v[i]<<" ";


return 0;
}

Exemplu:stergere valori nule:

int main()
{
int v[100],n,i,j;
cin>>n;
for(i=0;i<n;i++)
cin>>v[i];
for(i=0; i<n; i++)
{
if(v[i]==0)
{
for(j=i;j<n-1;j++)
v[j]=v[j+1];
n--; i--;
}
}
for(i=0;i<n;i++)
cout<<v[i];

return 0;
}

1.Să se șteargă dintr-un vector toate elementele pare.

2.Se citește un șir cu n elemente, numere întregi. Să se șteargă elementele care se


repetă care se repetă, păstrându-se doar primul de la stânga la dreapta.

3.Să se insereze pe o poziție dată într-un șir o valoare precizată.

4.Să se insereze într-un șir după fiecare element par dublul său.

5.Se dau n numere întregi. Să se insereze între oricare două numere de aceeași
paritate media lor aritmetică.
III.VERIFICARE PROPRIETATI

1.Se dă un şir cu n elemente, numere naturale. Să se verifice dacă în șir există


elemente prime.

2.Se dă un şir cu n elemente, numere naturale. Să se verifice dacă toate elementele


şirului sunt pare.

3.Se dă un vector cu n elemente numere naturale. Să se verifice dacă are


elementele ordonate crescător.

4.Se dă un şir cu n elemente, numere întregi. Să se verifice dacă elementele pare din
şir sunt ordonate crescător.

5.Se dă un șir cu n cifre, reprezentând cifrele unui număr natural x. Să se afișeze


numărul x, iar pe linia următoare mesajul DA dacă x este palindrom și mesajul NU în
caz contrar.

6.Un vector cu elemente 0 sau 1 se numește alternativ dacă oricum am lua două
elemente vecine în vector, cel puțin unul dintre ele este 0.
7.Se dă un vector cu n elemente, numere naturale. Verificați dacă vectorul este
alternativ.
8.Se dau doi vectori cu câte n elemente, numere naturale. Verificați dacă cei doi
vectori conțin exact aceleași elemente.

IV.SORTARE

Exemplu: ordonare numere pare

int main()
{
int v[20], i,j, n, aux;
cin>>n;
for (i=0; i<n; i++)
cin>>v[i];
for(i=0; i<n-1; i++)
for(j=i+1; j<n;j++)
if((v[i]%2==0 && v[j]%2==0) && v[i]>v[j])
{
aux=v[i]; v[i]=v[j]; v[j]=aux;
}
for (i=0; i<n; i++)
cout<<v[i]<<" ";
return 0;
}
1.Să se scrie un program care ordonează descrescător elementele unui vector.

2.Se dau n numere naturale nenule. Ordonați descrescător cele n numere după
numărul lor de divizori.

3.Se dă un vector cu n elemente, numere naturale și un număr k. Ordonați crescător


primele kelemente ale vectorului și descrescător ultimele n-k elemente.

4.Se dă un vector cu n elemente, numere naturale distincte. Ordonați crescător


elementele situate înaintea valorii maxime din vector și descrescător elementele
situate după această valoare.

5.Se citește de la tastură un număr natural n, apoi n numere naturale. Să se afişeze


cel mai mic număr care poate fi scris folosind prima cifră a numerelor citite.

6.Să se scrie un program care ordonează elementele unui vector crescător după
suma cifrelor.

V.SECVENTE

Exemplu: cea mai lunga secventa de numere pare

int main()
{
int v[20], i,j, n,k, max=-1;
cin>>n;
for (i=0; i<n; i++)
cin>>v[i];
for(i=0; i<n; i++)
{

if(v[i]%2==0)
{j=i;k=0;
while (v[j]%2==0) {k++; j++;}
if(k>max) max=k; }
}
cout<<"max="<<max;
//for(i=0; i<n; i++) cout<< v[i]<<" ";

return 0;
}

1. Se dă un vector format din n elemente, numere naturale. Calculați suma


elementelor din secvența determinată de primul și ultimul element impar.
2. Se dă un vector cu n elemente numere naturale. Determinați cea mai lungă
secvență de elemente nule din vector. Dacă în vector există mai multe secvențe de
elemente nule de lungime maximă se va determina cea mai din stânga.

3. Se dă un vector cu n elemente, numere naturale. Determinați cea mai lungă


secvență de elemente egale din vector. Dacă în vector există mai multe secvențe de
elemente egale de lungime maximă se va determina cea mai din dreapta.

4.Se dă un vector x cu n elemente, numere naturale distincte, și un


vector y cu m elemente, numere naturale. Să se verifice dacă vectorul y este
secvență în vectorul x.

5.Se dă un vector x cu n elemente, numere naturale și un vector y cu m elemente,


numere naturale. Să se determine de câte ori este vectorul y secvență în vectorul x.

VI.VECTORI CARACTERISTICI/DE FRECVENTA

1.Se dă o listă cu numere naturale. Să se determine numerele naturale nenule cu cel


mult patru cifre care nu apar în lista dată.

2.Se dau n numere naturale. Determinaţi cele mai mari două numere cu trei cifre
care nu apar printre numerele date.

3.Să se scrie un program care citeşte cel mult 1000000 de numere naturale din
intervalul închis [0,9] şi determină cel mai mare număr prim citit şi numărul său de
apariţii.

4.Se dau mai multe numere numere naturale formate din exact o cifră. Determinaţi
cifrele cu număr maxim de apariţii.

5.Se dau n numere numere naturale cu cel mult două cifre fiecare. Să se determine
acele numere care apar o singură dată.

6.Se dau mai multe numere naturale cu cel mult 9 cifre fiecare. Să se determine cele
mai mari două numere de 3 cifre care nu se găsesc printre numerele date.

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