Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. void odczyt_z_excela(float *tabArgumentow,float *tabWartosci)
  2. {
  3.  
  4.  
  5.  
  6. char nazwa[100];
  7.  
  8. float x, y;
  9. int ilekomorekwpliku = 0;
  10. FILE* plik;
  11. printf("Podaj nazwe pliku z ktorego chcesz wczytac dane:");
  12. scanf("%s", &nazwa);
  13. if ((plik = fopen(strcat(nazwa, ".csv"), "r")) == NULL)
  14. {
  15. system("CLS");
  16. printf("Blad odczytu pliku\nBrak pliku lub plik otwarty w innym programie\nZamknij plik i uruchom ponownie program\n");
  17. system("PAUSE");
  18. system("EXIT");
  19. }
  20. while (feof(plik) == 0)
  21. {
  22. ilekomorekwpliku++;
  23. fscanf(plik, "%f;%f\n", &x, &y);
  24.  
  25. }
  26. printf("W pliku jest %d komorek\n", ilekomorekwpliku);
  27. rewind(plik);
  28.  
  29. if ((tabArgumentow = (float*)malloc(ilekomorekwpliku * sizeof(double))) == NULL)
  30. {
  31. printf("Blad odczytu tablicy argumentow\n");
  32. }
  33. if ((tabWartosci = (float*)malloc(ilekomorekwpliku * sizeof(float))) == NULL)
  34. {
  35. printf("Blad odczytu tablicy wartosci\n");
  36. }
  37.  
  38. for (int i = 0; i < ilekomorekwpliku; i++)
  39. {
  40. fscanf(plik, "%f;%f\n", &x, &y);
  41. tabWartosci[i] = x;
  42. tabArgumentow[i] = y;
  43.  
  44. }
  45. printf("Zostały odczytane dane z %s\n", nazwa);
  46.  
  47. for (int i = 0; i < ilekomorekwpliku; i++)
  48. {
  49.  
  50. printf("%f ; %f\n", tabArgumentow[i], tabWartosci[i]);
  51.  
  52. }
  53.  
  54. free(tabWartosci);
  55. free(tabArgumentow);
  56.  
  57.  
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement