Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <stdlib.h>
- #include<stdio.h>
- #include <math.h>
- FILE *fd;
- int main()
- {
- double W1[10][10], W2[10][10], W3[10][10], M1[10], M2[10], M3;
- int n, m, k;
- if (!(fd = fopen("dane.txt", "r")))
- {
- printf("Blad wczytywania danych");
- exit(0);
- }
- fscanf(fd, "%d", &n);
- fscanf(fd, "%d", &m);
- fscanf(fd, "%d", &k);
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < k; j++)
- {
- W3[i][j] = 0;
- }
- }
- printf("Macierz 1\n");
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < m; j++)
- {
- fscanf(fd, "%lf", &W1[i][j]);
- printf("%lf ", W1[i][j]);
- }
- printf("\n");
- }
- printf("Macierz 2\n");
- for (int i = 0; i < m; i++)
- {
- for (int j = 0; j < k; j++)
- {
- fscanf(fd, "%lf", &W2[i][j]);
- printf("%lf ", W2[i][j]);
- }
- printf("\n");
- }
- printf("Wektor 1\n");
- for (int j = 0; j < k; j++)
- {
- fscanf(fd, "%lf", &M1[j]);
- printf("%lf ", M1[j]);
- }
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < k; j++)
- {
- for (int l = 0; l < m; l++)
- {
- W3[i][j] = W3[i][j] + W1[i][l] * W2[l][j];
- }
- }
- }
- printf("\n");
- printf("---------------------Zad1 mnozenie macierzy------------------------\n\n");
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < k; j++)
- {
- printf("%lf ", W3[i][j]);
- }
- printf("\n");
- }
- double min = INFINITY;
- double max = (-1)*INFINITY;
- int q, w, e, r;
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < k;j++)
- {
- if (W3[i][j] > max)
- {
- max = W3[i][j];
- q = i; w = j;
- }
- if (W3[i][j] < min)
- {
- min = W3[i][j];
- e = i; r = j;
- }
- }
- }
- printf("------------------Zad 2 Wyszukiwanie najwiekszych i najmiejszych wartosci W3 -------------\n\n");
- printf(" Najmniejsza wartosc macierzy to %lf znajduje sie w na pozcji rownej n= %d k= %d \n Natomiast najwieksza wartosc to %lf znajduje sie na pozycjoi n= %d k= %d \n\n", min, e, r, max, q, w);
- printf("--------------------Zad 3 iloczyn skalarny dla wiersza Z makS W3---------------\n\n");
- M3 = 0;
- for (int i = 0; i < k;i++)
- {
- M3 = M3 + W3[q][i] * M1[i];
- }
- printf("%lf\n", M3);
- printf("\n------------------------------Zad4 Iloczyn W3 i M1--------------------\n\n");
- for (int i = 0;i < k; i++)
- {
- M2[i] =0;
- }
- for (int i = 0; i < n; i++)
- {
- for (int j = 0;j < k; j++)
- {
- M2[i] = M2[i] + W3[i][j] * M1[j];
- }
- }
- for (int i = 0;i < n;i++)
- {
- printf(" %lf \n ", M2[i]);
- }
- printf("\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement