PMG1719/GL 4
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Programmiersprachen ==
Für die Umsetzung von Algorithmen gibt es eine große Anzahl von Programmiersprachen.<br>
Auf den folgenden Seiten gibt es Beispiele (auch zum Ausprobieren/Ergänzen) für die vier Sprachen Delphi, Java, Scheme und JavaScript.
Informiere dich über Programmiersprachen in [http://de.wikipedia.org/wiki/Programmiersprache], [http://de.wikipedia.org/wiki/Geschichte_der_Programmiersprachen] und [http://de.wikipedia.org/wiki/Programmierparadigma].
Teste die Beispiele.
Finde Unterschiede in der Syntax der Sprachen.
* [[PMG1719/GL_4/Seite_Pascal|Programmiersprache Pascal (Delphi)]]
* [[PMG1719/GL_4/Seite_Java|Programmiersprache Java]]
* [[PMG1719/GL_4/Seite_Scheme|Programmiersprache Scheme]]
* [[PMG1719/GL_4/Seite_JS|Programmiersprache JavaScript]]
Für Pascal und Java muss im Browser Java zugelassen werden!
Anleitung: <document>PWiki_Java_zulassen.pdf</document>
== Datentypen in JavaScript ==
JavaScript ist eine <u>dynamisch typisierte</u>, objektorientierte, aber klassenlose Skriptsprache.
<u>Dynamische Typisierung</u> bedeutet, dass Typprüfungen (etwa des Datentyps von Variablen) zur Laufzeit eines Programms stattfinden. Eine Festlegung des Datentyps im Programmcode entfällt daher.
Im Gegensatz dazu wird bei der statischen Typisierung (in Pascal) die Typprüfung bereits zum Zeitpunkt der Kompilierung durchgeführt. Daher müssen die Variablen im Programmcode deklariert werden, also einem Datentyp zugewiesen werden. (siehe unten - Pascal).
In JavaScript lässt sich je nach Bedarf objektorientiert, prozedural oder funktional programmieren. Wir werden (wie gewohnt) prozedural programmieren.
[https://de.wikipedia.org/wiki/Skriptsprache Was ist eine Skriptsprache?]
[https://de.wikipedia.org/wiki/JavaScript Grundlegendes zu JavaScript hier] oder [https://www.mediaevent.de/javascript/ hier]
[https://de.wikipedia.org/wiki/Datentyp Infos zu Datentypen]
[https://www.w3schools.com/jsref/jsref_obj_math.asp JavaScript Dokumentation auf w3schools]
== Datentypen in Pascal ==
Pascal ist eine <u>''streng typisierte''</u> Sprache. Das ist eine Sprache, bei der der Programmierer gezwungen wird, einzelne Datentypen zu deklarieren. Diese Typen dürfen dann nur typgerecht verwendet werden. Es kann also keine Operation zwischen verschiedenen Datentypen durchgeführt werden. Unter Umständen müssen Datentypen untereinander konvertiert werden:
* ''strtofloat'' wandelt Zeichenkette in reelle Zahl um
* ''floattostr'' wandelt relle Zahl in Zeichenkette um
* ''strtoint'' wandelt Zeichenkette in ganze Zahl um
* ''inttostr'' wandelt ganze Zahl in Zeichenkette um
Außerdem gibt es Grenzen wie groß eine Zahl sein darf - diese Grenzen legt auch der verwendete Datentyp fest.
In nachfolgender Tabelle sind einige dieser Datentypen zusammengefasst dargestellt. Jeder Datentyp besitzt einen genauen Wertebereich.
<center>
{| style="text-align:center;border:solid grey 1px" cellpadding=3 cellspacing=0
|- style="background:#CD661D;"
! Typ !! Byte !! Wertebereich !!
|- style="background:#CD661D;"
| ganze Zahlen || || ||
|-
| <span style="color:#CD661D">byte</span> || 1 || 0 bis 255
|-
| <span style="color:#CD661D">word</span> || 2 || 0 bis 65535
|-
| <span style="color:#CD661D">shortint</span> || 1 || -128 bis 127
|-
| <span style="color:#CD661D">integer</span> || 4 || -2147483648 bis 2147483647
|-
| <span style="color:#CD661D">int64</span> || 8 || -2<sup>63</sup> bis 2<sup>63</sup>-1
|- style="background:#CD661D;"
| Fließkommazahlen (reelle Zahlen)|| || ||
|-
| <span style="color:#CD661D">real</span> || 4 || 1.1*10^-38 .. 3.4*10^38
|-
| <span style="color:#CD661D">double</span> || 8 || - 1.79769313486231570 *10<sup>308</sup> bis 1.79769313486231570 *10<sup>308</sup>
|-
| <span style="color:#CD661D">extended</span> || 10 || 3.6*10<sup>-4951</sup> bis 1.1*10<sup>4932</sup>
|- style="background:#CD661D"
| Wahrheitswert || || ||
|-
| <span style="color:#CD661D">boolean</span> || 1 || true, false (wahr, falsch)
|- style="background:#CD661D"
| Zeichenketten || || ||
|-
| <span style="color:#CD661D">char</span> || 2 || Unicode - Zeichen
|-
|<span style="color:#CD661D">string</span> || 1 || Ansi
|}
</center>