Advertisement
Guest User

sdbget

a guest
Dec 16th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. #include <locale.h>
  5. #include <stddef.h>
  6.  
  7. int main()
  8. {
  9. setlocale(LC_ALL,"polish");
  10. FILE *dane;
  11. dane=fopen("liczby.txt","r+");
  12. int i=0,dl_tab=1,j;
  13. float tab[500],wynik1,wynik2;
  14. if(dane==NULL)
  15. {
  16. printf("W tym katalogu nie ma talkiego pliku\n");
  17. exit(EXIT_FAILURE);
  18. }
  19. else
  20. {
  21. for(i=0;i<500;i++)
  22. {
  23. if(feof(dane)) break; /*koniec pliku -> koniec pobierania danych*/
  24. fscanf(dane,"%f",&tab[i]);
  25. //printf("argument %d ma wartosc %.0f\n",i+1,tab[i]);
  26. dl_tab++;
  27. }
  28. // printf("Dlugosc tab wynosi: %d\n",dl_tab);
  29. }
  30. fclose(dane);
  31. for (j=0; j<=dl_tab;j+=3)
  32. {
  33. float a,b,c,delta;
  34. if(tab[j+1] == '\0')
  35. {
  36. a=tab[j];
  37. b=tab[0];
  38. c=tab[1];
  39. }
  40. else if (tab[j+2] == '\0')
  41. {
  42. a=tab[j];
  43. b=tab[j+1];
  44. c=tab[0];
  45. }
  46. else
  47. {
  48. a=tab[j];
  49. b=tab[j+1];
  50. c=tab[j+2];
  51. }
  52. printf("Dla rownania ax^2+bx+c\n a= %f \n b= %f\n c= %f \n",a,b,c);
  53. delta=b*b-(4*(a*c));
  54. printf("delta= %f\n",delta);
  55. float wynik1, wynik2;
  56. if (delta<0)
  57. printf("\n\nDelta mniejsza od zera; rownanie nia ma rozwiazania");
  58. else if (delta==0)
  59. printf("Rozwiazanie jest rowne %f\n\n",wynik1=(-1*b)/2);
  60. else
  61. {
  62. wynik1=(-1*b-delta)/2;
  63. wynik2=(-1*b+delta)/2;
  64. printf("Rozwiazanie ronwnania: \n x1 = %f \n x2 = %f\n\n", wynik1, wynik2);
  65. }
  66. }
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement