PSD

advertisement
PSD Basisstructuren
programmeren
Wat is een
programmastructuurdiagram?
• Voor het opzetten en weergeven van deze
programmastructuur is een speciale
schematechniek ontwikkeld: het
programmastructuurdiagram (PSD). Dit
schema geeft de samenhang (de structuur) van de
instructies binnen een programma weer..
• Bij een PSD gaat het alleen om de
probleemoplossing en gelden er geen strenge
taalregels. De uitgewerkte probleemoplossing
(PSD) is voor alle programmeertalen te gebruiken.
PSD’s zijn taalonafhankelijk. Bij het maken van
een PSD wordt gebruik gemaakt van drie
(basis)structuren
De basisstructuren van het PSD
Opeenvolging
Keuze
Herhaling
Eerst dit...
Dan dat...
Voorwaarde
Ja
Zolang voorwaarde
Nee
Opeenvolging / sequentie
Eerst dit...
Dan dat...
Vervolgens dat...
De Programmeer-opdracht
• Vraag iemand naar zijn voornaam en heet hem
daarna persoonlijk welkom.
• Vraag naar zijn leeftijd.
• Bereken het verschil met de leeftijd van de
informatica-docent.
• Druk dit leeftijdsverschil af op het beeldscherm.
Wat is in bovenstaande tekst variabel? Met andere woorden:
Welke woorden krijgen steeds een andere waarde wanneer het
programma door verschillende personen wordt uitgevoerd?
De PSD-opdracht
• Maak een PSD waarin de drie soorten
opdrachten (lees, schrijf, wordt) duidelijk
worden aangegeven.
• Geef door middel van onderstrepen aan
welke de variabelen zijn.
Opeenvolging
Schrijf: Hoe heet je? Jan
Lees: voornaam
Jan
Schrijf: Welkom voornaam.
Hoe oud ben je? 17 Ja
n
Lees: leeftijd
17
verschil := 37 - leeftijd
20
17
Schrijf: verschil
20
Intern geheugen
Jan
17
20
Programma in Pascal
Programma-naam
+ omschrijving
Variabelen
declareren
Hoofdprogramma
program opeenvolging;
{Vraag iemand naar zijn voornaam en heet hem daarna welkom.
Vraag naar zijn leeftijd en bereken het verschil met de leeftijd
van de informaticadocent}
Var naam type
voornaam: String;
leeftijd: Integer;
verschil: Integer;
Begin
write('Wat is je voornaam? ');
readln(voornaam);
writeln;
write('Hallo ',voornaam, '. Welkom bij de eerste programmeerles.');
writeln;
write('Hoe oud ben je? ');
readln(leeftijd);
verschil := 37-leeftijd;
write('Je bent ',verschil, ' jaar jonger dan je informaticadocent.');
readln;
End.
Opeenvolging in de praktijk.
We gaan nu het programma laten uitvoeren in Pascal
Keuze / selectie
Voorwaarde
Ja
Nee
De Programmeer-opdracht
• Vraag iemand naar zijn voornaam en heet hem daarna
persoonlijk welkom.
• Vraag hem hoeveel sigaretten hij per dag rookt.
• Als het aantal nul is druk dan af: “Houden zo!”
• Als het aantal méér dan nul is druk dan af: “Tijd om te
stoppen!”
• Druk af “Tot ziens”.
Wat is in bovenstaande tekst variabel? Met andere woorden:
Welke woorden krijgen steeds een andere waarde wanneer het
programma door verschillende personen wordt uitgevoerd?
Het PSD
Schrijf: Hoe heet je? Pim
Lees: voornaam
Intern geheugen
Pim
Schrijf: Hallo voornaam. Pim
Aantal sigaretten per dag? 5
Lees: aantal
5
Ja
Voorwaarde
aantal = 0
5
Schrijf :
“Houden zo!”
Nee
Schrijf :
“Tijd om te stoppen!”
Schrijf: “Tot ziens”.
Pim
5
Programma in Pascal
Programma-naam
+ omschrijving
Variabelen
declareren
Hoofdprogramma
program roken;
{Vraag iemand naar zijn voornaam en heet hem daarna persoonlijk
welkom. Vraag hem hoeveel sigaretten hij per dag rookt. Als het
aantal nul is druk dan af: “Houden zo!”Als het aantal méér dan nul is
druk dan af: “Tijd om te stoppen!”Druk af “Tot ziens”.}
Var naam type
voornaam: String;
aantal: Integer;
Begin
write('Wat is je voornaam? ');
readln(voornaam);
writeln;
write('Hallo ',voornaam, '. Hoeveel sigaretten rook jij per dag? ');
readln(aantal);
if aantal = 0 then
write(’Houden zo!')
else write(‘Tijd om te stoppen’);
writeln;
write(‘Tot ziens’);
readln;
End.
Keuze / selectie in de praktijk.
We gaan nu het programma “Roken” laten uitvoeren in Pascal
Herhaling / repetitie / iteratie
Zolang voorwaarde
De Programmeer-opdracht
• Laat een programma de getallen 10 tot en met 0 op
het beeldscherm afdrukken.
Wat is in bovenstaande tekst variabel? Met andere woorden:
Welke woorden krijgen steeds een andere waarde wanneer het
programma door verschillende personen wordt uitgevoerd?
Het PSD
Intern geheugen
getal := 10
Zolang voorwaarde
getal >= 0
Schrijf: getal
getal := getal - 1
Schrijf: We have a liftoff...
10
6
2
9
5
1
8
4
7
3
0
Programma in Pascal
Programma-naam
+ omschrijving
Variabelen
declareren
Zolang voorwaarde
Hoofdprogramma
Program countdown;
{Laat een programma de getallen 10 tot en met 0 op het beeldscherm
afdrukken.}
Var naam type
getal: Integer;
Begin
getal := 10;
while getal >= 0 do
begin
writeln(getal);
getal := getal-1;
end;
writeln(‘We have a liftoff…’);
readln;
End.
Herhaling / iteratie in de praktijk.
We gaan nu het programma “Countdown” laten uitvoeren in Pascal
Download