Sunteți pe pagina 1din 2

Sarcină: Determinați numărul de operații elementare QE necesare pentru următoarele

instrucțiuni:
a) x = 2*a-6*(y+z); QE = 5
b) s = a/100+a/10%10+a%10; QE = 7
c) p = not (a == b) and (c>d); QE = 5
d) if (a>b) x=0; else x=a+b; QE = 1 + 2 + 1 = 4
e) switch (i) {
case 1:x=0;
case 2: x=a+b;
case 3: x=a+b+c;} QE = 0 + 3 + 3 + 1 = 7
f) b = (a==0 && a==0 && c==0); QE = 6
g) z = (n>=a and n<=b); QE = 4
h) for (i=1; i<n; i++) {a[i]=2*a[i+1]; QE = 1 + (n + 1) + (n +1) + 5n + 1 = 7n + 4
i) for (i=1; i<n; i++) {a[i]=b[i+1]-c[i-2]; QE = 1 + (n+1) + (n+1) + 7n + 1 = 9n + 4

Sarcina: Elaborați un program care va sorta crescător elementele unui vector cu n elemente
de tip întreg.
(în fișierul atașat)
#include <iostream>
using namespace std;
void ordonare (int v [], int nr)
{
int f, aux;
do
{
f = 1;
for (int i = 0; i < nr; i++)
if (v[i] > v [i + 1])
{
f = 0;
aux = v[i];
v[i] = v [i + 1];
v [i + 1] = aux;
}
} while (f!= 1);
}

int main ()
{
int nr;
cout << "nr = ";
cin >> nr;
int v[nr];
for (int i = 0; i < nr; i++)
{
cout << "v [" << i << "] = ";
cin >> v[i];
}
cout << "Vectorul este - ";
for (int i = 0; i < nr; i++)
cout << v[i] << " ";

ordonare (v, nr);

cout << "Vectorul este - ";


for (int i = 0; i < nr; i++)
cout << v[i] << " ";
}

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