Variablen

In dieser Einheit lernen wir etwas über Variablen und trainieren ihren Einsatz in einfachen Beispielen manuell.

Variablen und Werte

In der Mathematik ist eine Variable üblicherweise ein Buchstabe, der für eine Zahl steht. In der Informatik ist ein Name, der für einen Inhalt steht.

Die Spalte «Befehl» in den folgenden Tabellen enthält pro Tabelle ein Programm. In den Spalten daneben soll jeweils der Inhalt stehen, den die entsprechende Variable nach Ausführung des Befehls enthält.

Beispiel:

Befehlabc
a=55  
b=757 
c=b-a572

Komplettieren Sie so die folgenden Beispiele:

Beispiel 1:

Befehlxyz
x = 3
y = 4
z = x+y
x = 10
z = x-y

Beispiel 2:

Befehlpreissteuertotal
preis = 12.5
steuer = 2.5
total = preis+steuer
preis = 20

Beispiel 3:

Befehlnamegruss
name = «Ana»
gruss = «Hi «
gruss = gruss + name
name = «Tom»

Beispiel 4:

Befehlabcd
a = 8
b = a * 2
c = b – a
d = c / 2
b = 3

Beispiel 5:

Befehltextzahl
text = «Hallo»
zahl = 5
text = text + «!»
zahl = zahl + 7
text = text + » Nr » + zahl

Überprüfung

  1. Sie wissen, wie Variablen gesetzt werden
  2. Sie wissen, was zu jedem Moment der Inhalt einer Variable ist
Beispiel 1
Befehlxyz
x = 33
y = 434
z = x+y347
x = 101047
z = x-y1046
Beispiel 2
Befehlpreissteuertotal
preis = 12.512.5
steuer = 2.512.52.5
total = preis+steuer12.52.515
preis = 20202.515
Beispiel 3
Befehlnamegruss
name = «Ana»Ana
gruss = «Hi «AnaHi
gruss = gruss + nameAnaHi Ana
name = «Tom»TomHi Ana
Beispiel 4
Befehlabcd
a = 88
b = a * 2816
c = b – a8168
d = c / 281684
b = 38384
Beispiel 5
Befehltextzahl
text = «Hallo»Hallo
zahl = 5Hallo5
text = text + «!»Hallo!5
zahl = zahl + 7Hallo!12
text = text + » Nr » + zahlHallo! Nr 1212

Variablen und Typen

Zusätzlich haben Variablen in der Informatik immer auch einen Variablentyp. Dies ist nötig, weil verschiedene Inhalte technisch unterschiedlich in Bits übersetzt werden, um sie in Computern elektronisch abspeichern zu können.

Wir werden vorerst die folgenden Variablentypen verwenden:

TypEnglischAkürzungBeispiele
Ganze ZahlIntegerint3, 5, 7
KommazahlFloating Point Numberfloat3.14
17.353
2.0
TextString of charactersstr‚Hallo‘
‚Alfons‘
‚243‘

In Python gibt es Befehle, die (wenn möglich) einen Inhalt in einen bestimmten Typ umwandeln:

BefehlWas tut er?BeispieleFehler
int(x)Wandelt x in eine ganze Zahl umint(’34‘) → 34
int(‚2‘) → 2
int(7) → 7
int(3.14) → 3
int(‚Hallo‘)
float(y)Wandelt y in eine Kommazahl umfloat(3) → 3.0
float(‚8.9‘) → 8.9
float(‚Hallo‘)
str(z)Wandelt z in einen Text umstr(3) → ‚3‘
str(4.03) → ‚4.03‘
keine (alles kann in Text umgewandelt werden!)

Die Spalte «Befehl» in den folgenden Tabellen enthält pro Tabelle ein Programm. In den Spalten daneben soll jeweils der Inhalt und der Typ stehen, den die entsprechende Variable nach Ausführung des Befehls enthält.

Beispiel:

Befehlabc
a=55int    
b=7.25int7float  
c=b-a5int7float2.2float

Komplettieren Sie so die folgenden Beispiele:

Beispiel 6:

BefehlxTypyTyp
x=3    
y=2    
x=x+y    

Beispiel 7:

BefehlaTypbTypcTyp
a=1.5      
b=4      
c=a*b      
a=10      

Beispiel 8:

BefehlnameTypgreetingTyp
name=»Ana»    
greeting=»Hallo «    
greeting=greeting+name    
name=»Tom»    

Beispiel 9:

BefehlpreisTyprabattTypneuer_preisTyp
preis=20      
rabatt=0.1      
neuer_preis=preis-preis*rabatt      
rabatt=0.25      

Beispiel 10:

BefehlaTypbTypcTypdTyp
a=8    
b=3.0        
c=a/b        
d=c-2        
b=4        

Überprüfung

  1. Sie wissen, wie Variablen gesetzt werden
  2. Sie wissen, was zu jedem Moment der Inhalt einer Variable ist

Beispiel 6:

BefehlxTypyTyp
x=33int
y=23int2int
x=x+y5int2int

Beispiel 7:

BefehlaTypbTypcTyp
a=1.51.5float
b=41.5float4int
c=a*b1.5float4int6.0float
a=1010int4int6.0float

Beispiel 8:

BefehlnameTypgreetingTyp
name=»Ana»«Ana»str
greeting=»Hallo ««Ana»str«Hallo «str
greeting=greeting+name«Ana»str«Hallo Ana»str
name=»Tom»«Tom»str«Hallo Ana»str

Beispiel 9:

BefehlpreisTyprabattTypneuer_preisTyp
preis=2020int
rabatt=0.120int0.1float
neuer_preis=preis-preis*rabatt20int0.1float18.0float
rabatt=0.2520int0.25float18.0float

Beispiel 10:

BefehlaTypbTypcTypdTyp
a=88int
b=3.08int3.0float
c=a/b8int3.0float2.6666666667float
d=c-28int3.0float2.6666666667float0.6666666667float
b=48int4int2.6666666667float0.6666666667float