Advertisement
Guest User

Untitled

a guest
Mar 18th, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1.  
  2. #include <stdio.h>
  3. #include "stdafx.h"
  4. #include <string.h>
  5. #include <stdlib.h>
  6. #include<iostream>
  7.  
  8. #define MAX 30
  9.  
  10. int bin2int(char* tab)
  11. {
  12. int liczba = 0, i = 0, cyfry = 0; // liczba-zamieniana z binarnej na na int, cyfry- ilosc cyfr w wierszu
  13. while (tab[i] != '\0')
  14. cyfry++;
  15.  
  16. for (i = 0; i < cyfry; i++) {
  17. liczba = liczba + tab[i] * (2 ^ (cyfry - 1 - i));
  18. }
  19. return liczba;
  20. }
  21.  
  22.  
  23.  
  24. int main()
  25. {
  26.  
  27. int n, m, i, wyswietl;
  28. char tytul[MAX];
  29. FILE* plik;
  30. printf("Podaj nazwe pliku do wczytania\n");
  31. scanf("%s", tytul);
  32.  
  33. if ((plik = fopen(tytul, "r")) == NULL) {
  34. printf("Nie udalo sie otworzyc pliku do wczytania\n");
  35. exit(0);
  36. }
  37.  
  38.  
  39. printf("Podaj liczbe wierszy\n");
  40. scanf_s("%d", &m);
  41. printf("Podaj liczbe kolumn\n");
  42. scanf_s("%d", &n);
  43.  
  44.  
  45. char **tab = (char**)malloc(m * sizeof(*tab));
  46. for (i = 0; i < m; i++) {
  47. tab[i] = (char*)malloc(n * sizeof(tab));
  48. }
  49.  
  50.  
  51. fscanf(plik, "%s", tab[i]);
  52. while (!feof(plik)) {
  53. fscanf(plik, "%c", tab[i]);
  54. i++;
  55. }
  56. for (i = 0; i < m - 1; i++) {
  57. wyswietl = bin2int(tab[i]);
  58. printf("%d\n", wyswietl);
  59. }
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66. for (i = 0; i<m; i++)
  67. free(tab[i]); //zwalnianie pamięci
  68. free(tab);
  69.  
  70. printf("Koniec programu\n");
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement