Add content for kontrollstrukturen
This commit is contained in:
parent
a9c4fba8fa
commit
71c0710ba1
|
@ -1,12 +1,15 @@
|
|||
---
|
||||
<!--
|
||||
title: Kontrollstrukturen
|
||||
description: Folien für Kontrollstrukture in Java
|
||||
description: Folien für Kontrollstrukturen in Programmieren 1
|
||||
url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||
---
|
||||
header: Programmieren 1 **Tutorium**
|
||||
_header: ""
|
||||
footer: Henri Burau und Eva Meinen
|
||||
-->
|
||||
|
||||
# **Kontrollstrukturen**
|
||||
# Kontrollstrukturen
|
||||
|
||||
## Sequenz
|
||||
## **Sequenz**
|
||||
Alle Statements in einem Quelltext werden der Reihe nach ausgeführt.
|
||||
|
||||
**Statements** Durch `;` getrennter Quelltext
|
||||
|
@ -19,7 +22,7 @@ int x = 123 + x; //2. Statement
|
|||
|
||||
---
|
||||
|
||||
## Selektion
|
||||
## **Selektion**
|
||||
Es wird selektiert welche Statements ausgeführt werden.
|
||||
|
||||
### if
|
||||
|
@ -81,15 +84,90 @@ switch(wochentag) {
|
|||
case "Sonntag":
|
||||
System.out.printf("Es ist Wochenende 🎉");
|
||||
break;
|
||||
default:
|
||||
System.out.printf("Diesen Tag gibt es nicht");
|
||||
break;
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Iteration
|
||||
## **Iteration**
|
||||
Es können Statements wiederholt werden. Iterative Kontrollstrukturen werden
|
||||
Schleifen genannt. Schleifen können folgende Eigenschaften haben:
|
||||
|
||||
* **Kopfgesteuert** Die Bedingung der Schleife wird im Kopf überprüft.
|
||||
* **Fußgesteuert** Die Bedingung der Schleife wird im Fuß überprüft.
|
||||
* **Abweisend** Die Schleife wird nicht durchlaufen.
|
||||
* **Positiv bedingt** Die Schleife wird durchgeführt solange die Bedingung wahr ist.
|
||||
* **Negativ bedingt** Die Schleife wird durchgeführt solange die Bedingung falsch ist.
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
### for
|
||||
|
||||
* **Kopfgesteuert**
|
||||
* **Positiv bedingt**
|
||||
|
||||
```java
|
||||
for(int i = 0; i < 10; i++) {
|
||||
System.out.printf("%d%n", i);
|
||||
}
|
||||
|
||||
// Oder in der kurzen Schreibweise:
|
||||
for(int i = 0; i < 10; i++) System.out.printf("%d%n", i);
|
||||
```
|
||||

|
||||
|
||||
---
|
||||
|
||||
### while
|
||||
|
||||
* **Kopfgesteuert**
|
||||
* **Positiv bedingt**
|
||||
|
||||
```java
|
||||
int i = 0;
|
||||
while(i < 10) {
|
||||
System.out.printf("%d%n", i);
|
||||
i++;
|
||||
}
|
||||
```
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
### do-while
|
||||
|
||||
* **Fußgesteuert**
|
||||
* **Positiv bedingt**
|
||||
|
||||
```java
|
||||
int i = 0;
|
||||
do {
|
||||
System.out.printf("%d%n", i);
|
||||
i++;
|
||||
} while(i < 10)
|
||||
```
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## **Aufgaben**
|
||||
|
||||
1) Schreibe eine Methode `public static void divide(int quotient, int dividend)` welche das Ergebnis der Division auf die Konsole ausgibt. Achte darauf, dass nicht durch 0 geteilt wird und ggebe eine Warnung über die Nulldivision auf der Konsole aus.
|
||||
|
||||
2) Schreibe eine Methode `public static void calculator(char operator, int number1, int number2)` welche das Ergebnis der Operation auf der Konsole ausgibt. Die durchgeführte Operation hängt von dem Wert der Variable `operator` ab.
|
||||
Bsp: `calculator('*', 3, 4)` schreibt auf die Konsole: `3 * 4 = 12`
|
||||
|
||||
---
|
||||
|
||||
3) Schreibe eine Methode `public static void ggT(int a, int b)` welche den ggT von zwei Zahlen berechnet. Benutze dafür den Algorithmus von [Euklid](https://de.wikipedia.org/wiki/Euklidischer_Algorithmus#Iterative_Variante).
|
||||
|
||||
4) Schreibe eine Methode `public static void printAscii()` welche die Ascii-Werte der Zahlen von 0 bis 122 ausgibt.
|
||||
|
||||
Kontrollstrukturen V1F60
|
||||
* Sequenz
|
||||
* Selektion V2F81
|
||||
* Wiederholung (Iteration)
|
||||
|
|
Loading…
Reference in New Issue