Programmieren mit MS Small Basic. INFORMATIK Kunstwort aus Information & Automatik also...

Preview:

Citation preview

InformatikProgrammieren mit MS Small Basic

INFORMATIK „Kunstwort“ aus Information & Automatik also automatische Informationsverarbeitung …erfolgt mit Hilfe von Automaten

◦ (z.B. Waschmaschine, CNC-Drehbank, Handy, PC) Ein Programm übernimmt die Steuerung der

Handlungen des Automaten ein Programm ist ein Algorithmus der auf

einem Automaten ausgeführt wird

Grundbegriffe:

Anweisungsfolge (Folge aus Befehlen) die folgende Eigenschaften hat

allgemeingültig◦ (für eine Problemklasse)

eindeutig◦ (gleiche Eingangswerte gleiches Ergebnis)

ausführbar◦ (vom Automaten realisierbar)

endliche Folge◦ (keine Endlosschleife)

Algorithmus

hat eine Syntax◦ Schreibweise der Befehle und Parameter

Entwicklungsumgebung mit Tools, wie◦ Editor für den Quelltext

integrierte-Hilfe für Befehlssyntax ("IntelliSense" )◦ Debugger für die Fehleranalyse◦ Übersetzer in die Maschinensprache

(Interpreter und/oder Compiler)◦ Runtime-Module zur Ausführung des

Programms

Programmiersprache

Entwicklungsumgebung

Editor (1) Symbolleiste (2) Programmoberfläche (3) F5=Run

Bildschirm-Meldung (Ausgabe) Benutzer-Eingabe über Tastatur Verarbeitung durch das Programm im PC neue Ausgabe am Bildschirm

E – V – A – Prinzip oder Benutzerdialog auf der Console

◦ Console = Ein-/Ausgabe-Ebene einfachster Form ◦ 1.) als Command-Fenster ,textbasiert =„TextWindow“◦ oder 2.) grafischer Dialog im „GraphicsWindow“

E-V-A-Prinzip

TextWindow.WriteLine(“Hallo“)◦ Bildschirmmeldung mit Zeilenwechsel

x =TextWindow.ReadNumber( )◦ Tastatureingabe (Zahl) wird in (Var.) x gespeichert

n = TextWindow.Read( )◦ liest Tastatureingabe (Text) in Variable n ein

TextWindow.CursorLeft= 10 ◦ Schreibmarke in Spalte 10 setzen

TextWindow.CursorTop= 5◦ Schreibmarke in Zeile 5 setzen

Schlüsselworte (i/o-Befehle)

begin: TextWindow.ForegroundColor=15 TextWindow.BackgroundColor=1 TextWindow.Clear( ) TextWindow.CursorLeft=10 TextWindow.CursorTop=5 TextWindow.Write("Hallo Welt!") ' Text hinter Hochkomma ist ein Kommentar TextWindow.CursorTop=20 ‘Ausgabe weiter unten TextWindow.Write(“ [Enter]“) a=TextWindow.Read( ) 'wartet auf [Enter] end:

HalloWorld.sb (Testprogramm)

im Verzeichnis D:\My_SmallBasic\UserName wird

der Quelltext als „HalloWorld.sb“ gespeichert, ◦ (ASCii-Text zum Drucken mit Editpad o.ä. geeignet)

im gleichen Verzeichnis erzeugt SmallBasic zum Programm die ◦ Objektdatei „HalloWorld.pdb“ ( für C+),◦ die „HalloWorld.exe“◦ und eine Laufzeit-Datei – „SmallBasicLibrary.dll“

die exe-Datei ist auf jedem Windows-Rechner ausführbar, wenn die dll-Datei dabei ist ◦ (auch ohne Small-Basic Installation)

Verwaltung der Quelltexte und Programme

'********************************************* '** SmallBasic-Programm: _______________ ** '** bearbeitet von: ______________________ ** '** am : 2012-___- ___ ** '********************************************* begin:

◦ ‘hier kommt das neue Programm hinein◦ ‘das dann mit Speichern unter neuem Namen◦ ‘auf der Festplatte abgelegt und erst dann ausgeführt wird

TextWindow.CursorTop=20 TextWindow.Write(" [Enter]") a=TextWindow.Read() 'wartet auf [Enter] end: '*********************************************

Vorlage: „Leer.sb“

beim Benutzerdialog eingegebene Texte oder Zahlen müssen für das Programm verfügbar sein

das Programm speichert diese Daten im Arbeitsspeicher (dem RAM)

dazu werden die Speicherplätze mit Namen versehen (Variablenbezeichner=Variablennamen)

unter diesem Namen kann das Programm auf die Speicherplätze lesend oder schreibend zugreifen

diese Namen nennt man Variablen man unterscheidet Text und Zahlenvariablen

Speicherplätze für Daten

neben dem Consolen-Fenster kann Small Basic auch in einem Grafikfenster arbeiten

dort sind z.B. Zeichenanweisungen möglich eine einfache Form der Grafikgenerierung ist

die Turtle-Grafik eine kleine „Schildkröte“ wird über die

Zeichenebene dirigiert und hinterlässt eine „Spur“ (Linie)

dazu wird als Ausgabebefehl auf die Module „GraphicsWindow“ b.z.w. „Turtle“ zurückgegriffen

Benutzerdialog auf höherer Ebene

Recommended