Update cv1/program.c

This commit is contained in:
Viktor Daniv 2024-10-03 21:18:50 +00:00
parent 31ef57975b
commit ba83fa2883

View File

@ -2,7 +2,7 @@
#include <string.h>
#include <ctype.h>
// Функція для перевірки еквівалентності символів за правилами Hack3r scr1pt
// Funkcia na porovnanie znakov podľa pravidiel Hack3r scr1pt
int isHack3rEquivalent(char c1, char c2) {
char table[256] = {0};
table['0'] = 'o'; table['o'] = '0';
@ -23,7 +23,7 @@ int isHack3rEquivalent(char c1, char c2) {
return table[(unsigned char)c1] == c2;
}
// Функція для перевірки, чи міститься шуканий рядок у назві
// Funkcia na zistenie, či sa reťazec hľadanej suroviny nachádza v názve jedla
int isHack3rMatch(const char *name, const char *search) {
int name_len = strlen(name);
int search_len = strlen(search);
@ -49,22 +49,22 @@ int main() {
printf("Zadaj hladanu surovinu:\n");
fgets(search, sizeof(search), stdin);
search[strcspn(search, "\n")] = 0; // видаляємо символ нового рядка
search[strcspn(search, "\n")] = 0; // odstráni znak nového riadku
printf("Zadaj jedalny listok:\n");
while (fgets(name, sizeof(name), stdin)) {
// Якщо не вдається зчитати ціну або назву, зупиняємо програму
// Ak sa nepodarí načítať cenu alebo názov, prerušte načítanie
if (fgets(price, sizeof(price), stdin) == NULL || strlen(name) == 0) {
printf("Chyba pri nacitani.\n");
break;
}
// видаляємо символи нового рядка
// odstráni znaky nového riadku
name[strcspn(name, "\n")] = 0;
price[strcspn(price, "\n")] = 0;
// Перевіряємо наявність шуканого рядка
// Skontroluje, či názov obsahuje hľadanú surovinu
if (isHack3rMatch(name, search)) {
printf("%s\n%s\n", name, price);
}
@ -73,4 +73,4 @@ int main() {
printf("Nacitanych %d poloziek.\n", count);
return 0;
}
}