Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include "stdafx.h"
- #include <string.h>
- #include <stdlib.h>
- #include<iostream>
- #define MAX 30
- int bin2int(char* tab)
- {
- int liczba = 0, i = 0, cyfry = 0; // liczba-zamieniana z binarnej na na int, cyfry- ilosc cyfr w wierszu
- while (tab[i] != '\0')
- cyfry++;
- for (i = 0; i < cyfry; i++) {
- liczba = liczba + tab[i] * (2 ^ (cyfry - 1 - i));
- }
- return liczba;
- }
- int main()
- {
- int n, m, i, wyswietl;
- char tytul[MAX];
- FILE* plik;
- printf("Podaj nazwe pliku do wczytania\n");
- scanf("%s", tytul);
- if ((plik = fopen(tytul, "r")) == NULL) {
- printf("Nie udalo sie otworzyc pliku do wczytania\n");
- exit(0);
- }
- printf("Podaj liczbe wierszy\n");
- scanf_s("%d", &m);
- printf("Podaj liczbe kolumn\n");
- scanf_s("%d", &n);
- char **tab = (char**)malloc(m * sizeof(*tab));
- for (i = 0; i < m; i++) {
- tab[i] = (char*)malloc(n * sizeof(tab));
- }
- fscanf(plik, "%s", tab[i]);
- while (!feof(plik)) {
- fscanf(plik, "%c", tab[i]);
- i++;
- }
- for (i = 0; i < m - 1; i++) {
- wyswietl = bin2int(tab[i]);
- printf("%d\n", wyswietl);
- }
- for (i = 0; i<m; i++)
- free(tab[i]); //zwalnianie pamięci
- free(tab);
- printf("Koniec programu\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement