From b444c8f35634c09945d1c92941463d7c47ab522c Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Fri, 1 Oct 2021 16:47:56 +0000 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB(?= =?UTF-8?q?=D0=B0)=20=D0=BD=D0=B0=20'cv1/program.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cv1/program.c | 107 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 104 insertions(+), 3 deletions(-) diff --git a/cv1/program.c b/cv1/program.c index befec1c..d1271b1 100644 --- a/cv1/program.c +++ b/cv1/program.c @@ -1,6 +1,107 @@ #include +#include +#include +#include +#include + +struct unit{ + char fixedName[50]; + char brokenName[50]; + char price[50]; +}; + +char* fixWord(char* string){ + int size = (int)strlen(string); + string[strlen(string)-1] = '\0'; + + for(int i = 0; i < size; i++){ + if(isdigit(string[i])){ + switch(string[i]){ + case '1': + string[i] = 'i'; + break; + case '2': + string[i] = 'z'; + break; + case '3': + string[i] = 'e'; + break; + case '4': + string[i] = 'a'; + break; + case '5': + string[i] = 's'; + break; + case '6': + string[i] = 'b'; + break; + case '7': + string[i] = 't'; + break; + case '8': + string[i] = 'b'; + break; + case '9': + string[i] = 'q'; + break; + case '0': + string[i] = 'o'; + } + } + else{ + string[i] = tolower(string[i]); + } + } + + return string; +} + +bool wordComparison(char* fixedName, char* ingredient){ + int size = (int)strlen(fixedName); + int check; + + if(strstr(fixedName, ingredient)) + return true; + + return false; +} + +char* fixNumber(char* number){ + char* finalNumber = (char*)calloc(50, sizeof(char)); + + float tempNumber = atof(number); + tempNumber = round(tempNumber*100)/100; + gcvt(tempNumber, round(tempNumber)+2, finalNumber); + + return finalNumber; +} int main(){ - - return 0; -} + struct unit orders[50]; + int numberOfOrder = 0; + int totalAmount = 0; + char* ingredient = (char*)calloc(50, sizeof(char)); + printf("Zadaj hladanu surovinu:\n"); + fgets(ingredient, 50, stdin); + ingredient = fixWord(ingredient); + + printf("Zadaj jedalny listok:\n"); + for(numberOfOrder = 0; fgets(orders[numberOfOrder].brokenName, 50, stdin); numberOfOrder++){ + if(orders[numberOfOrder].brokenName[0] == '\n') totalAmount--; + fgets(orders[numberOfOrder].price, 50, stdin); + strcpy(orders[numberOfOrder].fixedName, orders[numberOfOrder].brokenName); + fixWord(orders[numberOfOrder].fixedName); + strcpy(orders[numberOfOrder].price, fixNumber(orders[numberOfOrder].price)); + totalAmount++; + } + + for(int i = 0; i < numberOfOrder; i++){ + if(wordComparison(orders[i].fixedName, ingredient)){ + printf("%s", orders[i].brokenName); + printf("%s\n", orders[i].price); + } + } + printf("Nacitanych %d poloziek.\n", totalAmount); + + return 0; +} \ No newline at end of file