Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- /*
- X x --> 0
- X - --> 1
- - x --> 2
- - - --> 3
- */
- float *vstupy(int pocet)
- {
- float *vystup = (int *) malloc(sizeof(int) * pocet);
- for(int x=1; x<=pocet; x++)
- {
- printf("Zadej cislo %d :",x);
- scanf("%f", &vystup[(x-1)]);
- }
- return vystup;
- }
- float *kvadr(float a, float b, float c)
- {
- float *koreny = (int *) malloc(sizeof(int) * 3);
- float D=(b*b)-(4*a*c);
- float X=(-b+sqrt(D))/(2*a);
- float x=(-b-sqrt(D))/(2*a);
- float R1=(a*X*X)+(b*X)+c;
- float R2=(a*x*x)+(b*x)+c;
- if(R1==0 && R2==0)
- {
- koreny[2]=0;
- }
- if(R1==0 && R2!=0)
- {
- koreny[2]=1;
- }
- if(R1!=0 && R2==0)
- {
- koreny[2]=2;
- }
- if(R1!=0 && R2!=0)
- {
- koreny[2]=3;
- }
- koreny[0] = X;
- koreny[1] = x;
- return koreny;
- }
- int main()
- {
- float *vysledky;
- float *zadano;
- zadano = vstupy(3);
- vysledky = kvadr(zadano[0],zadano[1],zadano[2]);
- if(vysledky[2]==0){printf("%f - %f",vysledky[0],vysledky[1]);}
- if(vysledky[2]==1){printf("%f - X",vysledky[0]);}
- if(vysledky[2]==2){printf("X - %f",vysledky[1]);}
- if(vysledky[2]==3){printf("X - X");}
- free(vysledky);
- free(zadano);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement