Programozási tételek
Programozási alapismeretek 2011/2012 1. Sorozatszámítás Algoritmus (általánosan): (összegzés) esetén: Változó i:Egész S:=F0 i=1..N S:=f(S,X[i]) – Változó i:Egész Zöld: határok, Kék: elemek, Piros: műveletek S:=0 i=1..N S:=S+X[i] 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
Programozási alapismeretek 2011/2012 2. Megszámolás Algoritmus: Változó i:Egész Db:=0 i=1..N T(X[i]) Db:=Db+1 I N 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
3. Maximum-kiválasztás (maximális érték és index) Programozási alapismeretek 2011/2012 3. Maximum-kiválasztás (maximális érték és index) Algoritmus: Változó i:Egész MaxÉrt:=X[1]; Max:=1 i=2..N X[i]>MaxÉrt MaxÉrt:=X[i] Max:=i I N 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
Programozási alapismeretek 2011/2012 4. Keresés Algoritmus: Változó i:Egész i:=1 iN és nem T(X[i]) i:=i+1 Van:=iN Van Ind:=i Ért:=X[i] I N 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
Programozási alapismeretek 2011/2012 5. Eldöntés Algoritmus1: Algoritmus2: Változó i:Egész i:=1 iN és nem T(X[i]) i:=i+1 Van:=iN Változó i:Egész i:=0; Van:=Hamis i<N és nem Van i:=i+1; Van:=T(X[i]) 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
Programozási alapismeretek 2011/2012 5. Eldöntés Feladatvariáns: … az összes elem olyan-e … Algoritmus: Változó i:Egész i:=1 iN és nem T(X[i]) i:=i+1 Mind:=i>N A ciklusfeltételben tehát a „nem” nincs! 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
Programozási alapismeretek 2011/2012 6. Kiválasztás Algoritmus: i:=1 nem T(X[i]) i:=i+1 Ind:=i Ért:=X[i] 2019.05.02. 3:05 Horváth - Papné - Szlávi - Zsakó: Programozás 3. előadás Szlávi-Zsakó: Programozási alapismeretek 4. előadás előadás
7. Másolás – függvényszámítás Programozási alapismeretek 7. Másolás – függvényszámítás 2013.04.07 Algoritmus: Másolás – függvényszámítás: Változó i:Egész Ciklus i=1-től N-ig Y[i]:=X[i] Ciklus vége Eljárás vége. Megjegyzés: az Y:=X értékadás helyettesítheti, ha Y és X azonos elemszámúak. Kivéve, ha az indexek különbözőek: Y[p[i]]:=X[i] 2019.05.02. 3:05 Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 5. előadás 2012/2013
Programozási alapismeretek 8. Kiválogatás 2013.04.07 Algoritmus: Nem fagyott napok: Változó i:Egész Db:=0 Ciklus i=1-től N-ig Ha H[i]>0 akkor Db:=Db+1 NF[Db]:=i Ciklus vége Eljárás vége. 2019.05.02. 3:05 Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 5. előadás 2012/2013
Programozási alapismeretek 10. Szétválogatás 2013.04.07 Algoritmus: Szétválogatás: Változó i:Egész Db:=0 Ciklus i=1-től N-ig Ha T(X[i]) akkor Db:=Db+1 Y[Db]:=i különben Z[i-Db]:=i Ciklus vége Eljárás vége. Megjegyzés: Az első i elemből Db kerül az Y vektorba, i-Db pedig a Z-be. 2019.05.02. 3:05 Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 5. előadás 2012/2013
Programozási alapismeretek 11. Metszet 2013.04.07 Algoritmus: Metszet: Változó i,j:Egész Db:=0 Ciklus i=1-től N-ig j:=1 Ciklus amíg j≤M és X[i]≠Y[j] j:=j+1 Ciklus vége Ha j≤M akkor Db:=Db+1; Z[Db]:=X[i] Ciklus vége Eljárás vége. Megjegyzés: A megoldás egy kiválogatás és egy eldöntés. (Db,Z)= Metszet(N,X,M,Y) (Db,Z)= Kiválogatás tétel! Eldöntés tétel! 2019.05.02. 3:05 Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 5. előadás 2012/2013
Programozási alapismeretek 12. Unió 2013.04.07 Algoritmus: Unió: Változó i,j:Egész Z:=X; Db:=N Ciklus j=1-től M-ig i:=1 Ciklus amíg i≤N és X[i]≠Y[j] i:=i+1 Ciklus vége Ha i>N akkor Db:=Db+1; Z[Db]:=Y[j] Ciklus vége Eljárás vége. Megjegyzés: A megoldás egy másolás, kiválogatás és eldöntés. Másolás tétel! (Db,Z)=Unió(N,X,M,Y) (Db,Z)= Hogyan néz ki a szimmetrikus differencia algoritmusa? Kiválogatás tétel! Eldöntés tétel! 2019.05.02. 3:05 Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 5. előadás 2012/2013