Antworten zur Kontrollfrage 4/5

1.
- werden im Deklarationtsteil der Unit deklariert
- enthalten nur formale Parameter und lokale Variablen
- bestehen aus Kopf-/Deklarations- und Anweisungsteil zwischen 'begin' und 'end;'
- werden im aufrufenden UP mit Namen und eventueller Parameterliste aufgerufen

2. beliebige Anzahl

3. nur einen

4. mehrere

5. sie bestehen aus einer Kopfzeile mit dem Schlüsselwort Funktion, aus dem Interface-Tel in dem z. B. Variablen deklariert werden, sowie dem Anweisungsteil, der sich zwischen 'begin' und 'end' befindet und die "Rechnungen" enthält

6. zur Ausgabe der Werte kann man entweder den Namen der Funktion verwenden oder mit den Befehl Result arbeiten
ich bevorzuge result da es einfacher ist

7. sie bestehen aus einer Kopfzeile mit dem Schlüsselwort Prozedur, aus dem Interface-Tel in dem z. B. Variablen deklariert werden, sowie dem Anweisungsteil, der sich zwischen 'begin' und 'end' befindet und die "Rechnungen" enthält

8. - das Programm wird übersichtlicher
- sie sind seperat compilierbar
- können in weiteren Projekten verwendet werden

9. eine Unit besteht aus
- der Kopfzeile
- dem Interface-Teil
- den Implementierungsteil

10.
- Initialisierungsteil und
- Finlisierungsteil

11. Kopfzeile: Schlüsselwort: UNIT; z.B. UNIT RECHNEN;
Der name der Unit muss mit den Dateinamen der UNIT übereinstimmen

INTERFACE-TEIL: Schlüsselwort INTERFACE. Der Interface-Teil enthält die Liste aller öffentlicher Bezeichner, die an andere Programme oder Programmteile exportiert werden dürfen (z.B. Funktionen, Prozeduren, Variable, Datentypen, Konstanten). Andere Teile, die lediglich als Hilfsprozeduren notwendig sind, können nach außen hin versteckt werden.

Implementierungsteil: Schlüsselwort IMPLEMENTATION. Hier befinden sich die eigentlichen Programmblöcke zu den unter INTERFACE aufgeführten "Öffentlichen" Funktionen und Prozeduren, hier können noch weitere Proz./Funkt. Variablen, Typen,... deklariert werden, die aber nur im Implementierungsteil genutzt werden können und im Interface-Teil nicht zur Verfügung stehen.

Initialisierungs-Teil:Schlüsselwort INITIALIZATION: Dieser Teil dient dazu, Operationen durchzuführen, die nur einmal, zum Start des Programms aufgerufen werden sollen. Man kann das vergleichen mit dem Aufruf der Prozedur FORMCREATE (S. Projekt Zahlenraten), nur besitzt unsere selbst geschriebene Unit ja kein Formular. Die Unit wird abgeschlossen mit dem Schlüsselwort end.

Finalisierungs-Teil: Schlüsselwort FINALIZATION. Der Finalisierungs-Teil dient dazu, Operationen durchzuführen, die nur einmal, nämlich beim Schließen des Programms, durchgeführt werden sollen. Das kann z. b. die Freigabe von Systemressourcen sein, die vorher vom Programm belegt wurden. Der Finalisierungs-Teil beginnt mit dem Schlüsselwort FINALIZATION, er steht noch vor dem abschließenden END. des Programms.

12.
- Der name der Unit muss mit den Dateinamen der UNIT übereinstimmen
- keine Sonder-, Leerzeichen und keine Umlaute

13. Datei --> Neu --> Unit

14. unter Implementation mit dem Schlüsselwort

15. ohne einen: Funktion Zufallszahl
mit einem: Funktion Kreisflaeche
mit mehreren: Funktion Maximum

16. dann besitzt die Prozedur keine Parameter mehr und kann nichts ausgeben

17. function max(Z1,Z2:real):real;
begin
If Z1>Z2
Then max:=Z1
Else max:=Z2;
end;

procedure max(Z1,Z2:real;var e:real);
begin
If Z1>Z2
Then e:=Z1
Else e:=Z2
end;

18. begin
Hilf:=Z1;
Z1:=Z2;
Z2:=Hilf;
end;
14.2.07 12:08


Kontrollfragen 4./5. Streich

Kontrollfragen 4./5. Streich

Kontrollfragen Funktionen/Prozeduren/Units:


1. Nennen Sie mindestens 4 Gemeinsamkeiten von Funktionen und Prozeduren!

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

3. Wie viele Werte kann eine Funktion zurückliefern?

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

5. Beschreiben Sie den allgemeinen Aufbau einer Funktion!

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

7. Beschreiben Sie den allgemeinen Aufbau einer Prozedur!

8. Nennen Sie drei Vorteile der Arbeit mit Units!

9. Aus welchen drei Teilen besteht eine Unit mindestens?

10. Welche zwei weiteren Teile kann eine Unit noch besitzen?

11. Beschreiben Sie die Funktion und den Aufbau der einzelnen Teile der Unit!

12. Welche Einschränkungen gelten für die Kopfzeile einer Unit?

13. Wie kann man eine neue Unit erzeugen?

14. Wie und wo kann man eine vorhandene Unit in ein neues Programm einbinden?

15. Nennen Sie je ein Beispiel für vorhandene Delphifunktionen, die mit keinem, mit einem bzw. mit mehreren Parametern aufgerufen werden!

16. Was passiert, wenn man bei der von uns behandelten Prozedur TAUSCHE das Schlüsselwort VAR in der Kopfzeile weglässt?

17. Wie kann man eine Funktion in eine gleichnamige Prozedur umwandeln? Was ändert sich am Aufruf der Prozedur gegenüber dem Aufruf der Funktion?

18. Wie kann man den Wert von zwei Variablen tauschen?
14.2.07 10:54


Antworten zur Kontrollfrage 3

1. Man muss die Eigenschaft "Kind" auswählen um eine Grafik auf dem BitButtons zu erstellen.

2. a) von 10 bis 29 b) von 20 bis 30 c) von 44 bis 98 d) von -62 bis -30

3. a) Zufallszahl:=Random(21)+20; b) Zufallszahl:=Random(51)+50; c) Zufallszahl:=Random(11)-5;
d) Zufallszahl:=Random(16)-30;

4. Variable in Prozedur und diese vor begin einstellen

5. Der Wert der globalen Variable ist in der gesamten Unit verfügbar und in allen Units,
die diese einbinden. Die Deklaration erfolgt am Anfang der Unit.

6. clGeen - Grün; clBlack - Schwarz; clNavy - Blau; clHighlight - Himmelblau;
clSilver - Silber; clPurple - Lila

7. MIt dem Code: `Panel-/Labelname`.Font.Color:='Farbenname-z.B.clRed'

8. Mit dem Code: `Panel-/Labelname`.Font.size:='Textgröße'

9. Ein Ereignis ist das Erstellen einer Zufallszahl.

10. FEdit.Text:=' ';

11. AusgabePanel.caption:=' ';

12. IF Bedingung
Then Begin
Anweisung1;
Anweisung2;
Anweisung3;
End;

13. FeldEdit.Setfocus;

14. Der Fokus kann nicht auf ein Label gelenkt werden.

15. randomize;

16. Man benötigt möglichst wenig Versuche, wenn man den Mittelwert der gegebenen Zahl
ermittelt. = Intervallhalbierung

17. um es leichter zu programmieren

18. keine Ahnung

19. Mit Hilfe von globalen Variablen.

20. nicht

21. 50

22. nicht

23. 100
30.11.06 18:47


Kontrollfragen 3. Streich

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?
15.11.06 13:03


Antworten zur Kontrollfrage 2

1. - Caption: Texte einfügen
- Name: den Kommponenten einen Namen geben
- Font: verändereung des Textes
- Color: Farbe des Hintergrundes verändern
- High: Höhe der Kommponente verändern
- Left: Abstand zur linken Seite verändern

2. Wenn man eine Kommponente erstellt, wird ihr ein Name zugeteilt wie zum Beispiel Button1. Wenn man dann mehrere Kommponenten hat die alle mit Butten 1 oder 2 oder 3 usw. bezeichnet wird kann es sein dass man später bei den aufstellen der Formeln ducrheinander kommt und einen Butten in eine Formel legt, der eigentlich nicht zu der Formel gehört.
Bei den Kommponenten Panel und Label macht die Namensbezeichnung wenig Sinn, da sie nicht in eine Formel mit einbezogen werden.

3. In dem man auf dem Formblatt einen Button erstellt und doppelt auf ihn klickt, wird ein Ereignis erzeugt.

4. Variablentyp ganzer Zahlen: integer
Variablentyp gebrochener Zahlen: real

5. Mit dem Befehl "IntToStr" kann man einer Variablen in Delphi einen Wert zuweisen.

6. StrToInt (Umwandlung von Text in eine ganze Zahl), IntToStr (Umwandlung von eine ganze Zahl zu Text), FloatToStrF (Umwandlung einer reelen Zahl zu einem Text)

7. sqrt("Ganze Zahl")
man muss eine ganze Zahl eingeben

8. FloatToStrF("Name der Kommponente",ffFixed,5,3)

9. Es dürfen kein Umlaute, Sonderzeichen und Leerzeichen benutzt werden.

10. a) gültig b) ungültig (Leerzeichen gibt es nicht) c) gültig
d) ungültig (Grundstrich vorne würde bedeuten, dass die Komponente zu den davor stehenden wort ist, was aber nicht der Fall ist) e) ungültig (ä, ü und ö sind nicht erlaubt) f) ungültig (der anfangsbuchstabe der komponente muss groß sein) g) ungültig ( Leerzeichen sind nicht erlaubt) h) gültig i) gültig j) ungültig ( "^" dises Zeichen darf nicht verwendet werden) k) gültig l) ungültig (der Befehl zum multiplizieren wird als "*" dargestellt nicht in dem Wort "mal") m) gültig n) ungültig (der Befehl zum multiplizieren wird als "*" dargestellt nicht in dem Wort "mal")
27.9.06 13:26


Kontrollfragen 2. Streich

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
27.9.06 12:54


Antworten zu Kontrollfrage 1

1. Welche Vor- und Nachteile hat das Programmieren in
Maschinensprache?

Vorteile:
- verschiedene Abkürzungen die der menschlich Sprache ähnelt
- niedriges Sprachniveau
- Maschinensprache vom Mikroprozessor abhängig
- kein Übersetzer notwendig

Nachteile:
- ist für die meisten Menschen sehr undurchsichtig
- jede Prozessorfamilie benötigt eine
andere Maschinensprache
- ist prozessorabhängig

2. Welche Unterschiede bestehen zwischen Interpreter und
Compiler?

Je nach der Art der Übersetzung in Maschinensprache unterscheiden wir bei höhere Programmiersprachen folgende Arten von Übersetzungsprogrammen:

Interpreter (z. B. BASIC)
- Programmübersetzung erfolgt zeilenweise,
- Programmablauf dadurch langsamer,
- Programm funktioniert sofort, bricht dann jedoch bei jedem
Fehler erneut ab

Compiler (z.B. PASCAL, DELPHI)
- Programmübersetzung erfolgt komplett fürs ganze Programm
- Programmablauf dadurch schneller
- läuft erst, wenn keine Syntax (Sprach-) Fehler mehr
vorhanden sind

3. Nenne Vor- und Nachteile von Interpreter und Compiler!

Interpreter (z. B. BASIC):

Vorteile
- Programmübersetzung erfolgt zeilenweise
- Programm funktioniert sofort, bricht dann jedoch bei jedem
Fehler erneut ab

Nachteile
- Programmablauf langsamer
- Intpretor geht immer wieder durch den Ablauf

Compiler:

Vorteile
- Programmübersetzung erfolgt komplett fürs ganze Programm
- Programmablauf dadurch schneller
- kompilierte Datai wird als Exel gespeichert (Anwenderdatei)

Nachteile
- läuft erst, wenn keine Syntax (Sprach-) Fehler mehr
vorhanden sind
- arbeiten sehr langsam (manche, z.B. Delphi)

4. Nenne mindestens 3 wesentliche Unterschiede zwischen
einer höheren Programmiersprache und Maschinensprache.

Höhere Programmiersprachen

- sind vom Mikroprozessor und Betriebssystem weitgehend
unabhängig
- hohes Sprachniveau
- man benötigt meist einen Übersetzer
- für Menschen leichter verständlich

Maschinensprache

- Maschinensprache ist vom Mikroprozessor abhängig
- niedriges Sprachniveau
- man benötigt eigentlich keinen Übersetzer
- binärcodiert
- für Menschen schwer verständlich
6.9.06 15:28


 [eine Seite weiter]
Gratis bloggen bei
myblog.de