Cum se face un progam ce aranjeaza crescator nr 1, 2, 3.
Doresc o programa sau codurile, chiar explicatii.
Răspunsuri la întrebare
Răspuns de
4
Ti am scris un program care aranjeaza nu doar numerele 1 2 3 crescator,ci orice sir de numere doresti tu.
Vom compara primul element cu toate elementele care urmeaza sa fie citite dupa el. Daca gasim un element mai mic decat primul atunci le interschimbam pe cele doua,aceasta interschimbare o facem cu ajutorul variabilei aux. Apoi continuam cu al doilea element al sirului, pe care, de asemenea il comparam cu toate elementele care vin dupa el şi în caz de inversiune interschimbam cele două elemente. Procesul continua tot asa pana la penultimul element al sirului care va fi comparat cu ultimul element din sir.
#include<iostream>
using namespace std;
int main()
{
int n,a[i],aux,i,j;
cout<<"Introduceti numarul de elemente =";
//n reprezinta numarul de numere pe care vrem sa le sortam crescator
cin>>n;
cout<<"Introduceti numerele :";
for(i=1;i<=n;i++)
cin>>a[i];
//partea care urmeaza e algoritmul de sortarre
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if (a[j]<a[i])
{
aux=a[i];
a[i]=a[j];
a[j]=aux;
}
cout<<"Numerele ordonate crescator sunt: ";
for(i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}
Vom compara primul element cu toate elementele care urmeaza sa fie citite dupa el. Daca gasim un element mai mic decat primul atunci le interschimbam pe cele doua,aceasta interschimbare o facem cu ajutorul variabilei aux. Apoi continuam cu al doilea element al sirului, pe care, de asemenea il comparam cu toate elementele care vin dupa el şi în caz de inversiune interschimbam cele două elemente. Procesul continua tot asa pana la penultimul element al sirului care va fi comparat cu ultimul element din sir.
#include<iostream>
using namespace std;
int main()
{
int n,a[i],aux,i,j;
cout<<"Introduceti numarul de elemente =";
//n reprezinta numarul de numere pe care vrem sa le sortam crescator
cin>>n;
cout<<"Introduceti numerele :";
for(i=1;i<=n;i++)
cin>>a[i];
//partea care urmeaza e algoritmul de sortarre
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if (a[j]<a[i])
{
aux=a[i];
a[i]=a[j];
a[j]=aux;
}
cout<<"Numerele ordonate crescator sunt: ";
for(i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}
allpaconeboss:
Unde ai invatat asta?
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă