Изменил(а) на 'cv1/program.c'
This commit is contained in:
parent
9b1dd42443
commit
b444c8f356
107
cv1/program.c
107
cv1/program.c
@ -1,6 +1,107 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
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;
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user