Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Hauslekture. Методическое пособие - Ситникова О.А., Галкина О.В

..pdf
Скачиваний:
63
Добавлен:
24.05.2014
Размер:
466.19 Кб
Скачать

und wie zu erkennen. Wen wundert da die englische Übersetzung WHILE und die höfliche Aufforderung DO, die den Schleifenkörper einleitet. Formal sieht das so aus:

WHILE Bedingung DO Anweisung

Wie üblich ist Bedingung wieder ein logischer Ausdruck (was sonst?), aber bei dieser Schleife schlägt wieder erbarmungslos die Syntax (=Sprachregeln) von Pascal zu. Erlaubt ist im Gegensatz zur fußgesteuerten Schleife nur eine Anweisung, wer mehr braucht muß zum Block greifen und mit BEGII und EID klammern.

Auch hier sei noch einmal auf die Bedeutung des Semikolons hingewiesen: das Semikolon steht vor der nächsten Anweisung nach der Bedingung. Sitzt das Semikolon bereits hinter dem DO, gibt es keine Fehlermeldung, aber großes Erstaunen beim Programmierer. Dann hat man nämlich eine wunderbare Endlosschleife programmiert, aus der man nur manchmal mit geschickten Tastendrücken herrauskommt (oder auch nicht). Grund dafür ist, daß dann hinter DO eine leere Anweisung steht, die beliebig wiederholt wird, ohne daß sich an der Bedingung je etwas ändern könnte.

Beiden Schleifen gemeinsam ist, daß man als Programmierer selbst dafür sorgen muß, daß die Abbruchbedingung irgendwann einmal erreicht wird. Wenn als Kriterium das Erreichen eines Zählerstandes dient, muß das Ändern des Zählers selbst organisiert werden (Zählerverwaltung).

Die fußgesteuerte Schleife ist ideal, um Eingaben in einem gewissen Wertebereich zu erhalten. Die Eingabe wird solange wiederholt, bis die Eingabe im gewünschten Bereich liegt. Damit ist dann die Abbruchbedingung erfüllt.

Übung 6 Wie sieht ein Pascal-Programm aus, das vom Benutzer zwei positive, unterschiedliche Zahlen anfordert und dann die Summe und Differenz dieser Zahlen ausgibt?

Die kopfgesteuerte Schleife bietet sich zur Verarbeitung von einer (im voraus) unbekannten Anzahl Daten an. Dieser Fall tritt immer beim Einlesen von Datensätzen aus einer Datei auf. Das Ende der Datei ist dann die Abbruchbedingung. Eine entsprechende Übung findet sich im Abschnitt fiber Dateiverarbeitung (Seite 75).

34. Zählschleifen

Die Zählschleife nimmt dem Programmierer das Verwalten des Zählers ab. Dafür unterliegt aber die (ansonsten kopfgesteuerte) Schleife einigen Einschränkungen. Zum einen muß die Anzahl der Schleifendurchläufe vor Eintritt in die Schleife bekannt sein, zum anderen kann nur ein Zähler vom Typ Skalar (IHTEGER, CHAR oder BQOLEAI) und der Schrittweite l verwendet werden. Der Schleifenzähler nimmt nacheinander alle Werte zwischen den Anfangswert und dem Endwert an und kann im

Schleifenkörper in beliebigen Ausdrücken verwendet werden.

 

 

Formal sieht eine Zählschleife so aus:

 

 

 

 

FOR

Schleifenzähler

:=

Anfangswert

TO

Endwert

DO

Anweisung

 

 

 

 

 

 

61

Diese Form setzt voraus, daß der Endwert größer ist als der Anfangswert, der Schleifenzähler also hoch gezählt wird. Den umgekehrten Fall gibt es auch, der

Schleifenzähler wird dann vom größeren Anfangswert zum kleineren Endwert heruntergezählt. Das sieht dann so aus:

FOR Schleifenzähler := Anfangswert DOWITO Endwert DO Anweisung

Für Anweisung gilt wieder die Sache mit der einen Anweisung und dem Block.

Ist bei Eintritt in die Schleife der Inhalt von Anfangswert gleich dem Inhalt von Endwert wird der Schleifenkörper genau einmal durchlaufen. Ist dagegen (im ersten Fall) zu Beginn der Inhalt von Anfangswert größer (im zweiten Fall kleiner) als der Inhalt von Endwert, so wird die Schleife überhaupt nicht durchlaufen. Ganz wichtig ist, das nach dem Durchlaufen der Schleife der Schleifenzähler überhaupt nicht definiert ist! Er hat also irgendeinen Wert, der nichts mit dem innerhalb der Schleife zu tun hat!

35. Zusammenfassung

Bis hierher haben wir alle grundlegenden Bestandteile eines Pascal-Programms kennengelernt. Wir können eine Idee in einen Algorithmus und in ein Struktogramm umsetzen und dieses Struktogramm in ein Pascal-Programm.

Wir wiesen noch nicht, wie man dieses Pascal-Programm m den Rechner bekommt oder gar wie man es ausführt. Das nächste Kapitel führt daher zunächst m den Um-«ane mit dem Rechner und mit Turbo-Pascal ein. Daran schließt sich em weiteres Pascal-Kapitel an, in dem einige Spezialitäten, Ergänzungen und Erweiterungen vor-gestellt werden.

Übung 7 Ein Programm soll Auskunft über die Zahlungsbedingungen innerhalb von 8 Tagen M, sonst 1,5% Skonto" geben. Eingegeben werden der Rechnungabetragund die Tage nach Erhalt. Ausgegeben werden der Rechnungsbetrag, das Skonto und der zu überweisende Betrag.

Übung 8 Wie sieht das Programm zu dem Struktogramm Positiv aus der Übung 4 auf Seite 23 aus?

Übung 9 Ем Programm soll den Mittelwert beliebig vieler Zahlen ermitteln Die Anzahl der Zahlen ist mitzuzählen, die Eingabe kann jederzeit durch e,ne 0 (Null) beendet werden (abweisende Schleife).

Übung 10 ändern Sie das Programm aus der vorigen Übung so ab, daß eine nichtabweisende Schleife verwendet wird.

36. Funktionen und Prozeduren im Überblik

62

Im folgenden werden die meisten Funktionen und Prozeduren von Turbo-Pascal tabellarisch aufgelistet. Diese Liste soll einen Überblick über die vorhandenen Funktionen gebe, sie ersetzt nicht den Blick ins Handbuch, um die genauen Parameter zu ergründen.

Die angegebenen Parameter stehen für eine Variable oder einen Ausdruck des Argumenttyps, also ch für CHAR, r für REAL, i für IMTEGER, b für BOOLEAM, /für Datei und s für einen String.

37. Standardprozeduren und Funktionen

Transfer-Funktionen

Chr(i) liefert das Zeichen mit der angegeben Ordnungszahl zurück Ord(ch) liefert die Ordnungszahl des angegebenen (skalaren) Wertes zurück

Round(r) konvertiert eine Realwert in einen Integerwert unter Beachtung der Rundungsregeln

Trunc(r) konvertiert einen Realwert in einen Integerwert durch Abschneiden der Nachkommastellen

Diverses

Random liefert eine Zufallszahl im Bereich 0 bis l zurück Randomize startet den Zufallszahlengenerator

UpCase(ch) wandelt ein angegebenes Zeichen in den entsprechenden Großbuchstaben um, funktioniert nicht für deutsche Umlaute

Arithmetische Funktionen

Abs(r)liefert den Absolutwert des Arguments zurück

ArcTan(r) liefert den ArcusTangens des Arguments (Bogenmaß!) zurück Cos(r) liefert den Cosinus des Argumentes zurück

Exp(r) liefert das Ergebnis der Berechnung e'4'*1"1""' zurück Frac(r) liefert die Nacbkommastellen des Arguments zurück Int(r) liefert die Vorkommaatellen des Argumentes zurück Ln(r) liefert den natürlichen Logaritmus des Argumentes zurück Pi liefert den Wert Pi (3.1415926...) zurück

Sin(r) liefert den Sinus des Argumentes zurück Sqr(r) liefert das Quadrat des Argumentes zurück Sqrt(r) liefert die Wurzel des Argumentes zurück

Skalare Prozeduren und Funktionen

Dec(i( erniedrigt eine Variable (um 1)

63

Inc(i) erhöht eine Variable (um 1)

Odd(i) prüft, ob es sich beim Argument um eine ungerade Zahl handelt

Pred(i) liefert den Vorgänger des Arguments Succ(i) liefert den Nachfolger des Arguments A.1.5 Stringprozeduren und Funktionen

Concat(sl,s2 verbindet eine Folge von Strings zu einem String Copy (il,i2,s) liefert den Teil eines Strings zurück Delete(il,i2,s) löscht einen Teil des Strigs

Insert(sl,i,82) fügt einen Stringteil in einen String ein Length(s) liefert die aktuelle Länge eines Strings zurück

Pos(ch,s) sucht die Zeichenfolge innerhalb eines Strings und liefert die Position zurück

Str(r) konvertiert einen numerischen Wert in einen String Val(s,r,i) konvertiert einen String in einen numerischen Wert

Dateibehandlung

Close(f) Datei schließen Seek(f) setzt den Positionszeiger

Assign(f,s) ornet einer Datei-Variablen eine externe Datei über ihren Namen zu EoF(f) prüft, ob das Ende der angegebenen Datei erreicht ist und

liefert einen BOOLEAI Wert zurück

 

 

lOResult liefert

 

 

 

 

den

Status

der

zuletzt

ausgeführten

Ein-/Ausgabeoperation

zurück

 

 

 

 

 

Rename(f,s2) gibt einer Datei einen neuen Namen Reset(f) öffnet eine exisitierende Datei Rewrite(f) erzeugt eine Datei und öffnet sie

Append(f) öffnet eine existierende Datei zum Anfügen von Datensätzen EoLn(f) prüft, ob in der angegebenen Datei das Zeilenende erreicht wurde

FilePos(f) liefert die momentane Position innerhalb der Datei zurück FileSize(f) gibt die Größe einer Datei zurück

Truncate(f) schneidet die Datei an der momentanen Position ab

Spezielle Tastenkombinationen (Hot-Keys)

Fl Hilfe

F2 speichert den Quelltext im Editor

F3 Lädt einen Quelltext in den Editor

F4 versionsabhängig

F5 schaltet die Größe des aktuellen Fensters um

F6 schaltet zwischen den Fenstern um

F7 versionsabhängig

F8 versionsabhängig

64

F9 aktiviert das Compile-Menü

F10 schaltet zwischen Hauptmenü und aktivem Fenster um

Umsch F10 bringt Copyright und Versionsnummer auf den Bildschirm Strg Fl aktiviert die Syntaxhilfe (nur im Editor)

Alt Fl bringt den letzten Hilfetext erneut Alt F aktiviert das File-Menü

Alt E aktiviert den Editor

Alt С aktiviert das Compile-Menü Alt 0 aktiviert das Options-Menu Alt R führt das Programm aus Alt X beendet Turbo-Pascal

Tastenbelegung im Editor

 

Zeichen

nach

links

Strg-Sf

 

Wort

nach

 

links

Strg-A

 

Zeile

nach

 

oben

Strg-Ef

 

Aufwärts

 

Rollen

Strg-W

 

Seite nach oben

 

 

Strg-R

 

 

 

 

 

 

Zeilenanfang

 

 

Strg-Q-Sf

 

Oberer

Bildschirmrand

Strg-Q-E

 

Textanfang

 

 

Strg-Q-R

 

Blockanfang

 

 

Strg-Q-B

 

Letzte Cursorposition

 

Strg-Q-P

 

 

 

 

 

Einfügen

 

Ein/Aus

Strg-Vf

 

Zeile

 

einfügen

Strg-N

 

Löschen

bis Zeilenende

Strg-Q-Y

 

Zeichen

unter

Cursor

Strg-Gf

 

löschen

 

 

 

 

 

 

 

 

Blockanfang

markieren

Strg-K-B

 

Einzelnes Wort als Block

Strg-K-T

 

Block

verschieben

Strg-K-V

 

Block

 

 

lesen

Strg-K-R

Zeichen

nach

rechts

Strg-Df

 

Wort

nach

 

Rechts

Strg-F

 

Zeile

nach

 

unten

Strg-Xf

 

Abwärts

 

Rollen

Strg-Z

 

Seite nach unten

 

Strg-C

 

 

 

 

 

 

Zeilenende

 

 

Strg-Q-Df

 

Unterer

Bildschirmrand

Strg-Q-X

 

Textende

 

 

Strg-Q-C

 

Blockende

 

 

Strg-Q-K

 

Letzte Fehlerposition

Strg-Q-W

 

 

 

 

 

 

Zeile

 

 

löschen

Strg-Y

 

Linkes

Zeichen

löschen

Strg-Hf

 

Wort rechts löschen

Strg-T

 

 

 

 

 

 

 

 

Blockende

markieren

Strg-K-K

 

Block

 

kopieren

Strg-K-C

 

Block

 

 

löschen

Strg-K-Y

 

Block

 

schreiben

Strg-K-W

 

65

 

Block sichtbar/unsichtbar

Strg-K-H

Block drucken

Strg-K-P

 

 

 

 

 

 

 

 

 

 

 

 

 

Hilfestellung

Fl

Pascal-Syntax

Strg-Fl

Editor

 

beenden Strg-K-D

Neue

Datei

laden F3

Tab-Modus

an/aus Strg-O-T

Änderungen

Strg-Q-L

zurücknehmen

Strg-Q

Zu

Marke

springen Strg-Q-A

Suchen

und

Ersetzen Strg-L

Wdhl .Suchen/Ersetzen

Letzter Hilfe Bildschirm Alt-Fl

 

Compiler

 

Parameter Strg-F7

 

Editorende +

Speichern Strg-K-S

 

Tabulator

 

 

Strg-I

 

Auto-

Tab

ein/aus Strg-O-I

 

Marke

 

setzen Strg-K

n

n Suchen

 

 

Strg-Q-F

 

Klammerebene suchen Strg-Q-

()

Operation abbrechen

Strg-U

 

Die mit t markierten Befehle können auch direkt über die in 6.1.6 angegebenen Tasten erreicht werden.

DAS INTERNET SURFT AUF EINER REISIGEN ERFOLGSWELLE.

Das Internet ist erwachsen geworden — und mit ihm seine Nutzer. Noch Ende 1996 war in Deutschland jeder zweite, der online ging, ein Student. Jetzt liegen die Angestellten bei der Nutzung des Internets klar vorn. Auch die Selbständigen, die schon längst aus dem Turnschuh-Alter herausgewachsen sind, gewinnen von Monat zu Monat an Boden. Im vierten Jahr seines Aufschwungs in Deutschland ist der Siegeszug des Internets durch Büros und Wohnzimmer endgültig nicht mehr autzuhalten.

Etwa 35 Prozent aller Unternehmen mit mehr als zehn Beschäftigten verfügen inzwischen über eine Auffahrt auf die globale Datenautobahn, rund 13 Prozent können ohne Internet keine Geschäfte mehr machen. Nach einer Umfrage des Branchendienstes Business Online werden mehr als 40 Prozent der deutschen Unternehmen in den kommenden zwölf Monaten in ihre Internet-Präsenz investieren. Das Gesamtvolumen der geplanten Investitionen beträgt 3,75 Milliarden Mark, im Schnitt wird jedes Unternehmen rund 30 000 Mark ausgeben. Mit der rasanten Ausbreitung des Internets ändert sich auch das Nutzer - Verhalten. Überwogen anfangs die Neugier und das planlose Surfen im Netz, wird das World Wide Web heute mehr zur gezielten beruflichen Informationsbeschaffung, zur wissenschaftlichen Recherche, zur Weiterbildung und zur Abfrage von Nachrichten und Produktionsinformationen genutzt.

Die privaten Internet-Nutzer wählen sich meist über eine Online-Dienst wie T- Online, AOL/Bertelsmann oder CompuServe ins Netz ein. Zwar konnte das Jointventure AOL/Bertelsmann durch den Kauf von CompuServe seinen Marktanteil in Europa erheblich aufstocken. Doch auch mit den CompuServe-Abonnenten hat AOL in Deutschland noch eine Million weniger Kunden als T-Online. Der Dienst der

66

Deutschen Telekom scheint für den härter werdenden Wettbewerb zudem gut gerüstet: Im Business-Bereich hat sich T-Online aufgrund des Vorsprungs im Home-Banking etabliert. Des weiteren besitzt der Dienst im Gegensatz zu AOL/Bertelsmann ein eigenes, gut ausgebautes Netztwerk. Fast ein Drittel der privaten Web-Surfer hat keinen Online-Dienst abonniert und gelangt über eine Universität, den Arbeitgeber oder einen Internet-Provider wie germany.net oder Metronet auf den Daten-High way.

Quellenverzeichnis

1.Chronik der Technik v.Felix R. Paturi, Chronik Verlag, Dortmund 1989

2.Das große deutschrussische Wörterbuch, Hrsg. O. I. Moskalskaja, Sowjetskaja Enziklopädija, Moskau 1969

3.Grundgrammatik Deutsch v. J. Karst u. U. Häussermann, Moritz Diesterweg, Frankfurt 1988

4.Meyers Memo: das Wissen der Welt nach Sachgebieten, Bibl. I., Mannheim 1991

5.Grundlagen der EDV Skript zur Vorlesung, Jörg D. Schake, August 2001

67

Учебное издание

HAUSLEKTURE

Методическое пособие СОСТАВИТЕЛИ: СИТНИКОВА Ольга Александровна

ГАЛКИНА Ольга Валентиновна

Редактор Н. А. Евдокимова

Подписано в печать 10.09.2004. Формат 60×84/16. Бумага тип. №1. Печать трафаретная.

Усл. печ. л. 3,95. Уч.-изд. л. 3,50.

Тираж 100 экз. Заказ Ульяновский государственный технический университет

432027, г. Ульяновск, ул. Сев. Венец, 32 Типография УлГТУ, 432027, г. Ульяновск, ул. Сев. Венец, 32