Untitled
unknown
plain_text
a year ago
3.9 kB
9
Indexable
#define _CRT_SECURE_NO_WARNINGS #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_STR 64 #define MAX_USERS 10 typedef struct User { char izena[MAX_STR]; char pasahitza[MAX_STR]; int erabiltzaile_mota; // 0 user, 1 admin, 2 guest char email[MAX_STR]; int id; } User_S; User_S datubasea[] = {{"admin", "admin", 1, "admin@mondragon.edu", 1}, {"idazkaritza", "11111", 0, "idaz@gmailcom", 2}, {"joseba", "qwerty", 2, "jaagirre@mondragon.edu", 3}, {"irati", "ydwdaj", 2, "iagirre@mondragon.edu", 4}, {"jon", "1231d", 2, "jon@mondragon.edu", 5}}; void erabiltzaileak_bistaratu(User_S datubasea[], int kop_users); void erabiltzailea_bat_bistaratu(User_S erabiltzailea); void erabiltzaile_mota_bistaratu(User_S erabiltzailea); void itxaron(); User_S erabiltzaile_datuak_eskatu(); int konprobatu_user(User_S erabiltzaile_bat); void menua_denda(int erabil_mota, User_S erabiltzaile_bat); void agur_mezua(); int main(int num, char *args[]) { // ALDAGAIAK int logeatua = 0; User_S user1; int saiakerak = 3; int kop_users = 5; erabiltzaileak_bistaratu(datubasea, kop_users); itxaron(); do { user1 = erabiltzaile_datuak_eskatu(); logeatua = konprobatu_user(user1); saiakerak--; system("cls"); } while (!logeatua && saiakerak > 0); menua_denda(logeatua, user1); // bukaera agur_mezua(); return 0; } void erabiltzaileak_bistaratu(User_S datubasea[], int kop_users) { int i; for (i = 0; i < kop_users; i++) { erabiltzailea_bat_bistaratu(datubasea[i]); } } void erabiltzailea_bat_bistaratu(User_S erabiltzailea) { printf("%d. %s | %s | %s ", erabiltzailea.id, erabiltzailea.izena, erabiltzailea.email, erabiltzailea.pasahitza); erabiltzaile_mota_bistaratu(erabiltzailea); } void erabiltzaile_mota_bistaratu(User_S erabiltzailea) { int mota = erabiltzailea.erabiltzaile_mota; switch (mota) { case 0: printf("| Permission: user\n"); break; case 1: printf("| Permission: admin\n"); break; case 2: printf("| Permission: guest\n"); break; } }; void itxaron() { char kar = '0'; printf("\n-----------------------------\n"); printf("Sakatu return jarraitzeko....\n"); printf("-----------------------------\n"); kar = getchar(); system("cls"); } User_S erabiltzaile_datuak_eskatu() { User_S erabiltzaile_bat; char str[MAX_STR]; printf("================Subasta aplikazioan sartzeko logina================\n"); printf("Username:"); fgets(str, MAX_STR, stdin); str[strlen(str) - 1] = '\0'; strcpy(erabiltzaile_bat.izena, str); printf("Password:"); fgets(str, MAX_STR, stdin); str[strlen(str) - 1] = '\0'; strcpy(erabiltzaile_bat.pasahitza, str); return erabiltzaile_bat; } int konprobatu_user(User_S erabiltzaile_bat) { int izenak_berdinak; int pasahitza_berdinak; int login = 0; izenak_berdinak = !strcmp(erabiltzaile_bat.izena, "admin"); if (izenak_berdinak) { pasahitza_berdinak = !strcmp(erabiltzaile_bat.pasahitza, "qwerty"); if (pasahitza_berdinak) { login = true; } } return login; } void menua_denda(int erabil_mota, User_S erabiltzaile_bat) { if (erabil_mota) { printf("Kaixo %s, administratzaile bezala logeatuta zaude\n", erabiltzaile_bat.izena); } else { printf("Ez duzu pasahitza asmatu\n"); } } void agur_mezua() { char kar = '0'; printf("Sakatu return bukatzeko...."); kar = getchar(); }
Editor is loading...
Leave a Comment