diff --git a/cv1/program.c b/cv1/program.c index 930017d..79b4f8d 100644 --- a/cv1/program.c +++ b/cv1/program.c @@ -1,22 +1,21 @@ #include -#include int main() { - char ch; + int ch; int line_count = 0; while ((ch = getchar()) != EOF) { if (ch == '\n') { putchar('\n'); line_count++; } else { - if (isprint(ch)) { - putchar((ch >= 'a' && ch <= 'z') ? (ch - 32) : ((ch >= 'A' && ch <= 'Z') ? (ch + 32) : ch)); - } - else { - putchar(ch); + if (!((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z')) && !(ch >= 32 && ch <= 126)) { + continue; // Skip control characters and non-printable characters } + putchar((ch >= 'a' && ch <= 'z') ? (ch - 32) : (ch + 32)); } } + printf("\nLines count: %d\n", line_count); + return 0; } \ No newline at end of file