Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:funktionen:problems [2023-11-16 14:25] – [Probleme mit Funktionen] hofgf_informatik:funktionen:problems [2023-11-16 14:27] (aktuell) – [Problem 5] hof
Zeile 90: Zeile 90:
  
 ++++Lösung| ++++Lösung|
-Der Code gibt erst 25, dann 5 aus. Wo liegt nun das Problem? Wenn du nur die letzte Zeile anschaust, würdest du erwarten, dass diese Zeile die Zahl 25 ausgibt (4 hoch 2 plus 3 hoch 2). Aber sie gibt 5 aus. Die Definition der Funktion //summe\_quadrate2// hat die Arguente x und y, rechnet aber mit Variablen namens a und b. Normalerweise würde hier eine Fehlermeldung entstehen – aber das Problem ist dies: Die Variablen a und b sind ganz oben schon definiert. Also verwendet //summe\_quadrate2// einfach diese Variablen, x und y bleiben ungenutzt. Es gilt Folgendes:+Der Code gibt erst 25, dann 5 aus. Wo liegt nun das Problem? Wenn du nur die letzte Zeile anschaust, würdest du erwarten, dass diese Zeile die Zahl 25 ausgibt (4 hoch 2 plus 3 hoch 2). Aber sie gibt 5 aus. Die Definition der Funktion //summe\_quadrate2// hat die Parameter x und y, rechnet aber mit Variablen namens a und b. Normalerweise würde hier eine Fehlermeldung entstehen – aber das Problem ist dies: Die Variablen a und b sind ganz oben schon definiert. Also verwendet //summe\_quadrate2// einfach diese Variablen, x und y bleiben ungenutzt. Es gilt Folgendes:
   * Variablen, die //ausserhalb// der Definition einer Funktion definiert werden, sind //globale Variablen//. Sie sind global, also überall bekannt – auch //in// der Definition der Funktion.    * Variablen, die //ausserhalb// der Definition einer Funktion definiert werden, sind //globale Variablen//. Sie sind global, also überall bekannt – auch //in// der Definition der Funktion. 
   * Falls in der Definition der Funktion eine Variable definiert wird, die gleich heisst wie die globale Variable, handelt es sich dabei um zwei verschiedene Variablen!   * Falls in der Definition der Funktion eine Variable definiert wird, die gleich heisst wie die globale Variable, handelt es sich dabei um zwei verschiedene Variablen!
  
-**Merke:** Definiere Variablen, die du innerhalb einer Funktino verwendest, immmer innerhalb der Funktion, nicht ausserhalb. +**Merke:** Definiere Variablen, die du innerhalb einer Funktion verwendest, immer innerhalb der Funktion, nicht ausserhalb. 
  
 ++++ ++++
Zeile 113: Zeile 113:
  
 ++++Lösung| ++++Lösung|
-Die Funktion zufallszahl() gibt keinen Wert //zurück//. Sie gibt bloss einen Wert //aus//. Damit die Funktion einen Wert zurückgibt, müsste ''print'' durch ''return'' ersetzt werden. +Die Funktion `zufallszahl()gibt keinen Wert //zurück//. Sie gibt bloss einen Wert //aus//. Damit die Funktion einen Wert zurückgibt, müsste ''print'' durch ''return'' ersetzt werden. 
  
 **Merke:** **Merke:**
  • gf_informatik/funktionen/problems.1700144705.txt.gz
  • Zuletzt geändert: 2023-11-16 14:25
  • von hof