Kaksiulotteisessa taulukossa(matriisi) vastaukset on 200 riviä ja 41 saraketta. Kunkin rivin alussa on henkilön henkilönumero. Kuinka taulukko järjestetään henkilönumeron mukaan, niin että myös muut tiedot siirtyvät vastaavasti samalle riville(valintalajittelu)?
Jos kyseessä olisi vektori, homma menisi näin:
MODULE valintalajittelu(T,n)
FOR i : = 1,2,…,n-1 DO
FOR j i 1,…n DO
IF vastaukset(i)>vastaukset(j) THEN
vaihda (vastaukset(i), vastaukset(j)
ENDIF
ENDFOR
ENDFOR
ENDMODULE
Miten sama tehdään kaksiulotteisena niin että koko rivi vaihtaa paikkaa?
Jos kyseessä olisi vektori, homma menisi näin:
MODULE valintalajittelu(T,n)
FOR i : = 1,2,…,n-1 DO
FOR j i 1,…n DO
IF vastaukset(i)>vastaukset(j) THEN
vaihda (vastaukset(i), vastaukset(j)
ENDIF
ENDFOR
ENDFOR
ENDMODULE
Miten sama tehdään kaksiulotteisena niin että koko rivi vaihtaa paikkaa?
Vastaukset 2
Vanhimmat
No hei..olisit nyt nähnyt edes vähän enemmän vaivaa kuin vain tyytynyt copypastettamaan sen tehtävänannon suoraan sellaisenaan tähän. Tuollaisenaan pyrkimyksesi päästä helpolla on täysin läpinäkyvä yritys. Oikeasti (aikuisten).
Jos tämä onkin jotain itseopiskelumateriaalia, niin se olisi kannattanut mainita tällaisten epäilyjen varalta. Ei pahalla, mutta näitä näkee täällä jatkuvasti.
Yritä vaikka niin, että valintalajittelussa käytät muotoa
IF vastaukset(i,1)> vastaukset(i 1,1) THEN
vaihda vastaukset(i,(1,2,...n)),vastaukset(i 1,1,2,..n)
ENDIF
vaihda pitää kai olla oma modulinsa eli
MODULE
vaihdavast(vastaukset(i,n),vastaukset(i 1,n))
jne...
Jotenkin tuohon tapaan se pitäisi tehdä. Yliopistolliset koodarit jatkakoot, on niin kauan aikaa tuosta algoritmikielestä. Vieläkö yliopistolla luetaan tuota Johdatus tietojenkäsittelytieteeseen luentomonistetta. ;=)