From 1fb719c611728494f5d07a1aacb3afb9491970e7 Mon Sep 17 00:00:00 2001 From: Roman Khaliavka Date: Thu, 6 Mar 2025 14:49:51 +0000 Subject: [PATCH] du2 --- du2/program.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/du2/program.c b/du2/program.c index cfd9c3d..31392b6 100644 --- a/du2/program.c +++ b/du2/program.c @@ -6,32 +6,29 @@ int read_double(double *num){ char line[LINE_SIZE]; - if (!fgets(line, LINE_SIZE, stdin)){ + if(!fgets(line, LINE_SIZE, stdin)){ return 0; } char *endptr; *num = strtod(line, &endptr); if(endptr == line || (*endptr != '\0' && *endptr != '\n')){ - return 0; + return -1; } return 1; } -int main() { +int main(){ double x, coef, result = 0.0; int coef_index = 0; + int read_status; - if(!read_double(&x)){ + if((read_status = read_double(&x)) != 1){ printf("Chyba: Nepodarilo sa nacitat hodnotu x.\n"); return 1; } - while (1){ - if(!read_double(&coef)){ - printf("Nepodarilo sa nacitat polynom na %d mieste.\n", coef_index + 1); - return 1; - } + while((read_status = read_double(&coef)) == 1){ if(coef_index == 0){ result = coef; }else{ @@ -40,6 +37,11 @@ int main() { coef_index++; } + if(read_status == -1){ + printf("Nepodarilo sa nacitat polynom na %d mieste.\n", coef_index + 1); + return 1; + } + if(coef_index == 0){ printf("Chyba: Nepodarilo sa nacitat ziadne koeficienty.\n"); return 1;