Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- void mnozeniemacierz(int wynik[][3], int macierz[][3], int macierz2[][3])
- {
- int a,b,c;
- for (a = 0; a < 3; a++)
- {
- for (b = 0; b < 3; b++)
- {
- wynik[a][b] = 0;
- for (c = 0; c < 3; c++)
- {
- wynik[a][b] = macierz[a][c]*macierz2[c][b]+wynik[a][b];
- }
- }
- }
- }
- void wydrukmacierz(int *wynik, int rzad, int kol)
- {
- int i,j;
- for (i = 0; i < rzad; i++)
- {
- for (j = 0; j < kol; j++)
- {
- printf("%d", wynik[i*kol+j]);
- }
- printf("\n");
- }
- }
- void konwertmacierz(int macierz[][3], int macierz2[][3], char* q)
- {
- FILE *macierze;
- if ((macierze = fopen(q,"r")) == NULL)
- {
- printf("Nie mozna otworzyc pliku wejsciowego %s!\n", *q);
- exit(1);
- }
- int i,j,tmp;
- for (i = 0; i < 3; i++)
- {
- for (j = 0 ; j < 3; j++)
- {
- fscanf(macierze, "%d", &tmp);
- if ( i < 3)
- {
- macierz[i][j] = tmp;
- }
- else
- {
- macierz2[i-3][j] = tmp;
- }
- }
- }
- }
- void saveToFile (int* wynik, int rzad, int kol)
- {
- FILE *wyj;
- if ((wyj = fopen("wyj.txt", "a")) == NULL)
- {
- printf("Nie mozna otworzyc pliku wyjsciowego! \n");
- exit(1);
- }
- int i,j;
- for (i = 0; i < rzad; i++)
- {
- for (j = 0; j < kol; j++)
- {
- fprintf(wyj, "%d", wynik[i*kol+j]);
- }
- fprintf(wyj, "\n");
- }
- fprintf(wyj, "\n");
- fclose(wyj);
- }
- int main(int argc, char* argv[]) {
- int macierz[3][3]; // pierwsza macierz z notatnika
- int macierz2[3][3]; // druga macierz z notatnika
- FILE *wyj;
- if ((wyj = fopen("wyj.txt", "w")) == NULL) {
- printf("Nie mozna otworzyc pliku wyjsciowego\n");
- exit(1);
- }
- fprintf(wyj,"");
- fclose(wyj);
- konwertmacierz(macierz, macierz2, argv[2]);
- int wynik[3][3];
- mnozeniemacierz(wynik, macierz, macierz2);
- printf("B.\n");
- wydrukmacierz(&wynik[0][0], 3, 3);
- saveToFile(&wynik[0][0], 3, 3);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement