Aufgaben: Unterschied zwischen den Versionen

Aus MediaWiki Fachinformatiker
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 222: Zeile 222:
Achte darauf, dass der Datentyp immer zum gespeicherten Wert passt.
Achte darauf, dass der Datentyp immer zum gespeicherten Wert passt.
}}
}}
```
```mediawiki
= Übungen: Datentypen in C# =
__TOC__
= Aufgabe 1: Ganzzahl =
== Aufgabenstellung ==
Deklariere und initialisiere eine Ganzzahl mit dem Wert <code>25</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        int zahl = 25;
        Console.WriteLine(zahl);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>int</code>
| Datentyp für ganze Zahlen
|-
| <code>zahl</code>
| Variablenname
|-
| <code>25</code>
| gespeicherter Wert
|}
{{Box|Merke|
Der Datentyp <code>int</code> speichert ganze Zahlen ohne Nachkommastellen.
}}
----
= Aufgabe 2: Zeichenkette =
== Aufgabenstellung ==
Deklariere eine Zeichenkette namens <code>begruessung</code> und initialisiere sie mit dem Text:
<code>"Hallo Welt!"</code>
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        string begruessung = "Hallo Welt!";
        Console.WriteLine(begruessung);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>string</code>
| Datentyp für Texte
|-
| <code>begruessung</code>
| Variablenname
|-
| <code>"Hallo Welt!"</code>
| gespeicherter Text
|}
{{Box|Info|
Texte werden in C# immer in Anführungszeichen geschrieben.
}}
----
= Aufgabe 3: Gleitkommazahl =
== Aufgabenstellung ==
Deklariere eine Variable vom Typ <code>double</code>, nenne sie <code>pi</code> und initialisiere sie mit dem Wert <code>3.14159</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        double pi = 3.14159;
        Console.WriteLine(pi);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>double</code>
| Datentyp für Kommazahlen
|-
| <code>pi</code>
| Variablenname
|-
| <code>3.14159</code>
| gespeicherte Kommazahl
|}
{{Box|Merke|
Kommazahlen werden in C# mit einem Punkt geschrieben, nicht mit einem Komma.
}}
----
= Aufgabe 4: Boolescher Wert =
== Aufgabenstellung ==
Deklariere eine boolesche Variable <code>istFeiertag</code> und initialisiere sie mit dem Wert <code>true</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        bool istFeiertag = true;
        Console.WriteLine(istFeiertag);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>bool</code>
| Datentyp für Wahrheitswerte
|-
| <code>true</code>
| wahr
|-
| <code>false</code>
| falsch
|}
{{Box|Info|
Ein boolescher Wert kann nur zwei Zustände besitzen: 
<code>true</code> oder <code>false</code>.
}}
----
= Zusatz: Compiler und Interpreter =
== Was ist ein Compiler? ==
Ein Compiler übersetzt den kompletten Quellcode eines Programms in Maschinensprache oder Zwischencode.
Die Übersetzung findet vor der Programmausführung statt.
== Ablauf eines Compilers ==
<pre>
Quellcode → Compiler → ausführbares Programm
</pre>
== Vorteile eines Compilers ==
* schnelle Programmausführung
* Fehler werden häufig vor der Ausführung erkannt
* optimierter Maschinencode möglich
* Programme können ohne Quellcode verteilt werden
== Nachteile eines Compilers ==
* Änderungen benötigen erneutes Kompilieren
* Plattformabhängigkeit möglich
* Übersetzung kann Zeit benötigen
== Typische Compiler-Sprachen ==
{| class="wikitable"
! Sprache
! Beschreibung
|-
| C
| klassische Compilersprache
|-
| C++
| objektorientierte Erweiterung von C
|-
| Rust
| moderne Systemprogrammiersprache
|-
| Go
| kompilierte Sprache von Google
|-
| C#
| kompiliert zunächst in IL-Zwischencode
|}
----
== Was ist ein Interpreter? ==
Ein Interpreter liest den Quellcode Zeile für Zeile ein und führt ihn direkt aus.
Es wird meist keine separate ausführbare Datei erzeugt.
== Ablauf eines Interpreters ==
<pre>
Quellcode → Interpreter → direkte Ausführung
</pre>
== Vorteile eines Interpreters ==
* schnelle Tests möglich
* Änderungen sofort ausführbar
* oft einfacher zu debuggen
* plattformunabhängiger
== Nachteile eines Interpreters ==
* häufig langsamer
* Fehler treten oft erst während der Ausführung auf
* höherer Ressourcenverbrauch möglich
== Typische Interpreter-Sprachen ==
{| class="wikitable"
! Sprache
! Beschreibung
|-
| Python
| weit verbreitete Interpretersprache
|-
| JavaScript
| Browser-Skriptsprache
|-
| PHP
| Webentwicklung
|-
| Ruby
| interpretiert bzw. VM-basiert
|}
----
= Unterschied zwischen Compiler und Interpreter =
{| class="wikitable"
! Compiler
! Interpreter
|-
| Übersetzt komplettes Programm vorher
| Führt Code direkt aus
|-
| meist schneller
| meist langsamer
|-
| erstellt häufig EXE-Datei
| oft keine EXE-Datei
|-
| Fehler oft vor Ausführung sichtbar
| Fehler häufig erst zur Laufzeit sichtbar
|-
| Änderungen benötigen Neukompilierung
| Änderungen sofort testbar
|}
{{Box|Prüfungstipp|
C# verwendet eine Mischform: 
Der Code wird zuerst kompiliert und anschließend durch die CLR bzw. den Just-in-Time-Compiler ausgeführt.
}}
----
= Zusammenfassung =
In diesen Aufgaben wurden folgende Datentypen verwendet:
* <code>int</code> → ganze Zahlen
* <code>string</code> → Texte
* <code>double</code> → Kommazahlen
* <code>bool</code> → Wahrheitswerte
Zusätzlich wurden die Unterschiede zwischen Compilern und Interpretern behandelt.
[[Kategorie:CSharp]]
[[Kategorie:Programmierung]]
[[Kategorie:FISI]]
```
```mediawiki
= Übungen: Datentypen in C# =
__TOC__
= Aufgabe 1: Ganzzahl =
== Aufgabenstellung ==
Deklariere und initialisiere eine Ganzzahl mit dem Wert <code>25</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        int zahl = 25;
        Console.WriteLine(zahl);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>int</code>
| Datentyp für ganze Zahlen
|-
| <code>zahl</code>
| Variablenname
|-
| <code>25</code>
| gespeicherter Wert
|}
{{Box|Merke|
Der Datentyp <code>int</code> speichert ganze Zahlen ohne Nachkommastellen.
}}
----
= Aufgabe 2: Zeichenkette =
== Aufgabenstellung ==
Deklariere eine Zeichenkette namens <code>begruessung</code> und initialisiere sie mit dem Text:
<code>"Hallo Welt!"</code>
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        string begruessung = "Hallo Welt!";
        Console.WriteLine(begruessung);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>string</code>
| Datentyp für Texte
|-
| <code>begruessung</code>
| Variablenname
|-
| <code>"Hallo Welt!"</code>
| gespeicherter Text
|}
{{Box|Info|
Texte werden in C# immer in Anführungszeichen geschrieben.
}}
----
= Aufgabe 3: Gleitkommazahl =
== Aufgabenstellung ==
Deklariere eine Variable vom Typ <code>double</code>, nenne sie <code>pi</code> und initialisiere sie mit dem Wert <code>3.14159</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        double pi = 3.14159;
        Console.WriteLine(pi);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>double</code>
| Datentyp für Kommazahlen
|-
| <code>pi</code>
| Variablenname
|-
| <code>3.14159</code>
| gespeicherte Kommazahl
|}
{{Box|Merke|
Kommazahlen werden in C# mit einem Punkt geschrieben, nicht mit einem Komma.
}}
----
= Aufgabe 4: Boolescher Wert =
== Aufgabenstellung ==
Deklariere eine boolesche Variable <code>istFeiertag</code> und initialisiere sie mit dem Wert <code>true</code>.
== Lösung ==
<syntaxhighlight lang="csharp">
using System;
class Program
{
    static void Main(string[] args)
    {
        bool istFeiertag = true;
        Console.WriteLine(istFeiertag);
        Console.ReadLine();
    }
}
</syntaxhighlight>
== Erklärung ==
{| class="wikitable"
! Code
! Bedeutung
|-
| <code>bool</code>
| Datentyp für Wahrheitswerte
|-
| <code>true</code>
| wahr
|-
| <code>false</code>
| falsch
|}
{{Box|Info|
Ein boolescher Wert kann nur zwei Zustände besitzen: 
<code>true</code> oder <code>false</code>.
}}
----
= Zusatz: Compiler und Interpreter =
== Was ist ein Compiler? ==
Ein Compiler übersetzt den kompletten Quellcode eines Programms in Maschinensprache oder Zwischencode.
Die Übersetzung findet vor der Programmausführung statt.
== Ablauf eines Compilers ==
<pre>
Quellcode → Compiler → ausführbares Programm
</pre>
== Vorteile eines Compilers ==
* schnelle Programmausführung
* Fehler werden häufig vor der Ausführung erkannt
* optimierter Maschinencode möglich
* Programme können ohne Quellcode verteilt werden
== Nachteile eines Compilers ==
* Änderungen benötigen erneutes Kompilieren
* Plattformabhängigkeit möglich
* Übersetzung kann Zeit benötigen
== Typische Compiler-Sprachen ==
{| class="wikitable"
! Sprache
! Beschreibung
|-
| C
| klassische Compilersprache
|-
| C++
| objektorientierte Erweiterung von C
|-
| Rust
| moderne Systemprogrammiersprache
|-
| Go
| kompilierte Sprache von Google
|-
| C#
| kompiliert zunächst in IL-Zwischencode
|}
----
== Was ist ein Interpreter? ==
Ein Interpreter liest den Quellcode Zeile für Zeile ein und führt ihn direkt aus.
Es wird meist keine separate ausführbare Datei erzeugt.
== Ablauf eines Interpreters ==
<pre>
Quellcode → Interpreter → direkte Ausführung
</pre>
== Vorteile eines Interpreters ==
* schnelle Tests möglich
* Änderungen sofort ausführbar
* oft einfacher zu debuggen
* plattformunabhängiger
== Nachteile eines Interpreters ==
* häufig langsamer
* Fehler treten oft erst während der Ausführung auf
* höherer Ressourcenverbrauch möglich
== Typische Interpreter-Sprachen ==
{| class="wikitable"
! Sprache
! Beschreibung
|-
| Python
| weit verbreitete Interpretersprache
|-
| JavaScript
| Browser-Skriptsprache
|-
| PHP
| Webentwicklung
|-
| Ruby
| interpretiert bzw. VM-basiert
|}
----
= Unterschied zwischen Compiler und Interpreter =
{| class="wikitable"
! Compiler
! Interpreter
|-
| Übersetzt komplettes Programm vorher
| Führt Code direkt aus
|-
| meist schneller
| meist langsamer
|-
| erstellt häufig EXE-Datei
| oft keine EXE-Datei
|-
| Fehler oft vor Ausführung sichtbar
| Fehler häufig erst zur Laufzeit sichtbar
|-
| Änderungen benötigen Neukompilierung
| Änderungen sofort testbar
|}
{{Box|Prüfungstipp|
C# verwendet eine Mischform: 
Der Code wird zuerst kompiliert und anschließend durch die CLR bzw. den Just-in-Time-Compiler ausgeführt.
}}
----
= Zusammenfassung =
In diesen Aufgaben wurden folgende Datentypen verwendet:
* <code>int</code> → ganze Zahlen
* <code>string</code> → Texte
* <code>double</code> → Kommazahlen
* <code>bool</code> → Wahrheitswerte
Zusätzlich wurden die Unterschiede zwischen Compilern und Interpretern behandelt.
[[Kategorie:CSharp]]
[[Kategorie:Programmierung]]
[[Kategorie:FISI]]
```
```

Aktuelle Version vom 28. Mai 2026, 10:53 Uhr

⬅️ Datentypen

```mediawiki

Übungen: Deklaration und Initialisierung in C#

Aufgabe 1: Deklaration mehrerer Variablen

Aufgabenstellung

Deklariere drei Variablen, um die Namen, das Alter und die Höhe (in Metern) von drei verschiedenen Personen zu speichern.

Initialisiere die Variablen mit beliebigen Werten.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        // Person 1
        string name1 = "Max";
        int alter1 = 25;
        double groesse1 = 1.80;

        // Person 2
        string name2 = "Anna";
        int alter2 = 30;
        double groesse2 = 1.65;

        // Person 3
        string name3 = "Tom";
        int alter3 = 22;
        double groesse3 = 1.75;

        Console.WriteLine(name1 + " ist " + alter1 + " Jahre alt und " + groesse1 + " Meter groß.");
        Console.WriteLine(name2 + " ist " + alter2 + " Jahre alt und " + groesse2 + " Meter groß.");
        Console.WriteLine(name3 + " ist " + alter3 + " Jahre alt und " + groesse3 + " Meter groß.");

        Console.ReadLine();
    }
}

Aufgabe 2: Berechnung und Zuweisung

Aufgabenstellung

Deklariere zwei Variablen vom Typ double, um die Länge und Breite eines Rechtecks zu speichern.

Berechne die Fläche und speichere das Ergebnis in einer dritten Variable.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        double laenge = 5.5;
        double breite = 3.2;

        double flaeche = laenge * breite;

        Console.WriteLine("Die Fläche beträgt: " + flaeche);

        Console.ReadLine();
    }
}

Aufgabe 3: Deklariere und initialisiere

Aufgabenstellung

Deklariere und initialisiere folgende Variablen:

  • Einen int-Wert für das Alter einer Person
  • Einen double-Wert für die Temperatur
  • Einen string-Wert für den Namen eines Haustiers
  • Einen bool-Wert, der angibt, ob es draußen regnet

Zusatz: Gib die Werte in der Konsole aus.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        int alter = 28;
        double temperatur = 21.5;
        string haustier = "Bello";
        bool regnet = false;

        Console.WriteLine("Alter: " + alter);
        Console.WriteLine("Temperatur: " + temperatur);
        Console.WriteLine("Haustier: " + haustier);
        Console.WriteLine("Regnet es draußen?: " + regnet);

        Console.ReadLine();
    }
}

Aufgabe 4: Deklariere und initialisiere

Aufgabenstellung

Deklariere und initialisiere Variablen, um folgendes zu berechnen:

  • Das Ergebnis einer Addition von zwei int-Zahlen
  • Die Fläche eines Kreises mit einem gegebenen Radius
  • Eine Nachricht, die zwei Strings miteinander kombiniert

Hinweis:

  • Verwende die Konstante Math.PI
  • Strings können mit + verbunden werden

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        // Addition
        int zahl1 = 10;
        int zahl2 = 5;

        int ergebnis = zahl1 + zahl2;

        // Kreisfläche
        double radius = 4.5;

        double kreisflaeche = Math.PI * radius * radius;

        // Strings kombinieren
        string vorname = "Hallo ";
        string nachricht = "Welt";

        string kompletterText = vorname + nachricht;

        Console.WriteLine("Addition: " + ergebnis);
        Console.WriteLine("Kreisfläche: " + kreisflaeche);
        Console.WriteLine(kompletterText);

        Console.ReadLine();
    }
}

Aufgabe 5

Aufgabenstellung

Erstelle ein Programm, das den Namen, das Alter und das Lieblingsessen eines Nutzers speichert.

Gib diese Informationen in einem Satz aus.

Beispiel:

„Hallo Max, du bist 25 Jahre alt und dein Lieblingsessen ist Pizza.“

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        string name = "Max";
        int alter = 25;
        string lieblingsessen = "Pizza";

        Console.WriteLine("Hallo " + name +
                          ", du bist " + alter +
                          " Jahre alt und dein Lieblingsessen ist " +
                          lieblingsessen + ".");

        Console.ReadLine();
    }
}

Zusammenfassung

In diesen Übungen wurden folgende Grundlagen verwendet:

  • Variablen deklarieren
  • Variablen initialisieren
  • Datentypen verwenden
  • Berechnungen durchführen
  • Strings kombinieren
  • Konsolenausgaben erzeugen
Hinweis
   Prüfungstipp

```

```mediawiki

Übungen: Datentypen in C#

Aufgabe 1: Ganzzahl

Aufgabenstellung

Deklariere und initialisiere eine Ganzzahl mit dem Wert 25.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        int zahl = 25;

        Console.WriteLine(zahl);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
int Datentyp für ganze Zahlen
zahl Variablenname
25 gespeicherter Wert
Hinweis
   Merke

Aufgabe 2: Zeichenkette

Aufgabenstellung

Deklariere eine Zeichenkette namens begruessung und initialisiere sie mit dem Text:

"Hallo Welt!"

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        string begruessung = "Hallo Welt!";

        Console.WriteLine(begruessung);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
string Datentyp für Texte
begruessung Variablenname
"Hallo Welt!" gespeicherter Text
Hinweis
   Info

Aufgabe 3: Gleitkommazahl

Aufgabenstellung

Deklariere eine Variable vom Typ double, nenne sie pi und initialisiere sie mit dem Wert 3.14159.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        double pi = 3.14159;

        Console.WriteLine(pi);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
double Datentyp für Kommazahlen
pi Variablenname
3.14159 gespeicherte Kommazahl
Hinweis
   Merke

Aufgabe 4: Boolescher Wert

Aufgabenstellung

Deklariere eine boolesche Variable istFeiertag und initialisiere sie mit dem Wert true.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        bool istFeiertag = true;

        Console.WriteLine(istFeiertag);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
bool Datentyp für Wahrheitswerte
true wahr
false falsch
Hinweis
   Info

Zusatz: Compiler und Interpreter

Was ist ein Compiler?

Ein Compiler übersetzt den kompletten Quellcode eines Programms in Maschinensprache oder Zwischencode.

Die Übersetzung findet vor der Programmausführung statt.

Ablauf eines Compilers

Quellcode → Compiler → ausführbares Programm

Vorteile eines Compilers

  • schnelle Programmausführung
  • Fehler werden häufig vor der Ausführung erkannt
  • optimierter Maschinencode möglich
  • Programme können ohne Quellcode verteilt werden

Nachteile eines Compilers

  • Änderungen benötigen erneutes Kompilieren
  • Plattformabhängigkeit möglich
  • Übersetzung kann Zeit benötigen

Typische Compiler-Sprachen

Sprache Beschreibung
C klassische Compilersprache
C++ objektorientierte Erweiterung von C
Rust moderne Systemprogrammiersprache
Go kompilierte Sprache von Google
C# kompiliert zunächst in IL-Zwischencode

Was ist ein Interpreter?

Ein Interpreter liest den Quellcode Zeile für Zeile ein und führt ihn direkt aus.

Es wird meist keine separate ausführbare Datei erzeugt.

Ablauf eines Interpreters

Quellcode → Interpreter → direkte Ausführung

Vorteile eines Interpreters

  • schnelle Tests möglich
  • Änderungen sofort ausführbar
  • oft einfacher zu debuggen
  • plattformunabhängiger

Nachteile eines Interpreters

  • häufig langsamer
  • Fehler treten oft erst während der Ausführung auf
  • höherer Ressourcenverbrauch möglich

Typische Interpreter-Sprachen

Sprache Beschreibung
Python weit verbreitete Interpretersprache
JavaScript Browser-Skriptsprache
PHP Webentwicklung
Ruby interpretiert bzw. VM-basiert

Unterschied zwischen Compiler und Interpreter

Compiler Interpreter
Übersetzt komplettes Programm vorher Führt Code direkt aus
meist schneller meist langsamer
erstellt häufig EXE-Datei oft keine EXE-Datei
Fehler oft vor Ausführung sichtbar Fehler häufig erst zur Laufzeit sichtbar
Änderungen benötigen Neukompilierung Änderungen sofort testbar
Hinweis
   Prüfungstipp

Zusammenfassung

In diesen Aufgaben wurden folgende Datentypen verwendet:

  • int → ganze Zahlen
  • string → Texte
  • double → Kommazahlen
  • bool → Wahrheitswerte

Zusätzlich wurden die Unterschiede zwischen Compilern und Interpretern behandelt. ```

```mediawiki

Übungen: Datentypen in C#

Aufgabe 1: Ganzzahl

Aufgabenstellung

Deklariere und initialisiere eine Ganzzahl mit dem Wert 25.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        int zahl = 25;

        Console.WriteLine(zahl);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
int Datentyp für ganze Zahlen
zahl Variablenname
25 gespeicherter Wert
Hinweis
   Merke

Aufgabe 2: Zeichenkette

Aufgabenstellung

Deklariere eine Zeichenkette namens begruessung und initialisiere sie mit dem Text:

"Hallo Welt!"

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        string begruessung = "Hallo Welt!";

        Console.WriteLine(begruessung);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
string Datentyp für Texte
begruessung Variablenname
"Hallo Welt!" gespeicherter Text
Hinweis
   Info

Aufgabe 3: Gleitkommazahl

Aufgabenstellung

Deklariere eine Variable vom Typ double, nenne sie pi und initialisiere sie mit dem Wert 3.14159.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        double pi = 3.14159;

        Console.WriteLine(pi);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
double Datentyp für Kommazahlen
pi Variablenname
3.14159 gespeicherte Kommazahl
Hinweis
   Merke

Aufgabe 4: Boolescher Wert

Aufgabenstellung

Deklariere eine boolesche Variable istFeiertag und initialisiere sie mit dem Wert true.

Lösung

using System;

class Program
{
    static void Main(string[] args)
    {
        bool istFeiertag = true;

        Console.WriteLine(istFeiertag);

        Console.ReadLine();
    }
}

Erklärung

Code Bedeutung
bool Datentyp für Wahrheitswerte
true wahr
false falsch
Hinweis
   Info

Zusatz: Compiler und Interpreter

Was ist ein Compiler?

Ein Compiler übersetzt den kompletten Quellcode eines Programms in Maschinensprache oder Zwischencode.

Die Übersetzung findet vor der Programmausführung statt.

Ablauf eines Compilers

Quellcode → Compiler → ausführbares Programm

Vorteile eines Compilers

  • schnelle Programmausführung
  • Fehler werden häufig vor der Ausführung erkannt
  • optimierter Maschinencode möglich
  • Programme können ohne Quellcode verteilt werden

Nachteile eines Compilers

  • Änderungen benötigen erneutes Kompilieren
  • Plattformabhängigkeit möglich
  • Übersetzung kann Zeit benötigen

Typische Compiler-Sprachen

Sprache Beschreibung
C klassische Compilersprache
C++ objektorientierte Erweiterung von C
Rust moderne Systemprogrammiersprache
Go kompilierte Sprache von Google
C# kompiliert zunächst in IL-Zwischencode

Was ist ein Interpreter?

Ein Interpreter liest den Quellcode Zeile für Zeile ein und führt ihn direkt aus.

Es wird meist keine separate ausführbare Datei erzeugt.

Ablauf eines Interpreters

Quellcode → Interpreter → direkte Ausführung

Vorteile eines Interpreters

  • schnelle Tests möglich
  • Änderungen sofort ausführbar
  • oft einfacher zu debuggen
  • plattformunabhängiger

Nachteile eines Interpreters

  • häufig langsamer
  • Fehler treten oft erst während der Ausführung auf
  • höherer Ressourcenverbrauch möglich

Typische Interpreter-Sprachen

Sprache Beschreibung
Python weit verbreitete Interpretersprache
JavaScript Browser-Skriptsprache
PHP Webentwicklung
Ruby interpretiert bzw. VM-basiert

Unterschied zwischen Compiler und Interpreter

Compiler Interpreter
Übersetzt komplettes Programm vorher Führt Code direkt aus
meist schneller meist langsamer
erstellt häufig EXE-Datei oft keine EXE-Datei
Fehler oft vor Ausführung sichtbar Fehler häufig erst zur Laufzeit sichtbar
Änderungen benötigen Neukompilierung Änderungen sofort testbar
Hinweis
   Prüfungstipp

Zusammenfassung

In diesen Aufgaben wurden folgende Datentypen verwendet:

  • int → ganze Zahlen
  • string → Texte
  • double → Kommazahlen
  • bool → Wahrheitswerte

Zusätzlich wurden die Unterschiede zwischen Compilern und Interpretern behandelt. ```