Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

ALGO – Algoritmizace 6. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.

Podobné prezentace


Prezentace na téma: "ALGO – Algoritmizace 6. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D."— Transkript prezentace:

1 ALGO – Algoritmizace 6. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.

2 2/12 Příklad rotace doprava Sestavte algoritmus, který posune všechny prvky pole A(N) o jednu pozici doprava pro N=50 do výstupního pole B(N). Pozn. Změna oproti příkladu 5.3, kde se rotovalo v rámci jednoho pole. Vstup: Pole A(N) Výstup: Pole B(N) RUSAKO ORUSAK

3 3/12 1.načtení vstupních čísel For I = 1 to I = 50 Step L = 1 Do Vstup A(I) B(I)= „ „ (vynulování pole B(N) ) End For I 2. provedení přesunu For I = 1 to I = 49 Step L = 1 Do ???? End For I B ( ? ) = A(50) Příklad řešení

4 4/12 Příklad 6.2 Sestavte algoritmus, který sečte všechny prvky posloupnosti A (I) do pole Souc(1), jejichž index je liché číslo sečte všechny prvky posloupnosti A (I) do pole Souc(2), jejichž index je sudé číslo pro posloupnosti délky N Např. A(): Souc (1)= 6 Souc(2)=2 Nechť existuje funkce Modulo, která zjišťuje zbytek po celočíselném dělení. Modulo (14,2) = 0 Modulo (21,2) = 1 Modulo (7,3) =

5 5/12 Příklad načtení vstupních čísel For I = 1 to I = N Step L = 1 Do Vstup A(I) End For 2. spočítání součtů Souc(1)=0 (vynulování obou míst pole Souc) Souc(2)=0 For I = 1 to I = N Step L = 1 Do IF Modulo(I,2)<>0 Then (je liché) Souc(1)=Souc(1)+A(I) Else Souc(2)=Souc(2)+A(I)(sudé) End If End For 3.tisk výsledků For I = 1 to I = 2 Step Do Souc(I) End For

6 6/12 Příklad 6.3 Sestavte algoritmus, který zjistí řádkové součty v matici A(N,M). N – řádků M - sloupců Výsledek: pole S(N) {N se musí shodovat s rozměrem matice N !!} Např.: N M

7 7/12 Příklad řešení 1.načtení vstupních čísel matice For I = 1 to I = N Step L = 1 Do For J = 1 to J = M Step K = 1 Do Vstup A(I, J) End For J End For I 2. spočítání součtů v řádcích vynulování pole S For I = 1 to I = N Step L = 1 Do S(I)=0 End For I N M N

8 8/12 Příklad řešení 2.součty v řádku For I = 1 to I = N Step L = 1 Do For J = 1 to J = M Step K = 1 Do S(I)=S(I)+A(????) End For J End For I 3. tisk pole S For I = 1 to I = N Step L = 1 Do tisk S(I) End For I N M

9 9/12 Příklad 6.4 – samostatné řešení Sestavte algoritmus, který zjistí sloupcové součty v matici A(N,M). N – řádků M - sloupců Výsledek pole S(M) Např.: A (N,M): S(M): Pozn: Můžeme matici A procházet po řádcích nebo po sloupcích – obě řešení jsou možná

10 10/12 Příklad 6.5 Sestavte algoritmus, který zamění libovolné dva řádky R, S v matici A(N,M). N – řádků M - sloupců Použijte pomocné pole Pom (???) Např.: 1. a 3. řádek, tj. R = 1, S = 3 Řešení: a)Přesun R-tého řádku do pole Pom b)Přesun S-tého řádku na místo R-tého řádku c)Přesun z pole Pom do S-tého řádku Lze řešit jen s jednoduchou pomocnou proměnnou PP místo pole Pom(N)? ANO-NE ?

11 11/12 Příklad řešení 1.načtení …. 2.a) přesun R-tého řádku do pole Pom For I = 1 to I = M Step L = 1 …….. End For I 2.b) Přesun S-tého řádku na místo R-tého řádku For I = 1 to I = M Step L = 1 …….. End For I 2.c) Přesun z pole Pom do S-tého řádku For I = 1 to I = M Step L = 1 …….. End For I 3. tisk výsledné matice A (N,M) ……

12 12/12 Př. žárovky rozmyslete části programu – ne řešení, jak všechny zhasnout, ale jak zprogramovat, aby fungovalo Zhasnutí, rozsvícení podle situace „změna v rohu“ „změna na kraji“ „změna uprostřed“


Stáhnout ppt "ALGO – Algoritmizace 6. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D."

Podobné prezentace


Reklamy Google