Cum sa ordonezi un vector in C++

28 ianuarie

In acest tutorial va voi prezenta cum sa ordonati un vector crescator sau descrescator.

#include <stdio.h>
#include <conio.h>
void main()
{
// Declarare variabile
int v[100];
int n, i, j, t;
// Introducere date de intrare
printf("Cu cate elemente vom lucra? n");
scanf("%d", &n);
for (i=0; i<n; i++)
{
printf("v[%d] = ", i);
scanf("%d", &v[i]);
}
// Ordonoare descrescatoare
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
{
if (v[i] < v[j])
{
t = v[i];
v[i] = v[j];
v[j] = t;
}
}
// Afisare rezultate
for (i=0; i<n; i++)
printf("%d; ", v[i]);
printf("n");
// Ordonoare crescatoare
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
{
t = v[i];
v[i] = v[j];
v[j] = t;
}
}
// Afisare rezultate
for (i=0; i<n; i++)
printf("%d; ", v[i]);
getch();
}


Functiile probabil ca le cunoasteti, mai ales daca ati citit tutorialele precedente. Tot ceea ce ramane sa va explic este logica programului.

Aici are loc sortarea descrescatoare:

for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
{
if (v[i] < v[j])
{
t = v[i];
v[i] = v[j];
v[j] = t;
}

Practic, primul for parcurge o singura data vectorul. Pentru fiecare element, se verifica prin al doilea for daca printre elementele ramase in dreapta se afla o valoare mai mare. Daca da, atunci se inlocuiesc v[i] cu v[j].

Ordonarea crescatoare este asemanatoare. Tot ce aveti de facut este sa schimbati conditia din if.

Rezultatul programului nostru este urmatorul:



Ti-a placut articolul Cum sa ordonezi un vector in C++?

Ai nevoie de rezolvarea unei probleme la informatica?

Iti recomandam si urmatoarele articole:

1 comentariu pentru Cum sa ordonezi un vector in C++

Discuta articolul Cum sa ordonezi un vector in C++



Contul tau

Categorii

Mozku Network

Ne gasesti si pe Facebook

Articole noi

Fisiere populare

  • Proiect Atestat Informatica Visual FoxPro (439)
  • Twitter Patterns (202)
  • Flash Newsletter (126)
  • hitTest Flash (99)
  • Baza de date auto revizuita (98)

Marcaje articole