Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- struct sygnal
- {
- float poczatek;
- float interwal;
- float koniec;
- float *tablica;
- };
- int main()
- {
- float a , b , c , delta, x1, x2, x;
- int poczatek, koniec, interwal, i;
- struct sygnal pierwszy;
- printf ("Podaj 3 wspolczynniki rownania kwadratowego w postaci ax^2 + bx + c = 0\n");
- printf ("a = ");
- scanf ("%f",&a);
- printf ("b = ");
- scanf ("%f",&b);
- printf ("c = ");
- scanf ("%f",&c);
- delta = (b*b) - 4*a*c;
- printf ("delta = %f\n", delta);
- if (delta == 0)
- {
- x1=-b/2*a;
- printf ("Rownanie ma jedno rozwiazanie.\nx = %f\n", x1);
- }
- else if (delta>0)
- {
- x1=(-b-sqrt(delta))/2*a;
- x2=(-b+sqrt(delta))/2*a;
- printf ("Rownanie ma dwa rozwiazania.\nx1 = %f\nx2 = %f\n", x1, x2);
- }
- else if (delta<0)
- printf("Rownanie nie ma rozwiazan\n\n");
- printf("Masz funkcje w postaci f(x) = %gx^2 + %gx + %g\n",a,b,c);
- printf("Podaj poczatek przedzialu\nx = ");
- scanf("%f", &pierwszy.poczatek);
- printf("Podaj koniec przedzialu\nx = ");
- scanf("%f", &pierwszy.koniec);
- printf("Podaj interwal\nx = ");
- scanf("%f", &pierwszy.interwal);
- if (pierwszy.interwal < 0)
- {
- printf("Podales interwal < 0, biore jego modul\n");
- pierwszy.interwal=-pierwszy.interwal;
- }
- tablica = (float*)malloc((koniec-poczatek)/interwal* sizeof(float));
- for(x = pierwszy.poczatek, i = 0 ; x + pierwszy.interwal, i++; x <= pierwszy.koniec)
- {
- pierwszy.tablica[i]=a*x*x +b*x +c;
- }
- printf ("%f",pierwszy.koniec);
- for(x = pierwszy.poczatek, i = 0 ; x + pierwszy.interwal, i++; x <= pierwszy.koniec)
- {
- printf("x = %g y = %g\n",x , pierwszy.tablica[i]);
- }
- free (tablica);
- system("pause");
- return 0;
- };
Add Comment
Please, Sign In to add comment