• Keine Ergebnisse gefunden

2.3 Weitere Beispiele (von Variablen)

N/A
N/A
Protected

Academic year: 2022

Aktie "2.3 Weitere Beispiele (von Variablen)"

Copied!
88
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

2.3 Weitere Beispiele (von Variablen)

(2)

Zwei Arten von Variablen

§ Primitive Variables

§ Speichern Wert eines Basistyps

§ Basistyp: fixe Grösse, Ober- und Unter-Grenze

§ verwenden Operatoren +, /, *, - (und ein paar mehr …)

§ Reference Variables

§ Speichern Verweis auf Objekt

§ Objekt: (oft) variable Grösse

§ Operationen mit Methoden (z.B. s.toUpperCase() // s ein String)

(3)

Zwei Arten von Variablen

§ Bisher kennen wir nur

§ Primitive Variables für ganze Zahlen: int int k;

int m = 1234;

int n = m + 1;

§ Reference Variables für String Objekte:

String s = "hello";

String t = s.repeat(3);

§ Es gibt noch einige mehr … aber auch mit diesen zwei gibt es

viele interessante Beispiele 3

(4)

Opertoren für int

§ Die bekannten Operatoren

§ + : Addition

§ - : Subtraktion

§ * : Multiplication

§ / : Division

§ % : Rest

§ Die üblichen Regeln (Punkt vor Strich etc)

§ int Division a/b (a,b: int) ergibt int Quotient, nach 0 gerundet

(5)

int Division mit /

§ Wenn wir ganze Zahlen dividieren ist der Quotient auch wieder eine ganze Zahl.

§ 14 / 4 ergibt 3, nicht 3.5

3 4 52

4 ) 14 10 ) 45 27 ) 1425

12 40 135

2 5 75 54 21

(6)

int Division mit /

§ Weitere Beispiele:

§ 32 / 5 ergibt 6

§ 84 / 10 ergibt 8

§ 156 / 100 ergibt 1

§ -4 / 3 ergibt -1

§ -101 / 9 ergibt -11

§ Division durch 0 führt zu einem Fehler während der Ausführung des Programmes

(7)

int Rest mit %

§ Der % Operator liefert den Rest der Division ganzer Zahlen

§ 14 % 4 ergibt 2

§ 218 % 5 ergibt 3

3 43

4 ) 14 5 ) 218

12 20

2 18 15 3

(8)

int Rest mit %

§ Einsatz des % Operators:

§ Finde letzte Ziffer einer ganzen Zahl : 230857 % 10 ist 7

§ Finde letzte 4 Ziffern: 658236489 % 10000 ist 6489

§ Entscheide ob Zahl gerade ist: 7 % 2 ergibt 1 42 % 2 ergibt 0

(9)

Was ist das Ergebnis von

1. 10 / 4

2. 45 % 6

3. -23 / 11

4. 11 % 0

5. 2 % 2

6. 43 / 3

7. 8 % 20

(10)

Was ist das Ergebnis von

1. 10 / 4 2

2. 45 % 6 3

3. -23 / 11 -2

4. 11 % 0

5. 2 % 2 0

6. 43 / 3 14

7. 8 % 20 8

(11)

String Beispiel

§ Schreiben Sie ein Programm das das Zeichen in der Mitte eines Strings findet (und einen String mit diesem erstellt)

§ Annahme: String hat ungerade Länge > 2 (Länge + 1)

m = 2

"Eisenbahn"

Länge: 9

0 1 2 3 4 5 6 7 8

Position fängt mit «0» an

Gesucht:

substring(m-1,m)

(12)

Noch ein Beispiel

§ Schreiben Sie ein Programm das die 3 Zeichen in der Mitte eines Strings findet (und einen String mit diesen erstellt)

§ Annahme: String hat ungerade Länge > 2

§ Für "Eisenbahn" wollen wir "enb"

(13)

"Eisenbahn"

Länge: 9

0 1 2 3 4 5 6 7 8

(14)

Variation des Beispiels

§ Schreiben Sie ein Programm das die 3 Zeichen in der Mitte eines Strings findet (und einen String mit diesen erstellt)

§ Annahme: String hat ungerade Länge > 2

§ Für "Autobahn" wollen wir "tob"

§ "oba" wäre auch eine vernüftige Lösung …

"Autobahn"

Länge: 8

0 1 2 3 4 5 6 7

(15)
(16)

Arbeiten mit Werten

§ Primitive Variable (speichert Wert eines Basistyps):

Operatoren +, /, *, - (und ein paar mehr …)

§ Reference Variables (Verweis auf Objekt):

Operationen mit Methoden

mit einer Ausnahme: + Operator für String Objekte

(17)

String Operationen

§ String Konkatenierung («concatenation»):

§ concat(String) Operation

§ Aber Strings sind häufig … wer will das schreiben:

§ Java erlaubt eine Kurzform: + Operator

"hello " + ”world" ergibt "hello world"

"a" + "b" + "c" ergibt "abc"

?

(18)

String Operationen

§ Java Regel: Jeder Wert eines Basistyps kann ausgegeben werden (auch jedes Objekt)

§ Ausgeben: es gibt eine Standard Darstellung als String (kann dann z.B.

gedruckt oder auf dem Display gezeigt werden)

§ Ob diese default Darstellung (Deutsch: voreingestellte D. ,

standardmässig eingestellte D.) sinnvoll/verständlich ist – andere Frage

§ Trotzdem sehr praktisch

§ Der Operator + mit einem String verwendet default Darstellung

(19)

Darstellung als String

§ Für Basistypen ist die default Darstellung die erwartete Darstellung

§ Für int Variable und Konstanten

§ int Konstante 42 Default Ausgabe: "42"

§ int j = 99 Default Ausgabe für j : "99"

§ Für Strings ist die default Darstellung der String (wie von der JShell gezeigt)

(20)

String Operationen

§ Der Operator + mit einem String und einem anderen Wert als Operanden ergibt einen längeren String

§ Der Operator + mit einem String verwendet die default Darstellung beider Operanden um den neuen String zu konstruieren

§ "abc" + 2

§ Default Darstellung für "abc": "abc"

§ Default Darstellung für 2: "2"

(21)

Darstellung als String

§ String + anderer Wert als Operand: verknüpfe String mit default Ausgabe zu neuem String

"hello" + 42 ergibt "hello42"

"hello" + j ergibt "hello99" // j ist 99

§ Für Ausdrücke («Expressions») mit Strings gelten die üblichen Regeln

(22)

Die üblichen Regeln …

§ Von links nach rechts abarbeiten

§ 12 – 3 + 5 ergibt 1124 (nicht 4)

§ Punkt vor Strich

§ 12 + 2 * 3 ergibt 18

§ Genauso mit Strings …

§ 2 + 3 + " Hello" ergibt "5 Hello"

§ "Hello " + 2 + 3 ergibt "Hello 23"

§ "Hello " + 2 * 3 ergibt "Hello 6"

(23)

Die üblichen Regeln …

§ Von links nach rechts abarbeiten

§ 12 – 3 + 5 ergibt 14 (nicht 4)

§ Punkt vor Strich

§ 12 + 2 * 3 ergibt 18

§ Genauso mit Strings …

§ 2 + 3 + " Hello" ergibt "5 Hello"

§ "Hello " + 2 + 3 ergibt "Hello 23"

§ "Hello " + 2 * 3 ergibt "Hello 6"

(24)

Die üblichen Regeln …

§ Von links nach rechts abarbeiten

§ 12 – 3 + 5 ergibt 14 (nicht 4)

§ Punkt vor Strich

§ 12 + 2 * 3 ergibt 18

§ Genauso mit Strings …

§ 2 + 3 + " Hello" ergibt "5 Hello"

§ "Hello " + 2 + 3 ergibt "Hello 23"

§ "Hello " + 2 * 3 ergibt "Hello 6"

(25)

String Operationen Quiz

1 + 2 + "abc"

"abc" + 9 * 3

"1" + 1

4 - 1 + "abc"

(26)

Review

(27)

Zuweisung (Programm) und Algebra (Mathematik)

§ Zuweisung verwendet = , aber eine Zuweisung ist keine algebraische Gleichung!

= ist ein Operator: Zuweisungsoperator

= bedeutet: ”speichere Wert in der Variable"

Die rechte Seite des Ausdrucks wird zuerst ausgewertet,

dann wird das Ergebnis in der Variable auf der linken Seite gespeichert

§ Was passiert hier?

int x = 3;

x = x + 2; // ???

x 3

x 5

(28)

Was passiert hier ?

Sehen Sie sich diese Anweisungen an. Welchen Wert hat x am Ende?

int x;

int y;

x = 1; // (S1) y = 2; // (S2) x = y; // (S3) y = 3; // (S4)

x hat den Wert ???

Poll

(29)
(30)

Vorkurs zur

Einführung in die Programmierung

3.0 Schritte und ihre Reihenfolge(n)

Thomas R. Gross

Department Informatik ETH Zürich

(31)

Übersicht

3.1 Einleitung

3.2 Bedingte Ausführung 3.3 Boolsche Ausdrücke 3.4 Boolsche Variable 3.5 Sichtbarkeit

3.6 Bemerkungen

(32)

3.1 Einleitung

(33)

Zurück zum String Beispiel

§ Schreiben Sie ein Programm das das Zeichen in der Mitte eines Strings findet (und einen String mit diesem erstellt)

§ Lösung korrekt nur unter Annahme dass String > 2 Zeichen enthält

§ Also 3, 4, 5, …

§ Zwei Fragen

§ Wer prüft die Annahme?

§ Gibt es eine (vernünftige) Lösung wenn die Annahme nicht erfüllt ist?

(34)

Variation String Beispiel

§ Schreiben Sie ein Programm das das Zeichen in der Mitte eines Strings findet (und einen String mit diesem erstellt)

§ Annahme: String hat ungerade Länge > 2 (Länge + 1)

m = 2

"Eisenbahn"

Länge: 9

0 1 2 3 4 5 6 7 8

Strings fangen mit «0» an

Gesucht:

(35)

Variation String Beispiel

§ Gegeben ein String str.

§ Schreiben Sie ein Programm das das Zeichen in der Mitte des Strings str findet und einen String res erstellt, der aus

diesem Zeichen besteht.

§ Wir geben Ausgangs- und Ergebnis-String einen Namen

§ Weiterhin Annahme str.length() > 2

(36)

Programm

String str;

String res;

int sl = (str.length() + 1) / 2 res = str.substring(sl-1, sl)

(37)

Programm

String str;

String res;

int sl = (str.length() + 1) / 2 res = str.substring(sl-1, sl)

JShell Ausführung

(38)

JShell Komfort

§ /list liefert Liste der Eingabe (Anweisungen, Ausdrücke, Deklarationen)

§ Können diese wiederverwenden: /<number>

(39)

Welche Annahmen sind nötig?

§ sl = (str.length() + 1) / 2

§ Länge für jeden String definiert, auch für leeren String ""

§ str.substring(sl-1, sl)

§ Nur wenn der String str Zeichen enthält gibt es Teilstring

Länge (Länge+1)/2 Teilstring Beispiel

3 2 1 .. 2 "abc"

(40)

Welche Annahmen sind nötig?

§ sl = (str.length() + 1) / 2

§ Länge für jeden String definiert, auch für leeren String ""

§ str.substring(sl-1, sl)

§ Nur wenn der String str Zeichen enthält gibt es Teilstring

Länge (Länge+1)/2 Teilstring Beispiel

3 2 1 .. 2 "abc"

2 1 0 .. 1 "ab"

(41)

Welche Annahmen sind nötig?

§ sl = (str.length() + 1) / 2

§ Länge für jeden String definiert, auch für leeren String ""

§ str.substring(sl-1, sl)

§ Nur wenn der String str Zeichen enthält gibt es Teilstring

Länge (Länge+1)/2 Teilstring Beispiel

3 2 1 .. 2 "abc"

2 1 0 .. 1 "ab"

1 1 0 .. 1 "a"

(42)

Unser Beispiel

§ Und für den leeren String ""?

(43)

Welche Annahmen sind nötig?

§ sl = (str.length() + 1) / 2

§ Länge für jeden String definiert, auch für leeren String ""

§ str.substring(sl-1, sl)

§ Nur wenn der String str Zeichen enthält gibt es Teilstring

Länge (Länge+1)/2 Teilstring Beispiel

3 2 1 .. 2 "abc"

2 1 0 .. 1 "ab"

1 1 0 .. 1 "a"

0 0 -1 .. 0 ""

(44)

Unser Beispiel

§ Und für den leeren String ""?

(45)

§ Was ist eine vernünftige Lösung für den leeren String?

§ Hängt von den Umständen ab

§ Fehlermeldung

§ z.B., String res soll als Filename verwendet werden

§ Noch einmal fragen …

§ Programmabbruch wenn Fehler nicht behoben

§ Leerer String

§ Andere Lösungen auch sinnvoll

(46)

§ Was ist eine vernünftige Lösung für den leeren String?

§ Hängt von den Umständen ab

§ Fehlermeldung

§ z.B., String res soll als Filename verwendet werden

§ Noch einmal fragen …

§ Programmabbruch wenn Fehler nicht behoben

§ Leerer String

§ Andere Lösungen auch sinnvoll

§ Fragen Sie nach, lesen Sie Aufgabenbeschreibung

(47)

Variation String Beispiel

§ Gegeben ein String str.

§ Schreiben Sie ein Programm das das Zeichen in der Mitte des Strings str findet und einen String res erstellt, der aus

diesem Zeichen besteht.

§ Wenn str der leere String ist so soll auch res der leere String sein.

§ Erfreulicherweise ist unser Programm fast fertig

(48)

Entscheidungen à Bedingte Ausführung

§ Wollen unterschiedliche Anweisungen ausführen, abhängig vom Zustand unseres Programmes oder vom Input

§ if – then – else Konstrukt in Java erlaubt selektive Ausführung von Anweisungen

§ Verschiedene Varianten

§ Auch in vielen anderen Programmiersprachen

(49)

3.2 Bedingte Ausführung

(50)

Java: bedingte Ausführung

§ Die if—Anweisung (if—statement) führt eine Folge von

Anweisungen nur dann aus, wenn eine Bedingung erfüllt ist if (test) {

Folge-von-Anweisungen }

// folgende Anweisung

§ test: bestimmt die Bedingung

§ Folge-von-Anweisungen: kann leer oder eine Anweisung sein

§ Heisst auch «then-Block»

(51)

Anweisungen

§ Anweisungen («Statements») können sich über mehrere Zeilen erstrecken

§ Der Compiler1 muss wissen, wo ein Statement aufhört

§ 1 und auch die JShell

§ In Java endet jede Anweisung mit ;

(52)

JShell Komfort

§ In Java endet jede Anweisung mit ;

§ Die JShell ist tolerant

§ ; nur notwendig wenn zwingend erforderlich

§ Manchmal ist die JShell nicht konsequent

§ Siehe letztes Beispiel

§ Vorschlag: ab jetzt ; verwenden um Ende einer

(53)

Java: bedingte Ausführung

§ Die if—Anweisung (if—statement) führt eine Folge von

Anweisungen nur dann aus, wenn eine Bedingung erfüllt ist if (test) {

Folge-von-Anweisungen }

// naechste Anweisung

§ Beispiel

§ int j = 5;

§ if (j > 4) {

§ j = 0;

§ } 58

Anweisung(en) ausführen Ist test wahr?

Nächste Anweisung ausführen

ja nein

(54)

Programm für String Beispiel

§ Wollen sicher sein dass res der leere String ist, falls str der leere String ist (dann hat str.length() den Wert 0 ergeben)

§ Je nach Setup erscheinen multi-Zeilen Eingaben so:

(55)

Diskussion

§ Wenn wir dieses Programm für einen anderen String

ausführen wollen, dann müssen wir auch /32 ausführen (denn str könnte der leere String sein)

§ Ist das gut oder schlecht??

(56)

Diskussion

§ In beiden Fällen liefert das Programm das gewünschte Ergebnis!

§ // heisst: der Rest der Zeile ist ein Kommentar

(57)

Diskussion

§ Wenn wir dieses Programm für einen anderen String

ausführen wollen, dann müssen wir auch /32 ausführen (denn str könnte der leere String sein)

§ Ist das gut oder schlecht??

§ Gut: sollten eh jede Variable initialisieren

§ Schlecht: Unnötige Arbeit falls str nicht der leere String ist

(58)

Java: bedingte Ausführung

§ Andere Idee: entweder-oder

§ Entweder res wird auf das Zeichen in der Mitte gesetzt

§ "Autobahn" à "o"

§ Oder res wird auf den leeren String gesetzt (falls str der leere String ist)

§ "" à ""

§ Häufiges Muster: if-else—Anweisung (if-else—statement)

(59)

Java: bedingte Ausführung

§ Die if-else—Anweisung führt eine Folge A von Anweisungen aus wenn eine Bedingung erfüllt ist, sonst eine Folge B

if (test) {

Folge-A-von-Anweisungen } else {

Folge-B-von-Anweisungen }

// naechste Anweisung

"if" Anweisung(en) ausführen: Folge A Ist test wahr?

Nächste Anweisung ausführen nein ja

"else" Anweisung(en) ausführen: Folge B

(60)
(61)

Java: bedingte Ausführung

§ Die if-else—Anweisung führt eine Folge A von Anweisungen aus wenn eine Bedingung erfüllt ist, sonst eine Folge B

if (test) {

Folge-A-von-Anweisungen } else {

Folge-B-von-Anweisungen }

// naechste Anweisung

§ test: bestimmt die Bedingung

§ Folge-A/Folge-B: kann leer oder eine Anweisung sein

§ Leer ist schlechter Stil, später dazu mehr

§ { und } begrenzen den then-Block (if-Block) und else-Block 66

(62)
(63)

3.3 Boolesche Ausdrücke

§ Was für Tests können wir in einem if-Statement (oder if-else—

Statement) verwenden?

§ Fall 1: Variable und Werte eines Basistyps

§ Bisher kennen wir nur int

§ Was wir vorstellen gilt für alle Basistypen

§ Fall 2: Referenzvariable

(64)

Boolesche Ausdrücke

§ if—Anweisungen und if-else—Anweisungen verwenden beide boolesche Ausdrücke

if (i > 0) { ... }

if (i > 10) { ... } else { ... }

§ Oft Vergleiche oder Kombinationen von Vergleichen

§ Diese Ausdrücke werden ausgewertet --- Ergebnis entweder «true»

oder «false»

§ true und false sind Konstanten (für Wahrheitswerte)

Ausdrücke verwenden Vergleichsoperatoren

(65)

Vergleichsoperatoren

§ Der boolesche Ausdruck steht (für if-Statement) in Klammern

Operator Bedeutung Beispiel Wert

== gleich 1 + 1 == 2 true

!= ungleich 3 != 2 true

< weniger als 10 < 5 false

> grösser als 10 > 5 true

<= weniger als oder gleich 126 <= 100 false

>= grösser als oder gleich 5 >= 5 true

(66)

Boolesche Ausdrücke

§ Aussagen: boolescher Ausdruck

§ Aussagen können mit && (UND) oder || (ODER) kombiniert werden

2 <= x && x <= 10 (Annahme: x ist 15) True && False

False

§ Verwenden Sie Klammern um Klarheit zu schaffen (2 <= x) && (x <= 10)

(67)

Boolesche Operatoren

§ Ausdrücke mit Vergleichsoperatoren können durch boolesche Operatoren verknüpft werden

§ ”Wahrheitstabelle" für diese Operatoren, für Aussagen p und q:

Operator Bedeutung Beispiel Wert

&& and (2 == 3) && (-1 < 5) false

|| or (2 == 3) || (-1 < 5) true

! not !(2 == 3) true

p q p && q p || q

true true true true

true false false true

false true false true

p !p

true false false true

(68)

Beispiel

§ Welcher boolesche Ausdruck ergibt true 0)

(69)

Boolesche Ausdrücke

§ Was ist das Ergebnis für die folgenden Ausdrücke?

int x = 42;

int y = 17;

int z = 25;

1. y < x && y <= z

2. x % 2 == y % 2 || x % 2 == z % 2 3. x <= y + z && x >= y + z

4. !(x < y && x < z)

5. (x + y) % 2 == 0 || !((z - y) % 2 == 0)

Poll

(70)

§ Was ist das Ergebnis für die folgenden Ausdrücke?

int x = 42;

int y = 17;

int z = 25;

1. y < x && y <= z

2. x % 2 == y % 2 || x % 2 == z % 2 3. x <= y + z && x >= y + z

4. !(x < y && x < z)

5. (x + y) % 2 == 0 || !((z - y) % 2 == 0)

Boolesche Ausdrücke

(71)

= und == in Java

§ = ist der Zuweisungsoperator (assignment operator)

int k = 4; // k hat nach diesem Statement den Wert 4

§ Ergebnis ist der Wert 4 -- kein Wahrheitswert

§ Fehlermeldung eventuell verwirrend

(72)

= und == in Java

§ = ist der Zuweisungsoperator (assignment operator)

int k = 4; // k hat nach diesem Statement den Wert 4

§ Ergebnis ist der Wert 4 -- kein Wahrheitswert

§ == ist der Vergleichsoperator (auf Gleichheit)

§ Kann in if-Statement verwendet werden

(73)

3.4 Boolesche Variable

§ Das Ergebnis eines booleschen Ausdrucks kann gespeichert werden

§ Basistyp boolean

§ Nur die Werte true und false

§ Nur == und != als Vergleichsoperatoren

§ Vergleich (>, <, >=, <=) nicht sinnvoll

Operator Bedeutung Beispiel Wert

== gleich true == false false

!= ungleich true != false true

(74)
(75)

Typ boolean

§ Deklaration wie gehabt

§ boolean quadrant1;

§ boolean quadrant1 = true;

deklarieren boolesche Variable

§ Boolesche Variable und Ausdrücke können mit den booleschen Operatoren kombiniert werden

(76)

Typ boolean Beispiele

boolean isJugendlicher = (alter < 18);

boolean wohntInZuerich = (plz >= 8000) && (plz < 8100);

boolean studiertETH = true;

// Zutritt nur fuer volljaehrige/n ETH Student/in // aus Zuerich – dann:

if (isJugendlicher || !wohntInZuerich || !studiertETH) { System.out.println("Kein Zutritt!");

}

(77)

Gebrauch von boolean

§ Kann Ergebnis eines komplizierten Ausdrucks speichern und später wiederverwenden

§ Vorausgesetzt die Komponenten des Ausdrucks ändern sich nicht …

§ Macht Programm lesbarer

(78)

3.5 Sichtbarkeit

§ if—Statement hat 1 oder 2 Blöcke

§ if-Block (auch then-Block genannt)

§ else-Block (manchmal)

§ Welche Variablen können wir in den Blöcken verwenden?

§ Frage der Sichtbarkeit

§ Folgefrage: wo können wir Variablennamen neu verwenden

(79)

3.5.1 Welche Variable ist sichtbar?

§ Was gilt für den then—Block?

§ else—Block genauso

if (test) {

// then-Block }

// naechste Anweisung

(80)

§ Sichtbar: kann gelesen oder modifiziert werden

(81)

§ Deklariert im Top Level: überall sichtbar

§ … aber Variable muss deklariert sein

§ Ob Statement je ausgeführt wird spielt keine Rolle

§ "Statischer Check" – ohne Berücksichtigung möglicher Ausführungen

(82)

JShell Komfort

§ Eine Variable, die im Top Level der JShell deklariert wurde, ist sichtbar bis zum Exit aus der JShell

§ Top Level: JShell Prompt

§ (Oder bis wir ein Reset machen: mit /reset )

§ Im Top Level der JShell dürfen wir Variable beliebig neu deklarieren

(83)

JShell Komfort

§ Im Top Level der JShell dürfen wir Variable beliebig neu deklarieren

88

Nicht empfohlen!

Aber bequem wenn wir ein Beispiel ausprobieren

(84)

Variable in einem Block

§ Können in einem Block Variable deklarieren

§ Variation des «Finde-mittleres-Zeichen» Programms

(85)

Variable in einem Block

§ Können in einem Block Variable deklarieren

§ Variation des «Finde-mittleres-Zeichen» Programms:

(86)

Variable in einem Block

§ Können in einem Block Variable deklarieren

§ Variation des «Finde-mittleres-Zeichen» Programms:

if (str.length() > 0) {

int sl = (str.length()+1)/2;

res = str.substring(sl-1, sl);

} else { // str muss leerer String sein res = str;

} § sl existiert nur wenn if-Block ausgeführt wird

(87)

Variable in einem Block

§ Können in einem Block Variable deklarieren

§ Sichtbar in diesem Block bis zum Ende des Blocks

§ Beispiel: sl im letzten Programm

§ Nur im Block sichtbar, nach der Deklaration

§ Sichtbarkeit und Existenz sind zwei verschiedene Aspekte:

§ sl existiert nur wenn if-Block ausgeführt wird (dynamische Eigenschaft der Variable)

§ sl ist sichtbar im Programm (egal ob später ausgeführt)

(88)

Variable in einem Block

§ Können in einem Block Variable deklarieren

§ Ausserhalb des Blocks ist die Variable nicht sichtbar

§ Es gibt eine Fehlermeldung wenn wir es dennoch versuchen

§ … und die Variable existiert auch nicht

Referenzen

ÄHNLICHE DOKUMENTE

en Zelchem in der semioüschen Forschung 61 III. Das Zeichen als Dialog - Dyadische Zeichentheorie 67 3.1. Allgemeiner Charakter und basale Momente des. binaren Zeichenbegriffs 67

Mitglieder: Herr Poli;eimeister, Oberst, Ritter v.. Bürgermeister:

Erhebliche öffentliche Mit- teln sollen vor allem so ausgegeben werden, dass die besonders klimaschädlichen motorisierten KFZ-Verkehre noch angeregt und verstärkt werden;

• In addition to the particles postulated by the standard model of particle physics, string theory naturally incorporates gravity, and so is a candidate for a theory of everything,

Gleichzeitig sollte aber auch das Verständnis aufgebracht werden, dass nicht alle über 3000 Pflegedienste im Land von heute auf morgen bei knappen Impfstoffka- pazitäten insgesamt

We may therefore suspect that an appropriate construction of the action in the case when fermionic degrees of freedom 'l',u are also present might be to treat X,u and 'l',u as

asien nach Europa dies Gebiet von Norden her, denn ihr Wog führte durch Südrussland (nicht durch Kleinasien), die Semiten dagegen von Süden her, da ihr Weg, nachdem die

durch Selbstbeobachtung feststellen, daß diese beiden Laute nicht durch.. eine Reibung zwischen Zungenwurzel und hinterer