1 / 36

Franc.Vrbancic@guest.arnes.si, 2002

IF stavek - odločitveni stavek v programskem jeziku Turbo Pascal (teorija in primer uporabe). ŠC PTUJ, POKLICNA IN TEHNIŠKA ELEKTRO ŠOLA Volkmerjeva 19, 2250 Ptuj Predmet: Algoritmi in programski jeziki. Franc.Vrbancic@guest.arnes.si, 2002.

emery
Download Presentation

Franc.Vrbancic@guest.arnes.si, 2002

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IF stavek - odločitveni stavek v programskem jeziku Turbo Pascal (teorija in primer uporabe) ŠC PTUJ,POKLICNA IN TEHNIŠKA ELEKTRO ŠOLAVolkmerjeva 19, 2250 PtujPredmet: Algoritmi in programski jeziki Franc.Vrbancic@guest.arnes.si, 2002

  2. Odločitveni stavek IF nam omogoča, da z uporabo pogojev določimo, katera opravila, ukaze, prireditve bomo izvajali. To zaporedje stavkov se izvrši, če je pogoj pravilen (true). To zaporedje stavkov sledi then, ki se izvrši, če je pogoj pravilen (true). To zaporedje stavkov sledi else, ki se izvrši, če je pogoj nepravilen (false). Osnovna verzija IF stavka: IF pogoj THEN BEGIN zaporedje stavkov, opravil; END; Razširjena verzija IF stavka: IF pogoj THEN BEGIN zaporedje stavkov 1, opravil1; END ELSE BEGIN zaporedje stavkov 2, opravil2; END;

  3. Izgled razširjenega IF stavka: Diagram poteka: Pogoj IF stavka pogoj zaporedje stavkov 1. zaporedjestavkov 2 Zapis v Turbo Pascalu: nadaljevanje programa pogoj nepravilen pogoj pravilen IF pogoj THEN BEGIN zaporedje stavkov 1; END ELSE BEGIN zaporedje stavkov 2; END; lahko nastopa ali ne

  4. Pri IF stavku moramo upoštevati : • če je pogoj TRUE (pravilen) se izvršijo stavki za THEN, • če je pogoj FALSE (nepravilen) se izvršijo stavki za ELSE, • BEGIN in END sta obvezna, če za then (ali else) sledi več stavkov, drugače ju lahko izpustimo, • ELSE je opcija - lahko nastopa ali ne.

  5. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. Program ifstavek; (* ime programa*) Begin (*glavni start*) End. (*konec glavni*) Navodila: Najprej napišimo ogrodje programa. Z rdečo barvo so označene spremembe programa.

  6. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. Program ifstavek; (* ime programa*) Begin (*glavni start*) End. (*konec glavni*) Var stev1 :Integer; (*prvo število*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Navodila: Dodajmo navodila uporabniku in čitajmo prvo število.

  7. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. , stev2 Write('Podaj drugo število: '); Readln(stev2); Program ifstavek; (* ime programa*) Var stev1 : Integer; (*par števil*) Begin (*glavni start*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) End. (*konec glavni*) Navodila: Čitajmo drugo število.

  8. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) Begin (*glavni start*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); End. (*konec glavni*) If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpis*) Write(’Manjše je drugo število: ’, stev2); End; Readln; (* da si ogledam izpis na monitorju*) Navodila: Preverimo ali je prvo število večje in ugotovitev izpišemo.

  9. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) Begin (*glavni start*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpisi*) Write(’Manjše je drugo število: ’, stev2); End Readln; (* da si ogledam izpis na monitorju*) End. (*konec glavni*) Else (*konec if then*) Begin (*drugo število je večje*) Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; (*konec if else*) Navodila: Dodajmo možnost, da je drugo število večje..

  10. Naloga: Napiši program, ki bo čital par števil in izpisal katero je večje. Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) Begin (*glavni start*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpisi*) Write(’Manjše je drugo število: ’, stev2); End Else Begin (*drugo število je večje*) Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; (* da si ogledam izpis na monitorju*) End. (*konec glavni*) Navodila: Program je končan. Oglejmo si njegovo delovanje.

  11. Delovanja programa: Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Rezerviramo prostor velikosti 16 bitov za spremenljivko “stev1”in 16 bitov za “stev2”. stev1=naključna vrednost stev2=naključna vrednost

  12. Delovanja programa: Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=0 stev2=0

  13. Delovanja programa: Standardna izhodna enota Podaj prvo število: Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=0 stev2=0

  14. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam število 456. Pomnilnik: stev1=456 stev2=0

  15. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=456 stev2=0

  16. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: 123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam število 123. Pomnilnik: stev1=456 stev2=123

  17. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: 123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=456 stev2=123 456 > 123: pravilen (true)

  18. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: 123 Večje je prvo število: 456 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=456 stev2=123 456 > 123 : true

  19. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: 123 Večje je prvo število: 456 Manjše je drugo število: 123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=456 stev2=123 456 > 123 : true

  20. Delovanja programa: Standardna izhodna enota Podaj prvo število: 456 Podaj drugo število: 123 Večje je prvo število: 456 Manjše je drugo število: 123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam katerikoli znak na tipkovnici Pomnilnik: Pogoj: stev1=456 stev2=123 456 > 123 : true

  21. Delovanja programa: Program se konča, vrnemo se v okolje kjer smo program zagnali. Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Rezerviran prostor za spremenljivke se sprosti in je na razpolago drugim programom.

  22. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Rezerviramo prostor velikosti 16 bitov za spremenljivko “stev1”in 16 bitov za “stev2”. stev1=naključna vrednost stev2=naključna vrednost

  23. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=0 stev2=0

  24. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=0 stev2=0

  25. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam število 234. Pomnilnik: stev1=234 stev2=0

  26. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: stev1=234 stev2=0

  27. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: 8123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam število 8123. Pomnilnik: stev1=234 stev2=8123

  28. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: 8123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=234 stev2=8123 234 > 8123: false (nepravilen)

  29. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: 8123 Večje je drugo število: 8123 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=234 stev2=8123 234 > 8123 : false

  30. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: 8123 Večje je drugo število: 8123 Manjše je prvo število: 234 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Pogoj: stev1=234 stev2=8123 234 > 8123 : false

  31. Delovanja programa: drugo število je večje od prvega. Standardna izhodna enota Podaj prvo število: 234 Podaj drugo število: 8123 Večje je drugo število: 8123 Manjše je prvo število: 234 Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Vtipkam katerikoli znak na tipkovnici Pomnilnik: Pogoj: stev1=234 stev2=8123 234 > 8123 : false

  32. Delovanja programa: Program se konča, vrnemo se v okolje kjer smo program zagnali. Standardna izhodna enota Program ifstavek; Var stev1, stev2: Integer; Begin Write('Podaj prvo število: '); Readln(stev1); Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin Writeln(’Večje je prvo število: ’, stev1 ); Write(’Manjše je drugo število: ’, stev2); End Else Begin Writeln(’Večje je drugo število: ’, stev2); Write(’Manjše je prvo število: ’, stev1); End; Readln; End. Tipkovnica: Pomnilnik: Rezerviran prostor za spremenljivke se sprosti in je na razpolago drugim programom.

  33. Dodatno delo: Dodaj,da uporabnik določi, koliko parov števil bomo primerjali. Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) st_parov: ShortInt; (* število parov(8bitov) *) I : integer; (*stevec for zanke (16 bitov)*) Begin (*glavni start*) Write(’Vpisi stevilo parov za primerjavo: ’); Readln (st_parov); For I:=1 to st_parov do begin (*start for*) Writeln(i,'. par števil.'); (*kateri par primerjam*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpisi*) Writeln(’Manjše je drugo število: ’, stev2); End Else Begin (*drugo število je večje*) Writeln(’Večje je drugo število: ’, stev2); Writeln(’Manjše je prvo število: ’, stev1); End; end; (*konec for*) Readln; (* da si ogledam izpis na monitorju*) End. (*konec glavni*)

  34. Končni izgled programa s komentarji Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) st_parov: ShortInt; (* število parov(8bitov) *) I : integer; (*stevec for zanke (16 bitov)*) Begin (*glavni start*) Write(’Vpisi stevilo parov za primerjavo: ’); Readln (st_parov); For I:=1 to st_parov do begin (*start for*) Writeln(i,'. par števil.'); (*kateri par primerjam*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpisi*) Writeln(’Manjše je drugo število: ’, stev2); End Else Begin (*drugo število je večje*) Writeln(’Večje je drugo število: ’, stev2); Writeln(’Manjše je prvo število: ’, stev1); End; end; (*konec for*) Readln; (* da si ogledam izpis na monitorju*) End. (*konec glavni*)

  35. Varianta z dvema IF stavkoma. Program ifstavek; (* ime programa*) Var stev1, stev2: Integer; (*par števil*) st_parov: ShortInt; (* število parov(8bitov) *) I : integer; (*stevec for zanke (16 bitov)*) Begin (*glavni start*) Write(’Vpisi stevilo parov za primerjavo: ’); Readln (st_parov); For I:=1 to st_parov do begin (*start for*) Writeln(i,'. par števil.'); (*kateri par primerjam*) Write('Podaj prvo število: '); (*navodila uporabniku *) Readln(stev1); (*prečitam prvo število*) Write('Podaj drugo število: '); Readln(stev2); If stev1 > stev2 Then Begin (*prvo število je večje*) Writeln(’Večje je prvo število: ’, stev1 ); (* izpisi*) Writeln(’Manjše je drugo število: ’, stev2); End; (* konec prvi IF stavek*) If stev2 > stev1 Then Begin (*drugo število je večje*) Writeln(’Večje je drugo število: ’, stev2); Writeln(’Manjše je prvo število: ’, stev1); End; (*konec drugi IF stavek*) end; (*konec for*) Readln; (* da si ogledam izpis na monitorju*) End. (*konec glavni*)

  36. Opombe na naslov: Franc.Vrbancic@guest.arnes.si Hvala za sodelovanje!

More Related