3.3 Logische Operatoren
- Aufgabe 1: Schreiben Sie ein Programm, das prüft, ob eine eingegebene Zahl zwischen 1 und 100 (inklusive) liegt.
- Aufgabe 2: Implementieren Sie ein einfaches Login-System, das Benutzername und Passwort überprüft (mit vordefinierten korrekten Werten).
Aufgabe 1:
#include <stdbool.h>
#include <stdio.h>
bool checkIfBetween1And100(int num);
int main(void) {
int num;
printf("Geben Sie bitte die Ganzzahl ein: \n");
scanf("%d", &num);
if (checkIfBetween1And100(num)) {
printf("Die Zahl %d ist in dem Zahlenbereich 1 bis 100 \n", num);
} else printf ("Die Zahl %d liegt ausserhalb des Zahlenbereichs 1 bis 100 \n", num);
return 0;
}
bool checkIfBetween1And100(const int num) {
return num >= 1 && num <= 100;
}
Aufgabe 2:
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
bool checkUsername(const char* inputUsername, const char* username);
bool checkPassword(const char* inputPassword, const char* password);
int main(void) {
for (int i = 0; i < 3; i++) {
const char* password = "Test";
const char* username = "Niklas";
char inputPassword[50];
char inputUsername[50];
printf("Geben Sie bitte Ihren Username ein: \n");
scanf("%49s", inputUsername);
printf("Geben Sie bitte Ihr Passwort ein: \n");
scanf("%49s", inputPassword);
if (checkUsername(inputUsername, username) && checkPassword(inputPassword, password)) {
printf("Login erfolgreich!\n");
return 0;
}
printf("Falscher Username oder Passwort! Verbleibende Versuche: %d\n", 2-i);
}
printf("Zu viele fehlgeschlagene Versuche!\n");
return 1;
}
bool checkUsername(const char* inputUsername, const char* username) {
return strcmp(inputUsername, username) == 0;
}
bool checkPassword(const char* inputPassword, const char* password) {
return strcmp(inputPassword, password) == 0;
}
No Comments