From 77aab3380342dd722d89070e56ee72b5a8ead3b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Vl=C4=8Dek?= Date: Thu, 19 Feb 2026 18:18:16 +0100 Subject: [PATCH] A1_DU_Attempt2 --- a1/program.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/a1/program.c b/a1/program.c index 5a132bb..4d9bbed 100644 --- a/a1/program.c +++ b/a1/program.c @@ -1,6 +1,57 @@ + +#include #include +#include +#include + +int GetTypZnaku(int vstup); int main() { - return 0; + int vstup = 0; + int pocetRiadkov = 0; + while (1) + { + //helper lok. premeny + bool mozeBytPrinted = false; + int vysChar = 0; + + //scanning faza programu + vstup = getchar(); + + if (vstup == -1) { break;} //ak EOF (End Of File), resp. koniec suboru + if (vstup == '\n') // ak NewLine char, resp. koniec riadku + { + pocetRiadkov += 1; + mozeBytPrinted = false; + } + + //ak vstup == malemu pismenu + if (GetTypZnaku(vstup) == 0) + { + vysChar = toupper(vstup); + } + //ak vstup == velke pismeno + else if (GetTypZnaku(vstup) == 1) + { + vysChar = tolower(vstup); + } + //ak NIE je to pismeno (a zaroven NIE koniec riadku - resp. NewLine character) + else if (GetTypZnaku(vstup) == 2 && vstup != '\n') + { + mozeBytPrinted = false; + } + + //output charakteru (ak je teda charakter...) + if (mozeBytPrinted) { putchar(vysChar);} + } + printf("%d", pocetRiadkov); + return 0; } +int GetTypZnaku(int vstup) +{ + if (islower(vstup) != 0) { return 0;} + if (isupper(vstup) != 0) { return 1;} + if (isalpha(vstup) == 0) { return 2;} + return -1; +} \ No newline at end of file