Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilArnošt Bureš
1
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ ŘAZENÍ PRVKŮ – OPAKOVANÝM VÝBĚREM NEJVĚTŠÍHO PRVKU (SELECTSORT) Vytvořila: RNDr. Ivanka Dvořáčková Gymnázium K. V. Raise, Hlinsko, Adámkova 55leden 2013
2
PRINCIP – mezi N prvky pole zjistíme index největšího prvku – vzájemně zaměníme největší prvek a poslední prvek (N-tý) – pak hledáme největší prvek mezi (N–1) prvky (N-tý už neuvažujeme, je již tam, kde patří) – tento nalezený (vlastně druhý největší) zaměníme s prvkem s indexem (N–1) (předposledním) – pak hledáme největší prvek z (N–2) prvků atd. Poznámka Lze i naopak – vyhledáme nejmenší prvek a vyměníme s prvním, atd.
3
Příklad Vysvětlete tuto metodu na zadané posloupnosti čísel, postup průběžně zapisujte: 6, 20, 4, 10, 17, 1, 12, 3. 6 20 4 10 17 1 12 3 6 3 4 10 17 1 12 │ 20 6 3 4 10 12 1 │ 17 20 6 3 4 10 1 │12 17 20 6 3 4 1 │ 10 12 17 20 1 3 4 4 │ 6 10 12 17 20 1 3 3 │ 4 6 10 12 17 20
4
Příklad a) Je dána posloupnost N celých kladných čísel. Vytvořte program, který – prvky posloupnosti načte do jednorozměrného pole, – prvky posloupnosti uspořádá podle velikosti vzestupně s využitím metody opakovaného výběru největšího prvku (selectsort), – nakonec uspořádanou posloupnost vypíše. b) Vytvořený program přepište a odlaďte na počítači.
5
program SELECTSORT (input, output); uses CRT; var N, I, K, MAX, IMAX: integer; A: array [1..100] of integer; begin clrscr; writeln (‘Zadej počet čísel N:‘); readln (N); for I := 1 to N do begin writeln (‘Zadej číslo: ‘); read(A[I]) end; for I := N downto 2 do begin MAX := A[1]; IMAX := 1; for K := 2 to I do if A[K] > MAX then begin MAX := A[K]; IMAX := K {nalezení indexu největšího prvku} end; A[IMAX] := A[I]; A[I] := MAX {proběhla výměna} end; for I := 1 to N do writeln (A[I], ‘ ⌴ ‘); readkey end.
6
Použité zdroje HUBKA, J. a L. SILVERIO. Sbírka příkladů ze základů programování. Krajský pedagogický ústav Hradec Králové: Sdružení uživatelů počítačů JSEP a SMEP Hradec Králové, 1988. Všechny grafické prvky a obrázky algoritmů jsem vytvořila sama s využitím volně šiřitelného programu Open Office.
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.