Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Spune-mi daca e bine sau nu :)  (Citit de 1331 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Broke
Strain
*

Karma: -10
Deconectat Deconectat

Mesaje: 37



Vezi Profilul
« : Octombrie 19, 2014, 22:10:12 »

Salut. Am o intrebare. La subiectele de bac la care NU se precizeaza nimic de eficienta programului, este corecta orice solutie, oricat de neeficienta din toate punctele de vedere, atata timp cat este logica?

Sa va dau un exemplu.
"Scrieti in limbajul C/C++ definita completa a subprogramului ordonare care primeste ca parametru un tablou unidimensional x cu cel mult 100 de elemente, nr. nat. cu cel mult 4 cifre fiecare si un nr. nat. n (n<101), ce reprezinta nr. efectiv de elemente ale tabloului x. Subprogramul va afisa tabloul obtinut in urma schimbarii pozitiei doar a elementelor impare din tablou astfel incat acestea sa apara in ordinea crescatoare a valorilor lor.
Exemplu: pentru n=6 si x=(7, 11, 2, -8, -3, 10) subprogramul va afisa -3, 7, 2, -8, 11, 10."
Eu m-am gandit sa o rezolv in felul urmator: parcurg elementele vectorului si compar primul element impar cu celelalte; daca e cel mai mic, il lasa pe pozitia lui; daca este numar impar mai mic decat el, le interschimba... si tot asa, pentru primul, al doilea etc.
Aici e si codul. Este corect? Pot primi punctaj maxim pe o astfel de rezolvare?
Cod:
void ordonare(int v[100], int n)
{
int aux;
for(int i=1;i<n;i++)
for(int j=i+1;j<=n;j++)
if(abs(v[i])%2==1 && abs(v[j])%2==1)
if(v[i]>v[j])
{
aux=v[i];
v[i]=v[j];
v[j]=aux;
}
}
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines