From d1e0fa3d547d119d8278c3f5e30693e3f8e36b02 Mon Sep 17 00:00:00 2001 From: Anzhelika Nikolaieva Date: Tue, 10 Oct 2023 17:50:46 +0000 Subject: [PATCH] Delete 'cv3/ program.c' --- cv3/ program.c | 108 ------------------------------------------------- 1 file changed, 108 deletions(-) delete mode 100644 cv3/ program.c diff --git a/cv3/ program.c b/cv3/ program.c deleted file mode 100644 index a0fe0d4..0000000 --- a/cv3/ program.c +++ /dev/null @@ -1,108 +0,0 @@ -#include -#include -#include - -#define STACK_SIZE 10 - -struct stack_glavny { - float data[STACK_SIZE]; - int size; -}; - - -void initialize(struct stack_glavny* stack) { - stack->size = -1; -} - - -int push(struct stack_glavny* stack, float value) { - if (stack->size < STACK_SIZE - 1) { - stack->size++; - stack->data[stack->size] = value; - return true; - } else { - return false; - } -} - - -int pop(struct stack_glavny* stack, float* result) { - if (stack->size >= 0) { - *result = stack->data[stack->size]; - stack->size--; - return true; - } else { - return false; - } -} - - -int operation_insert_result(struct stack_glavny* stack, char operation) { - float operand1, operand2, result; - if (pop(stack, &operand2) && pop(stack, &operand1)) { - switch (operation) { - case '+': - result = operand1 + operand2; - break; - case '-': - result = operand1 - operand2; - break; - case '*': - result = operand1 * operand2; - break; - case '/': - if (operand2 == 0) { - printf("Chyba: Delenie nulou.\n"); - return false; - } - result = operand1 / operand2; - break; - default: - printf("Chyba: Neplatná operácia.\n"); - return false; - } - if (!push(stack, result)) { - printf("Chyba: Zásobník je plný.\n"); - return false; - } - return true; - } else { - printf("Chyba: Nedostatok operandov pre operáciu.\n"); - return false; - } -} - -int main() { - struct stack_glavny stack; - initialize(&stack); - - char input[20]; - - while (1) { - if (!fgets(input, sizeof(input), stdin)) { - printf("Chyba pri citani vstupu.\n"); - break; - } - - float value; - - if (sscanf(input, "%f", &value) == 1) { - if (!push(&stack, value)) { - printf("Chyba: Zásobník je plný.\n"); - break; - } - } else if (input[0] == '+' || input[0] == '-' || input[0] == '*' || input[0] == '/') { - if (!operation_insert_result(&stack, input[0])) { - break; - } - } else { - printf("Chyba: Neplatný vstup.\n"); - break; - } - for (int i = 0; i <= stack.size; i++) { - printf("%.2f ", stack.data[i]); - } - printf("\n"); - } - return 0; -} \ No newline at end of file