Programiersprache Mustafa SÖYLEMEZ e0327329

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmentheorie 08 – Dynamische Programmierung (1)
Advertisements

der Universität Oldenburg
Forschungszentrum caesar
Funktionen und Module Einführung anhand des Beispiels Wörter sortieren Timm Grams Fachhochschule Fulda Fachbereich Elektrotechnik und Informationstechnik.
Einführung in die Programmierung Zusammenfassung
Zusammenfassung der Vorwoche
Einführung in JavaScript II
Ausdrücke bezeichnen Elemente eines Datentyps induktive Definition:
10. Grundlagen imperativer Programmiersprachen
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Java: Grundlagen der Sprache
Strukturierte Programmierung
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Sommersemester 2003 Lars Bernard
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Imperative Programmierung
Zusammenfassung Vorwoche
Proseminar SS Evaluation der Programmiersprache PASCAL AN ASSESSMENT OF THE PROGRAMMING LANGUAGE PASCAL Autor: Niklaus Wirth Bearbeitung:
Die Skriptsprache Perl (2) Wolfgang Friebel DESY Zeuthen.
Einführung in die Programmierung Datensammlung
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Debugging in Lua Universität zu Köln Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller Referent: Artur Wilke.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Einführung in die Programmierung
Wiederholte Programmausführung
profil des vortragenden gustav pomberger
Konzept einer Programmiersprache!
Permanente Datenspeicherung
Purga - Scriptengine Ein Einblick.
Grundlagen Wissenschaftlichen Arbeitens Hilal Tekoglu
Variablen in Programmiersprachen
Einführung in PHP.
Einführung in PHP 5.
Mala Bachmann, Beispiel Velorennen (1) Velorennen mit 5 TeilnehmerInnen Wie kann die durchschnittliche Rennzeit berechnet werden?
MODULA-2.
Agenda für heute, 22. Juni, 2006 Direkte FilezugriffeDirekte Filezugriffe Datentypen: Mengen Individualisierbare Datentypen.
Datentypen: integer, char, string, boolean
Agenda für heute, 20. April, 2006 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Agenda für heute, 12. Mai, 2005 ProzedurenProzeduren Funktionsprozeduren Prozedurparameter Lokale und globale Variablen Datentypen: Ordinaltypen.
Agenda für heute, 28. April, 2005 Strukturierte VariablenStrukturierte Variablen Arrays.
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Agenda für heute, 14. April, 2005 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Programmieren in C Grundlagen C 2
PHP: Operatoren und Kontrollstrukturen
Programmieren in C Grundlagen C 2
Programmierparadigmen
Vorkurs Programmierungstechnik Einführung in Pascal Michael Gellner Lehrstuhl für Softwaretechnik am Institut für praktische Informatik der Universität.
Kurzreferat über Funktionen und Prozeduren Von Alexander RothHomepage:
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Agenda für heute, 21. April, 2005 Interaktion mit Pascal-ProgrammenInteraktion mit Pascal-Programmen Dateneingabe Programmsteuerung Debugging Datentypen:
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
MATLAB Control Statements.
Delphi Chars und Strings
Extended Pascal ( Erweitreung von Pascal) Name: Mehmet CELIK Matr :
The Programming Language Pascal
Prüfungsbesprechung Barbara Scheuner Vorlesung: Programmieren und Problemlösen Prof. Hans Hinterberger.
Extended Pascal Erweiterung von Pascal shadi Behzadipour shadi Shadi behzadipour.
Programmiersprache PASCAL
Objektorientierte (OO) Programmierung
Programmieren mit Lazarus. Die Programmoberfläche das Hauptfenster der Objektinspektor das Formular der Quelltexteditor Komponenten hier einfügen...
Wiederholte Programmausführung
Datentypen: integer, char, string, boolean
Prüfungsbesprechung Barbara Scheuner
Datentypen: integer, char, string, boolean
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
The Programming Language Pascal
 Präsentation transkript:

Programiersprache Mustafa SÖYLEMEZ e

2 Inhalt Einführung Familien Entwicklung Oberon Syntax Das vocabular und Darstellung Deklarationen Operatoren Kontrolstruckturen Prozeduren und Module Literaturen

Einführung Oberon ist eine von Niklaus Wirth und Jürg Gutknecht entwickelte objektorientierte Programmiersprache.Niklaus WirthJürg Gutknecht objektorientierte Er diente vom Einsteins Motto, Make it as simple as possible but not simpler und führte zu einem System von exemplarischer einfachheit, Effizienz und Flexibilität.

4 Familien Entwicklung Die Sprache Oberon ist der neueste Nachkomme der ALGOL-, Pascal- und Modula-Familie

5 Warum Oberon…? Die Sprache Oberon aufbaut Fundamentalen konzenten Auf Modernen Rechnern effizient implementiert einen dynamischen Modullader eine Automatische Speicherverwaltung Unterstützung für ein lokales Netzwerk Ein Fenstersystem den Oberon-Compiler

6 Oberon Syntax Programieren bedeutet das Erstellen neuer Programme. Zu diesem Zweck Ist nur eine präzise Beschreibung angemessen. MODULE nothing; BEGIN END nothing.

7 Das vocabular und Darstellung 1. Namen ident = letter { letter | digit }. Beispiele für Zeichenfolgen, die gültige Namen gültigen, sind: List, list, a12 Beispiele für Zeichenfolgen, die keine gültigen Namengültigen, sind: Leerzeichen, Bindestrich, Unterstreichungszeichen, Und die erstes Zeichen muss ein Buchtsabe sein.

8 Das vocabular und Darstellung 2. Zahlen Number = integer | real. Beispiele für gültige Zahlen sind: H = E8 = D-6 = Beispiele für ungültige Zahlen sind : FFFFH

9 Das vocabular und Darstellung 3. Zeichenkonstanten CharConstant = character | digit {hexDigit} X. Beispiele fur zeichenkonstanten sind : a, b, 1 4.Zeichenketten string = {character}. Beispiele fur zeichenketten sind : OBERON, das ist eine zeichenkette

10 Das vocabular und Darstellung 5. Operatoren

11 Deklarationen Jeder in einem Programm verwendete Name muss mittels einer Deklaration eingeführt werden, in Oberon müssen alle Namen vor ihrer benutzung deklariert werden. Die Deklarationen führt ein und definiert ihren Typ

12 Deklarationen 1. Konstantendeklarationen Beispiele : CONST a = ; N = 100 ; m= Variablendeklarationen Beispiele : Var i, m, n: INTEGER; index: LONGINT, ch: char 3. Typdeklarationen 4. Array-deklarationen Beispiele : VAR v: ARRAY 3 OF REAL

13 Operatoren Der Operator ~ hat die höchste Bindungsstärke, gefolgt von Multiplikationsoperatoren, Additionsoperatoren und Relationen. 1. Logische Operatoren

14 Operatoren 2. Arithmetische Operatoren

15 Operatoren 3 Mengen- Operatoren

16 Kontrolstrukturen IF-Anweisungen IF-Anweisungen spezifizieren die bedingte Ausführung von Anweisungen. IF res = 0 THEN Out.String (renamed) ELSEIF res = 1 THEN Out.String(name existed already) ELSEIF res = 2 THEN Out.String(name does not exist) ELSEIF res = 3 THEN Out.String(System error) END;

17 Kontrolstrukturen Case-Anweisungen Eine If-Anweisung mit mehreren ELSEIF-Zweigen erlaubt die Auswahl einer Anweisungsfolge unter der Kontrolle von mehreren Bedingungen. CASE res OF 0: out.String(renamed) 1: out.String(name existed already) 2: out.String(name does not exist) 3: out.String(System error)

18 Kontrolstrukturen While-Anweisungen Angenommen Sie möchten eine Anweisung oder Anweisungsfolge nicht nur Einmal sondern n mal ausführen. j := 0 WHILE j < n DO …; j := j + 1 END;

19 Repeat-Anweisung Repeat-Anweisungen spezifizieren die wiederholte Ausführung einer Anweisungsfolge bis eine Bedingung erfüllt ist. DieAnweisungsfolge wird mindestens einmal ausgeführt Kontrolstrukturen j :=0 ; REPEAT … ; j := j+1 UNTIL j = n ; Loop-Anweisung Eine Loop-Anweisung spezifiziert die wiederholte Ausführung einer Anweisungsfolge. Sie wird durch Ausführung einer Exit-Anweisung innerhalb der Anweisungsfolge beendet.

20 MODULE dezimal; IMPORT Out; VAR i: LONGINT; BEGIN FOR i:=0 TO 9 DO Out.LongInt(i,2);END(*FOR*); Out.String(' end'); Out.Ln; END dezimal. Wie kann man mit Oberon programmieren..! end

21 Prozeduren und Module Prozeduren ihrer einfachsten Form als benannte Anweisungsfolgen betrachtet werden. Ein Modul ist eine Textuelle klammer die konstanten und variablen Deklarationen sowie eine Anzahl von Prozeduren umführen.

22 MODULE proc1; IMPORT Out; VAR x, y:LONGINT; PROCEDURE add1 (a:LONGINT; VAR b:LONGINT); BEGIN b:=a+1; END add1; BEGIN x:=1; add1(x,y); Out.LongInt(x,4);Out.LongInt(y,4);Out.Ln; END proc1 1 2 x=a y=b Ein Beispiel von Procedure..

23 Literaturen 1) N. Wirth and M. Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, ) N. Wirth. The programming language Oberon. Software Practice and Experience, 18(7):671–690, July ) K. Jensen and N. Wirth. PASCAL - User Manual and Report, volume 18 of Lecture Notes in Computer Science. Springer, ) ETH Oberon Home Page: 5) Oberon-Homepage der Landesfachkommission Informatik in Th¨uringen

24 Danke für Ihre Aufmerksamkeit …