Startseite
    Kontrolle 1
    Kontrolle 2
    Kontrolle 3
    Kontrolle 4/5
  Archiv
  Streich 1
  Streich 2
  Streich 3
  Streich 4/5
  Gästebuch
  Kontakt
 


http://myblog.de/dpaschi

Gratis bloggen bei
myblog.de





Funktion/Proceduren

Kontrollfragen 4./5. Streich

Kontrollfragen Funktionen/Prozeduren/Units:


1. Nennen Sie mindestens 4 Gemeinsamkeiten von Funktionen und Prozeduren!
- deklariert im Interface
- lokale Variablen und formale Parameter
- bestehend aus Kopf-/Deklaration und Anweisungsteil
- im Unterprogramm mit Namen und Parameter aufgerufen

2. Wie viele Werte können an eine Funktion übergeben werden?
- unendlich viele

3. Wie viele Werte kann eine Funktion zurückliefern?
- genau 1 Wert wird zurückgegeben

4. Wie viele Werte kann eine Prozedur zurückliefern?
- unendlich viele

5. Beschreiben Sie den allgemeinen Aufbau einer Funktion!
function
FName(Variable:Typ):Ausgabetyp
begin
Anweisung
end;

6. Beschreiben Sie die verschiedenen Varianten zur Rückgabe der Werte bei Funktionen. Welche dieser Varianten sollte man bevorzugen? Warum?
- Funftionsname
- Result

7. Beschreiben Sie den allgemeinen Aufbau einer Prozedur!
procedure PName(Eingangsvariable:EVTyp; var
Ausgabevariable:AVTyp)
var lokale Variable:Typ;
begin
Anweißung
end;

8. Nennen Sie drei Vorteile der Arbeit mit Units!
- Übersichtlichkeit
- kann man in unterschiedlichen Units so oft man will
einsetzen

9. Aus welchen drei Teilen besteht eine Unit mindestens?
- Unit-Kopf/Kopfzeile
- Interfaceteil
- Implementierungsteil
10. Welche zwei weiteren Teile kann eine Unit noch besitzen?
- Initialisierungsteil
- Finialisierungsteil

11. Beschreiben Sie die Funktion und den Aufbau der einzelnen Teile der Unit!
Kopfzeile:
Schlüsselwort=Unit
- der Name der Unit muss mit den Dateinamen übereinstimmen
Interfaceteil:
Schlüsselwort=Interface
- enthält die Liste aller öffentlichen bezeichner z.B. Variablen,
Dateitypen, Proceduren, Konstanten
Implementierungsteil:
Schlüsselwort=Implementation
- Programmblöcke, öffentliche Fkt. oder Proceduren
hier kann noch mehr deklariert werden
Initialisierungsteil:
Schlüsselwort=Initialization
- enthält Operationen die nur einmal durchgeführt wird

12. Welche Einschränkungen gelten für die Kopfzeile einer Unit?
- sie muss mit den Dateinamen der Unit übereinstimmen
- keine Umlaute, Sonderzeichen

13. Wie kann man eine neue Unit erzeugen?
Datei>Neu>Unit

14. Wie und wo kann man eine vorhandene Unit in ein neues Programm einbinden?
- Im Implementierungsteil des neuen Programmes, jeweils mit ,,Uses".
Nun ist es möglich mit den Funktionsnamen der Unit und übergebenen Werten die Unit einzubinden.

15. Nennen Sie je ein Beispiel für vorhandene Delphifunktionen, die mit keinem, mit einem bzw. mit mehreren Parametern aufgerufen werden!
- random(30)
- pi()
- StrToFloatF(variable,ffFixed,10,2)
- Mittelwert
- Zufallszahlen
- Maximum
- Vergleich

16. Was passiert, wenn man bei der von uns behandelten Prozedur TAUSCHE das Schlüsselwort VAR in der Kopfzeile weglässt?
- Fehler beim Kompelieren, undefinierter Bezeichner
- gibt kein Wert zurück

17. Wie kann man eine Funktion in eine gleichnamige Prozedur umwandeln? Was ändert sich am Aufruf der Prozedur gegenüber dem Aufruf der Funktion?
- function kreisfl.(r:real):real;
begin
result: pi*r*r
end;
-> procedure kreisfl. (r:real;var kreisfl.:real);
begin
kreisfl.: pi*r*r
end;

18. Wie kann man den Wert von zwei Variablen tauschen?
- mit einer Hilfsvariable
Zahl1 auf Hilfsvariable Zahl2 auf Zahl1 und Hilfsvariable auf Zahl2.
12.2.07 13:30


Kontrollfragen 3. Streich

1. Wir haben eine Möglichkeit kennen gelernt, eine Grafik auf einen Knopf vom Typ TBitBtn zu erzeugen. Nennen Sie diese Möglichkeit!

2. In welchem Bereich werden Zufallszahlen durch die folgenden Zeilen erzeugt?
a) Zfz:= Random (20)+10; b) Zfz:= Random (10)+20;
c) Zfz:= Random (55)+44; d) Zfz:= Random (33)-62;

3. Durch welchen Quelltext erzeugt man ganzzahlige Zufallszahlen in folgenden Bereichen und weist sie der Variablen Zfz zu?
a) von 20 bis 40 b) von 50 bis 100 c) von -5 bis 5
d) von -30 bis -15

4. Was versteht man unter einer lokalen Variablen? Was ist ihr Gültigkeitsbereich und wo kann man sie deklarieren?

5. Was versteht man unter einer globalen Variablen? Was ist ihr Gültigkeitsbereich und wo kann man sie deklarieren?

6. Nennen Sie mindestens 4 vordefinierte Farbkonstanten mit ihrer deutschen Bedeutung!

7. Wie kann man die Schriftfarbe eines Labels/Panels zur Laufzeit ändern?

8. Wie kann man die Schriftgröße eines Labels/Panels zur Laufzeit ändern?

9. Nennen Sie ein Ereignis, das jeweils beim Start des Programms auftritt. Wie kann man eine Ereignisbehandlungsroutine für dieses Ereignis erzeugen?

10. Wie kann man den Text in einem Edit-Feld zur Laufzeit löschen?

11. Wie kann man die Ausgabe auf einem Panel zur Laufzeit löschen?

12. Wenn eine bestimmte Bedingung erfüllt ist, sollen 3 Anweisungen ausgeführt werden. Wie kann man das erreichen?

13. Wie kann der Fokus zur Laufzeit auf ein Edit-Feld gelenkt werden?

14. Wie kann der Fokus zur Laufzeit auf ein Label gelenkt werden?

15. Wie kann man erreichen, dass in einem Programm durch Aufruf der Funktion Random wirklich zufällige Zufallszahlen erzeugt werden?

16. Beschreiben Sie einen Weg, wie man mit möglichst wenigen Versuchen eine Zufallszahl in einem bestimmten Bereich ermitteln kann. Wie viele Versuche benötigt man nach dem von Ihnen genannten Verfahren maximal, um eine Zahl im Bereich von 100, 1000, 2000 bzw. 10000 Zahlen richtig zu erraten? Begründen Sie Ihre Aussage!

17. warum ist es sinnvoll, ein Programm strukturiert aufzuschreiben?

18. Welche Regeln zur Strukturierung von Programmen kennen Sie?

19. Wie kann man Werte von einer Prozedur in eine andere Prozedur übergeben? Wo findet dies in unserem Programm Anwendung?

Für die nächsten 4 Aufgaben soll der folgende Sachverhalt gelten: In einem Programm ist eine globale Variable mit Namen ZAHL deklariert. In einer Prozedur (Button1Click) wurde auch eine Variable mit Namen ZAHL deklariert, eine zweite Prozedur (Button2Click) enthält keine Variable mit Namen ZAHL.

20. Wie ändert sich der Wert der globalen Variablen ZAHL, wenn der Inhalt der Variablen ZAHL in der Prozedur Button1Click auf den Wert 20 gesetzt wird?

21. Wie ändert sich der Wert der globalen Variablen ZAHL, wenn der Inhalt der Variablen ZAHL in der Prozedur Button2Click auf den Wert 50 gesetzt wird?

22. Wie ändert sich der Wert der lokalen Variablen ZAHL in der Prozedur Button1Click, wenn der Inhalt der globalen Variablen ZAHL auf den Wert 100 gesetzt wird?

23. Wie ändert sich der Wert der Variablen ZAHL in der Prozedur Button2Click, wenn der Inhalt der globalen Variablen ZAHL auf den Wert 100 gesetzt wird?




1. Die Definition eines BitBut erfolgt in der oberen Menüleiste im Regestrierreiter „Zusätzliches“.
Eine nachträgliche Editierung ist durch „Kind“ möglich.
2. a) 10-29 b) 20-29 c) 44-98 d) (-62) - (-30)
3. a) zfz:=random (21)+20 b) zfz:=random (51)+50 c) zfz:=random(11)-5
d) zfz:=random (16)-30
4. Sie wird nur für die temporäre Programmausführung verwendet, andere Programmteile können nicht auf sie zugreifen. Sie wird vor “begin” des jeweiligen Programmes mit “var”
deklariert.
5. Sie wird bei der kompletten Programmausführung verwendet, alle Programmteile können auf sie zugreifen und editieren. Sie wird unter “implemtation” mit “var” deklariert.
6. clsilver = silber, clolive = Olive, clblue = blau, clred = rot
7. AufgabenPanel.Font.Color:= clred;
8. AufgabenPanel.Font.size:= 12;
9. FormCreate ist ein Ereignis, ein Verweis darauf kann im Objektinspektor geschehen. (OnClick)
10. BeispielEdit.Text:=’ ‘;
11. BeispielPanel.Text:=’ ‘;
12.If Bedingung:=1
Then Begin
Anw1; Anw 2; Anw 3
End;
13. BeispielEdit.SetFocus;
14. BeispielLabel.SetFocus;
15. randomize;
random:= ( );
16. Man nimmt immer die hälfte. Z.B. Zufallszahl 76
100 ( Zahl zu groß), 50 ( Zahl zu klein ), 75 ( Zahlzu klein), 80 ( Zahl zu groß ),
76 ( Zahl richtig )
- Begründung: Argument ad hominem ( Einweisung durch Lehrkraft )
17. – man kommt nicht durcheinander
- hilft bei Fehleranalyse
- einfacher im nachhinein etwas hinzu zufügen
- abweichung in der Syntax können zu fehlern beim Compilieren führen
18. Elemente einer Struktur werden gleich eingerückt.
20. Variable Zahl wird auf 20 gesetzt. Globale Variable verändert sich nicht.
21. Globale Variable wird auf 50 gestzt.
22. Es gilt alleinig der Wert der lokalen Variable.
23. Es gilt der Wert der globalen Variable. ( 100 )
21.11.06 13:14


1. Nennen Sie mindestens 6 Eigenschaften, welche sowohl die Panel- als auch die Editkomponente besitzen, und beschreiben Sie deren Bedeutung!

2. Warum ist es sinnvoll, die Eigenschaft NAME bestimmter Komponenten zu ändern? Bei welchen Komponenten macht das wenig Sinn?

3. Wie kann man ein Ereignis erzeugen, das auf das Drücken eines Knopfes reagiert?

4. Geben Sie einen Variablentyp an, in dem man ganze Zahlen speichern kann! Welcher Variablentyp wird zum Speichern gebrochener Zahlen benutzt?

5. Wie kann man einer Variablen in Delphi einen Wert zuweisen?

6. Welche Funktionen zur Umwandlung von Variablentypen haben Sie bisher kennengelernt? Beschreiben Sie deren Aufgaben.

7. Wie kann man die Wurzel aus einer eingegebenen Integer-Zahl ziehen? Was muss dabei beachtet werden?

8. Eine gebrochene Zahl soll auf 3 Nachkommastellen genau auf einem Edit-Feld ausgegeben werden. Wie lautet der entsprechende Quelltext?

9. Welche Regeln gelten für die Namensgebungen bei Bezeichnern?

10. Welche der folgenden Namen sind gültige Bezeichner, welche nicht? Begründen Sie!

a )Seite1 b)Seite 2 c)Flaeche_1 d)_Flaeche2 e)Fläche2 f)kleinste_Seite_des_Dreiecks g)Groesste Dreieckseite h)Seite*Seite i)Seitenquadrat j)Seite^2 k)Seite² l)2malHoehe m)Hoehe+Hoehe n)Hoehemal2
o)Hoehe mal 2 p)DM2Euro

1. – können beide einen Individuellen Text enthalten ( Caption )
- sind in der Größe veränderbar ( heigth, wide)
- sind in der Position veränderbar ( border )
- sind in der Farbe veränderbar ( color )
- können Programmspezifischen Namen enthalten ( z.B. SeiteEdit )
- beide Komponenten bilden das GUI

2. – damit eine bessere Zuordnung beim Programmieren erfolgen kann-> default-Enstellung nichts sagend
- Panel und Text benötigen keine NAME-Deklarierung, da sie bei der Programmausführung nicht relevant sind

3.- als erstes wird ein Button erstellt
- mit Doppelklick erreichen wir die Darstellung des Quellcodes
- jetzt ist eine Bearbeitung ERGO das erstellen eines Ereignisses möglich

4.-Ganze Zahlen: integer
-gebrochene Zahlen: real

5.StrToInt ( bei ganzen Zahlen ) bzw. StrToFloat ( bei gebrochenen Zahlen )

6. IntToStr ( bei ganzen Zahlen ) bzw. FloatToStr ( bei gebrochenen Zahlen )

7. – mit sqrt lassen sich in Delphi Wurzeloperationen durchführen
- dabei ist zu beachten das die entsprechende Variable/Zahl in Klammern steht und positiv sein muss

8. z.B. BeispielEdit.Text:=FloatToStrF(Beispiel,ffFixed,5,3);

9. es werden keine Umlaute (ä,ö,ü) verwendet und man schreibt den Namen zusammen, außerdem sollte die Namensgebung für den Programmierer aussagekräftig sein

10.a,c,d,f,i,l,n,p -> alle sind normgerecht
17.10.06 12:05


KONTROLLFRAGEN:
1. Welche Vor- und Nachteile hat das Programmieren in
Maschinensprache?
2. Welche Unterschiede bestehen zwischen Interpreter und
Compiler?
3. Nenne Vor- und Nachteile von Interpreter und Compiler!
4. Nenne mindestens 3 wesentliche Unterschiede zwischen
einer höheren Programmiersprache und Maschinensprache.


Zu 1.)
Vorteile
- Keine zusätzlichen Programme zur Programmierung nötig
- Optimale Anpassung an die Systemarchitektur
Nachteile
- Versteht nur eine Sprache
- Für Menschen undurchsichtig

Zu 2.)
Interpreter:
- übersetzt zeilenweise in die Maschinensprache
Compiler:
- übersetzt das komplette Programm in Maschinensprache

Zu 3.)
Vorteile:
- Interpreter: Sofortige Inbetriebnahme des Programms möglich
- Compiler: Schneller Programmablauf, Fehleranalyse für den User

Nachteile:
- Interpreter: Langsamer Programmablauf
- Compiler: Bricht bei Syntax-Fehler ab

Zu 4.)
Maschinensprache
- für Menschen unverständlich
- direkte Ansprache der CPU
- keine GUI-Programmierung
Programmiersprache
- für Menschen leichter zu erlernen
- Objektorientierte Programmierung möglich
29.8.06 13:13


15.6.06 10:11





Verantwortlich für die Inhalte ist der Autor. Dein kostenloses Blog bei myblog.de! Datenschutzerklärung
Werbung