86 lines
1.4 KiB
C
86 lines
1.4 KiB
C
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
#include <assert.h>
|
|
#include <math.h>
|
|
#include <ctype.h>
|
|
#define LINE_SIZE 150
|
|
int main(){
|
|
char riadok[LINE_SIZE];
|
|
memset(riadok, 0,LINE_SIZE);
|
|
char* r;
|
|
float r2;
|
|
int stop = 0;
|
|
float mass[LINE_SIZE];
|
|
int i = 0;
|
|
float x = 0;
|
|
float vysl = 0;
|
|
int counter = -1;
|
|
float h = 0;
|
|
int pos = -1;
|
|
//float p = 0;
|
|
while(stop == 0){
|
|
r = fgets(riadok,LINE_SIZE,stdin);
|
|
if(feof(stdin)){
|
|
stop = 1;
|
|
r2 = atof(riadok);
|
|
mass[i] = r2;
|
|
i++;
|
|
break;
|
|
|
|
}
|
|
pos++;
|
|
if (r == NULL || !isdigit(*r)) {
|
|
//printf("%d", *r);
|
|
if(*r == 10){
|
|
stop = 1;
|
|
}
|
|
/*if(feof(stdin)){
|
|
stop = 1;
|
|
r2 = atof(riadok);
|
|
mass[i] = r2;
|
|
i++;
|
|
}*/
|
|
else{
|
|
if(pos > 0){
|
|
printf("Nepodarilo sa nacitat polynom na %d mieste.\n", pos);
|
|
return 0;
|
|
}
|
|
else{
|
|
printf("Nepodarilo sa nacitat zaklad x\n");
|
|
return 0;
|
|
}
|
|
}
|
|
}
|
|
r2 = atof(riadok);
|
|
mass[i] = r2;
|
|
//printf("%.2f\n", r2);
|
|
i++;
|
|
//printf("%d\n", i);
|
|
}
|
|
x = mass[0];
|
|
vysl = x;
|
|
//printf("x>>>>>%1.f\n", x);
|
|
if(i != 3){
|
|
for(int j = 1; j < i - 1; j++){
|
|
h = mass[j];
|
|
//printf("h>>> %1.f\n", h);
|
|
if(counter == -1){
|
|
vysl = x * h + mass[j + 1];
|
|
//printf("vysl>>> %1.f\n", vysl);
|
|
counter++;
|
|
}
|
|
else{
|
|
if(j != i - 2){
|
|
vysl = x * vysl + mass[j + 1];
|
|
//printf("vysl22>>>>> %1.f\n", vysl);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else{
|
|
vysl = mass[1];
|
|
}
|
|
printf("Vysledok je: %.2f\n", vysl);
|
|
}
|