Grundlagen Wissenschaftlichen Arbeitens Hilal Tekoglu

Slides:



Advertisements
Ähnliche Präsentationen
Niklaus Wirth: Prinzipien der Programmiersprachen und PASCAL
Advertisements

ALP II: Objektorientierte Programmierung Sommersemester 2006
Forschungszentrum caesar
Strukturierter Text.
Rekursionen Erstellt von J. Rudolf im November 2001 /
16. Modularität und Abstraktion
Ausdrücke bezeichnen Elemente eines Datentyps induktive Definition:
Pascal-Datentypen Skalare Typen Zeiger- Typen Strukturierte Typen
10. Grundlagen imperativer Programmiersprachen
12. Iteration und Rekursion
Puck eine visuelle Programmiersprache für die Schule
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
DINAMISCHE STRUKTUREN FACHBEGRIFFE 1. DER POINTERDER POINTER 2. DER BUFFERDER BUFFER 3. DER KNOTENDER KNOTEN DIE EINFACHVERKETTETE LISTE DEFINITION DEFINITION.
Objektorientierung mit VBA
Strukturierte Programmierung
DO...WHILE Anweisung.
Die Skriptsprache Lua Softwaretechnologie II.
Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),
Einführung Wat jibt´s denn? Mit Computa kenn´ ick mir aus! Guten Tag,
Proseminar SS Evaluation der Programmiersprache PASCAL AN ASSESSMENT OF THE PROGRAMMING LANGUAGE PASCAL Autor: Niklaus Wirth Bearbeitung:
Vergleichen Programmiersprache
Die Programmiersprache CHILL
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Einführung in die Programmierung Datensammlung
Die Skriptsprache Python im Kontext des Softwareentwicklungsprozesses
INHALT INHALT Inhalt Delphi IDE ObjectPascal Hello World! Delphi IDE
Basisinformationstechnologie HK-Medien
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.
Wiederholte Programmausführung
Historische Entwicklung und ihre Einteilung
Konzept einer Programmiersprache!
Programiersprache Mustafa SÖYLEMEZ e
Purga - Scriptengine Ein Einblick.
Algorithmen und Datenstrukturen SS 2005
Variablen in Programmiersprachen
Einführung in PHP 5.
Mala Bachmann, Beispiel Velorennen (1) Velorennen mit 5 TeilnehmerInnen Wie kann die durchschnittliche Rennzeit berechnet werden?
MODULA-2.
Starten der Entwicklungsumgebung (IDE)
Agenda für heute, 22. Juni, 2006 Direkte FilezugriffeDirekte Filezugriffe Datentypen: Mengen Individualisierbare Datentypen.
Agenda für heute, 18. Mai, 2006 Strukturierung von Programmen: ProzedurenStrukturierung von Programmen: Prozeduren Strukturierung von Programmen: Units.
Datentypen: integer, char, string, boolean
Agenda für heute, 20. April, 2006 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
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.
Agenda für heute, 26. Mai, 2005 Strukturierte Variablen: RecordsStrukturierte Variablen: Records Kombiniertes Strukturieren Individualisierbare Datentypen.
Kapitel 5: Von Datenstrukturen zu Abstrakten Datentypen
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:
Der Datentyp Verbund (record)
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
Algorithmen und Datenstrukturen 1 SS 2002
Programmierkurs JavaUE 4 Anweisungen und ProgrammeDietrich BolesSeite 1 Programmierkurs Java Dr. Dietrich Boles Teil Imperative Programmierung Unterrichtseinheit.
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
Die Programmiersprache Ruby Seminarvortrag von Lia Schulze Dephoff 1.
Wiederholte Programmausführung
Datentypen: integer, char, string, boolean
Prüfungsbesprechung Barbara Scheuner
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
The Programming Language Pascal
 Präsentation transkript:

Grundlagen Wissenschaftlichen Arbeitens Hilal Tekoglu MODULA – 2 Grundlagen Wissenschaftlichen Arbeitens Hilal Tekoglu

Modula - 2 Historische Entwicklung Die Sprache Modula-2 Syntax und Semantik Beispiel: PrimZahlen + Stack Zusammenfassung Referenzen

Historische Entwicklung Nikolaus Wirth – 1978 N.Wirth: Algol, Pascal, Modula, Oberon, Lilith Computer PDP 11 entwickelt – 16 Bit Computer (Geissmann, Knudsen, Jacobi) Weiterentwicklung von Pascal Nachfolger Oberon ETH – Eidgenösische Technische Hochschule John von Neumann – Computerpionier

Die Sprache Modula – 2 Mängel von Pascal Modul Struktur schwaches File I/O Konzept Einfache Laufzeitbibliothek Modul Struktur Objekt kontrollieren Separate Programmabschnitte Information Hiding Prinzip Frühen 70er erwähnt Durch Modula – 2 umgesetzt Erstmals von David Parnas

Die Sprache Modula – 2 Maschinenunabhängig System Entwicklungen Allgemeine, effiziente System- programmiersprache für Microcomputer Leicht lesbar, lernbar, verständlich Lehrmittel in Schulen

Syntax und Semantik case – sensitive Bezeichner und Schlüsselwörter – reservierte Wörter ELSE, DEFINITION, EXIT, IMPORT Modula – 2: Wertzuweisungen IF-, CASE-, WHILE-, REPEAT-, FOR-, WITH- ,RETURN Anweisungen Prozeduraufruf Kommentar – (*ich bin ein Kommentar*)

Syntax und Semantik Module Programm Modul Definitionsmodul Implementierungsmodul Programm Modul – Hauptmodul für andere Module Definitionsmodul – Deklarationen Implementierungsmodul – Beginnt mit dem Schlüsselwort IMPLEMENTATION MODULE

Beispiel 1: PrimZahlen MODULE PrimZahlen; FROM InOut IMPORT WriteString, WriteInt, WriteLn; CONST Max = 100; (* 2 < Primzahlen < 2*Max+1 *) VAR Zahlen : ARRAY [1..Max] OF BOOLEAN; I,J : INTEGER; BEGIN WriteString(‚Primzahlen',0); WriteLn; FOR I:= 1 TO Max DO Zahlen[I]:= TRUE END; FOR I:= 3 TO (2*Max+1) DIV 3 BY 2 DO FOR J:= 3 TO (2*Max+1) DIV I BY 2 DO Zahlen[I*J DIV 2] := FALSE END END; J:= -1; FOR I:=1 TO Max DO IF Zahlen[I] THEN J:= J+1; WriteInt(2*I+1,6); IF J MOD 10 = 9 THEN WriteLn END END; WriteLn END Primzahlen.

Beispiel 2: Stack DEFINITION MODULE Stack; TYPE Stack = RECORD top: INTEGER; value: ARRAY [0..999] OF INTEGER; END; PROCEDURE Clear (VAR s: Stack); PROCEDURE Push (VAR s: Stack; i: INTEGER); PROCEDURE Pop (VAR s: Stack; VAR i: INTEGER); END Stack. IMPLEMENTATION MODULE Stack; BEGIN s.top := 0; END Clear; IF s.top <= 999 THEN s.value[s.top] := i; INC(s.top); END Push; IF s.top > 0 THEN DEC(s.top); i := s.value[s.top]; END; END Pop;

Zusammenfassung Einführung des Modul Konzepts System Entwicklungssprache Problemzerlegung und Verfeinerung Realisierung grosser Projekte und Wiederverwendbarkeit Source Code leicht lesbar Programmiersprache leicht lernbar

Referenzen Nikolaus Wirth , History and Goals of Modula-2, Byte , 1984 Nikolaus Wirth, Modula-2, ETH Zürich, 1980 R.J.Paul, An Introduction to Modula-2, Byte, 1984 J.Gutknecht , Tutorial on Modula-2, Byte, 1984 J.Gutknecht, Programming Languages and System Archtiectures, Springer, 1994 http://www.modula2.org

Danke für Ihre Aufmerksamkeit! Modula – 2 Danke für Ihre Aufmerksamkeit!