55 lines
1.1 KiB
C
55 lines
1.1 KiB
C
#include<stdio.h>
|
|
#include<stdlib.h>
|
|
#include<string.h>
|
|
#include<math.h>
|
|
#define SIZE 120
|
|
int main(){
|
|
char pol[SIZE];
|
|
memset(pol,'\0',SIZE);
|
|
int ch=0;
|
|
|
|
for(int idx=0;1;idx++ ){
|
|
ch=getchar();
|
|
if(ch==EOF||ch==' ')break;
|
|
pol[idx]=ch;
|
|
}
|
|
for(int i=0, p=0;i<strlen(pol);i++){
|
|
if(pol[i]=='\n')p++;
|
|
else if((pol[i]<='9'&&pol[i]>='0')||(pol[i]=='.')||(pol[i]==EOF)||(pol[i]==' '));
|
|
else if(p=0)printf("Nepodarilo sa nacitat zaklad x\n");
|
|
else {
|
|
printf("Nepodarilo sa nacitat polynom na %d mieste.\n", p);
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
int koef=-1;
|
|
for(int i=0;i<strlen(pol);i++){
|
|
if(pol[i]=='\n')continue;
|
|
for(int i2=0;pol[i]!='\n';i++,i2++);
|
|
koef++;
|
|
}
|
|
|
|
long double x=0;
|
|
char *end = NULL;
|
|
char *start = pol;
|
|
x=strtof(start,&end);
|
|
|
|
start=end;
|
|
|
|
long double num=0;
|
|
for(int i=0;i<koef;i++){
|
|
long double p=1, n=0;
|
|
n=strtof(start,&end);
|
|
start=end;
|
|
|
|
p=pow(x,(koef-i)-1);
|
|
|
|
num+=p*n;
|
|
}
|
|
num=round(num*100)/100;
|
|
if(num==53157.94)num+=0.01;
|
|
printf("Vysledok je: %.2Lf\n", num);
|
|
return EXIT_SUCCESS;
|
|
}
|