Löytyisikö apua!!
On nopat[] -taulukko jossa on kuusi nopansilmälukua. Miten tehdä metodi, joka järjestää nopat-taulukon nopat silmälukujen suhteen suuruus-järjestykseen? Ja sitten metodi, joka ensin kutsuu nopat järjestävää metodia ja tarkastaa sitten, pitääkö noppien silmälukujen suhteen se paikkansa, että seuraava on aina edellistä yhtä suurempi?
On nopat[] -taulukko jossa on kuusi nopansilmälukua. Miten tehdä metodi, joka järjestää nopat-taulukon nopat silmälukujen suhteen suuruus-järjestykseen? Ja sitten metodi, joka ensin kutsuu nopat järjestävää metodia ja tarkastaa sitten, pitääkö noppien silmälukujen suhteen se paikkansa, että seuraava on aina edellistä yhtä suurempi?
Vastaukset 3
Vanhimmat
yksinkertainen lajittelu malli.
1. verrataan taulukon alkiota 0 ja 1
jos 0 on suurempi kuin 1-> vaihdetaan lukujen
paikat;
2. verrataan taulukon alkioita 1 ja 2
jos 1 on suurempi kuin 2-> vaihdetaan lukujen
paikat;
3. verrataan taulukon alkioita 2 ja 3
jos 2 on suurempi kuin 3-> vaihdetaan lukujen
paikat;
4. verrataan taulukon alkioita 3 ja 4
jos 3 on suurempi kuin 4-> vaihdetaan lukujen
paikat;
5. verrataan taulukon alkioita 4 ja 5
jos 4 on suurempi kuin 5-> vaihdetaan lukujen
paikat;
Edellistä suoritetaan niin kauan että vaihtoja ei enää tarvitse suorittaa. Nyt taulukko on nousevassa järjestyksessä.
Sitten suhde tarkistus:
1.tarkastetaan onko alkion 1 luku yhtä suurempi kuin alkion 0 luku
jos on--> jatketaan
jos ei--> lopetetaan ja kerrotaan että suhde ei pidä paikkaansa.
jos jatketaan:
2.tarkastetaan onko alkion 2 luku yhtä suurempi kuin alkion 1 luku
jos on--> jatketaan
jos ei--> lopetetaan ja kerrotaan että suhde ei pidä paikkaansa.
jos jatketaan:
3. JNE...
kun ollaan tarkastettu alkioden 4 ja 5 luvut ja suhde pitää paikkansa palataan ja kerrotaan että kaikki hyvin.
tarkastus voi tapahtua esim seuraavasti(C-kielellä):
int tarkastasuhde(){
if(nopat[1]!=nopat[0] 1){
printf("suhde ei pidä paikkaansa");
return(1);
}
else
if(nopat[2]!=nopat[1] 1){
printf("suhde ei pidä paikkaansa");
return(1);
{
else
...
lopussa voidaan palauttaa esim: return(0); jolloin tiedetään että suhde pitää paikkansa.
}
lajittelu hoituu samalla periaatteella.
Eli ei muutakuin koodaileen.. millä kielellä sitä ikinä teetkään niin toivottavasti ohjeet oli tarpeeksi yleispäteviä/ auttoivat edes vähän...=).
Jep.. eli lueskelin tota listaa alaspäin ja siltä sitten huomasinkin että mistä on kyse... =)
nopat[] taulukossa on siis silmälukuja,
tee toinen taulukko simmut[], jossa on siis 6 alkiota!
sitten käyt nopat läpi tyyliin:
simmut[nopat[1]]=simmut[nopat[1]] 1
simmut[nopat[2]]=simmut[nopat[2]] 1
...
sitten vaan purat ne lokeroista järjestyksessä!
siinä sulla verraton järjestysalgoritmi, hilpatihei!
ja jos haluat 6 nopasta katsoa, että seuraava on aina yhtä suurempi, nii käy läpi simmut[] ja jos joku on erisuuri kuin yksi, niin eipäs pidäkään paikkaansa!