Eines der bekanntesten Konzepte ist die Schleife, mit der man einen Block von Anweisungen mehrmals wiederholen kann. Stellen Sie sich vor, Sie müssen die Fläche eines Quadrats für 1000 unterschiedliche Seitenlängen berechnen. Man könnte die Formel für die Berechnung der Fläche nehmen und für jede Seitenlänge manuell die Kalkulation durchführen. Das wäre aber zeitintensiv und unproduktiv. Mit einer Schleife kann man die Formel so schreiben, dass die Operationen für jede Seitenlänge automatisch durchgeführt werden.
Eine For-Schleife ist eine Kontrollstruktur, mit der man einen Block von Anweisungen mehrmals wiederholen kann (solange die Laufbedingung erfüllt wird). Mit einer For-Schleife kann man z.B. ein Array durchlaufen oder mathematische Operationen für unterschiedliche Parameter durchführen.
For (Initialisierung; Laufbedingung; Inkrement)
{
Anweisungen;
}
Initialisierung: Dieser Schritt wird als erstes ausgeführt und nur ein Mal. Hier werden die Anfangswerte unserer Kontroll-Variablen definiert.
Laufbedingung: Wenn die Laufbedingung Wahr ist wird der Block mit den Anweisungen ausgeführt.
Inkrement: Hier werden die Kontroll-Variablen nach jedem Durchlauf aktualisiert.
0
40
100
99
100
101
i*i
i*2
i³
Im Folgenden sehen Sie den Programmiercode, in welchem mit Hilfe einer For-Schleife die Fläche eines Quadrats für die folgenden Seitenlängen: 40 cm, 41 cm, 42 cm, …, 100 cm berechnet werden kann. Wählen Sie die korrekten Werte aus.
#include <stdio.h>
int main()
{
int i, area;
for(i = ; i < ; i++)
{
area = ;
printf("Die Fläche des Quadrats mit Seitenlänge %d cm ist: %d cm^2\n", i, area);
}
return 0;
}
zu
Auswahl 1
Initialisierungswert der Variable i falsch. Hier muss die Seitenlänge des ersten Quadrats ausgewählt werden.
zu
Auswahl 2
Laufbedingung falsch. Hier muss die Seitenlänge des letzten Quadrats ausgewählt werden. Beachten Sie, dass der Block nur ausgeführt wird, wenn i kleiner als der ausgewählte Wert ist.
zu
Auswahl 3
Berechnungsformel der Quadratfläche falsch.
Aufgabe 2 von 3
FUNKTIONEN
Funktionen werden in der Informatik benutzt, um einen Block von Anweisungen mehrmals an verschiedenen Stellen des Programms zu verwenden. Somit werden die Programme kürzer, organisierter, fehlerresistenter und sind leichter zu lesen. Funktionen sind der wesentliche Bestandteil des modularen Programmierens, eines der meistverbreiteten Programmierparadigmen unserer Zeit. Wenn eine Funktion definiert wird, kann man sie immer wieder mit ihrem Namen aufrufen, ohne dass man die Anweisungen noch einmal schreiben muss.
Rückgabewert: Der Datentyp des Wertes, den die Funktion zurückgibt.
Funktionsname: Der Name der Funktion, mit dem man sie später aufrufen kann.
Argumente: Übergabewerte, die die Funktion braucht, um die Anweisungen ausführen zu können.
sqrt(a*a+b*b)
sqrt(2*a+2*b)
sqrt(a*a+b)
Im Folgenden sehen Sie den Programmiercode, in welchem eine Funktion, die als Eingabe die Länge und Breite eines Rechtecks bekommt, die Diagonallänge zurückgibt. Rufen Sie die Funktion in der main() auf und geben Sie das Ergebnis im Konsolenfenster aus.
#include <stdio.h>
#include <math.h>
double diagonale(double a, double b)
{
double diag;
diag = ;
return diag;
}
int main()
{
double ergebnis;
ergebnis = diagonale(2.5,3.3);
printf("Die diagonale ist: %lf",ergebnis);
return 0;
}
zu
Auswahl 1
Falsche Formel für die Berechnung der Diagonale.
Aufgabe 3 von 3
MATRIZEN
Eine Matrix wird in der Informatik benutzt, um eine Gruppe von Daten strukturiert zu speichern und auszugeben. Damit Nutzer*innen eine Matrix mit Werten befüllen können brauchen sie eine Schnittstelle über die sie mit dem Programm kommunizieren können. Die bekannteste dieser Schnittstellen ist die Konsole und wird als erstes in den Studiengängen der Informatik gelehrt. Die Funktion mit der Nutzer*innen dem Programm Werte übergeben können, ist die scanf:
scanf(Format, Variable) z.B. scanf("%d", wert1);
Um das Ergebnis des Programms in der Konsole auszugeben, wird die Funktion printf benutzt:
printf(Format, Variable) z.B. printf("Der Wert ist: %d", wert1);
%d ist ein Platzhalter für die Variable nach dem Komma und steht für einen Dezimalwert der eingelesen beziehungsweise ausgegeben wird.
Ordnen Sie die Elemente so an, dass ein Programm, welches zwei 2 x 2 Matrizen mit Werten befüllt und sie dann addiert, entsteht. Das Ergebnis wird in einer dritten 2 x 2 Matrix abgespeichert und im Konsolenfenster ausgegeben.
#include <stdio.h>
Schritt 1: Es werden die Bibliotheken eingefügt, die das Programm braucht.
int main()
{
int A[2][2];
int B[2][2];
int C[2][2];
int i, j;
Schritt 2: Die Main-Funktion öffnet und die Variablen werden deklariert.
printf("\nGeben Sie die Elemente der Matrix A ein: \n");
for(i=0; i<2; i++)
{
for(j=0; j<2; j++)
{
scanf("%d", &A[i][j]);
}
}
Schritt 3: Die Elemente der Matrix A werden eingegeben.