7.2.. Urediti 4 učitana broja po opadajućem redoslijedu.
Opis rješenja:
Porede se prva dva broja
a i b i izvodi uređenje (a < b izvedi izmjenu) , zatim se poredi a i c i izvodi uređenje (a < c izvedi izmjenu). Na kraju se uređuju poslednja dva broja b i c (b < c izvedi izmjenu).
|
|
|
|
Slika 1. Početni položaj |
Slika 2. Animacija |
Slika 3. Krajnji položaj |
Slika 4. Redoslijed zamjene |
Primjer: 7 > 5 > 3 < 2 - opadajući redoslijed
Vrijednost |
Oznaka |
Oznaka2 |
Opis |
2 |
min |
min |
najmanji |
7 |
max |
max |
najveći |
Listing programa:
// 07211157
#include <iostream>
using namespace std;
int main()
{
float a, b, c, d, p; // deklarisanje varijabli
cout << "Unesite cetiri broja: " ;
cin >> a >> b >> c >> d; // ulaz 4 broja
cout << "Ucitana cetiri broja: a " << a << " b " << b << " c " << c << " d " << d << endl;
if(a < b) // varijabla a manja od varijble b; tj. pogresan redoslijed zamjeni mjesta ?
{
p=a; // pomocna varijabla p prima vrijednost varijable a
a=b; // varijabla a prima vrijednost varijable b
b=p; // varijabla b prima vrijednost pomocne varijabla p
} // zamjenjen redoslijed prve dvije varijable
if(a < c) // pogresan redoslijed zamjeni mjesta?
{
p=a;
a=c;
c=p;
}
if(a < d) // pogresan redoslijed zamjeni mjesta?
{
p=a;
a=d;
d=p;
}
if(b < c) // pogresan redoslijed zamjeni mjesta?
{
p=b;
b=c;
c=p;
}
if(b < d) // pogresan redoslijed zamjeni mjesta?
{
p=b;
b=d;
d=p;
}
if(c < d) // pogresan redoslijed zamjeni mjesta?
{
p=c;
c=d;
d=p;
}
cout << "Uredjena cetiri broja: a " << a << " b " << b << " c " << c << " d " << d << endl;
return 0;
}
Ispis na ekranu:
Index
|