Aufgaben: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „<span class="mw-ui-button mw-ui-progressive">⬅️ Datentypen</span>“ |
Keine Bearbeitungszusammenfassung |
||
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
[[Datentypen|<span class="mw-ui-button mw-ui-progressive">⬅️ Datentypen</span>]] | [[Datentypen|<span class="mw-ui-button mw-ui-progressive">⬅️ Datentypen</span>]] | ||
```mediawiki | |||
= Übungen: Deklaration und Initialisierung in C# = | |||
__TOC__ | |||
= 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 == | |||
<syntaxhighlight lang="csharp"> | |||
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(); | |||
} | |||
} | |||
</syntaxhighlight> | |||
---- | |||
= 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 == | |||
<syntaxhighlight lang="csharp"> | |||
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(); | |||
} | |||
} | |||
</syntaxhighlight> | |||
---- | |||
= 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 == | |||
<syntaxhighlight lang="csharp"> | |||
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(); | |||
} | |||
} | |||
</syntaxhighlight> | |||
---- | |||
= 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 <code>Math.PI</code> | |||
* Strings können mit <code>+</code> verbunden werden | |||
== Lösung == | |||
<syntaxhighlight lang="csharp"> | |||
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(); | |||
} | |||
} | |||
</syntaxhighlight> | |||
---- | |||
= 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 == | |||
<syntaxhighlight lang="csharp"> | |||
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(); | |||
} | |||
} | |||
</syntaxhighlight> | |||
---- | |||
= Zusammenfassung = | |||
In diesen Übungen wurden folgende Grundlagen verwendet: | |||
* Variablen deklarieren | |||
* Variablen initialisieren | |||
* Datentypen verwenden | |||
* Berechnungen durchführen | |||
* Strings kombinieren | |||
* Konsolenausgaben erzeugen | |||
{{Box|Prüfungstipp| | |||
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
```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
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 |
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 |
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 |
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 |
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 |
Prüfungstipp
Zusammenfassung
In diesen Aufgaben wurden folgende Datentypen verwendet:
int→ ganze Zahlenstring→ Textedouble→ Kommazahlenbool→ 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 |
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 |
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 |
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 |
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 |
Prüfungstipp
Zusammenfassung
In diesen Aufgaben wurden folgende Datentypen verwendet:
int→ ganze Zahlenstring→ Textedouble→ Kommazahlenbool→ Wahrheitswerte
Zusätzlich wurden die Unterschiede zwischen Compilern und Interpretern behandelt. ```
