Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Macierze, wczytywanie z pliku

Ostatnio zmodyfikowano 2017-05-22 13:49
Autor Wiadomość
MłodyPatol
Temat założony przez niniejszego użytkownika
Macierze, wczytywanie z pliku
» 2017-05-22 10:57:19
Czemu program Visual Studio 2017 nie chce mi poprawnie skompilować tego kodu? Jestem pewien że dane do plików podaje dobrze.

#pragma warning (disable: 4996)
#include "stdafx.h"
#pragma warning (disable: 4244)
#include <stdio.h>
#include <stdlib.h>
int n, m, n1, m1;

int main()
{
int i, j, k;

FILE *FileIn, *FileOut, *FileIn1;
FileIn = fopen("input.txt", "r");
FileOut = fopen("output.txt", "w");
FileIn1 = fopen("input1.txt", "r");
fscanf(FileIn, "%d %d", &n, &m);
fscanf(FileIn1, "%d %d", &n1, &m1);
//printf("%d, %d, %d, %d", n, m, n1, m1);
//****************************************
int **a, **b, **c;
//***************************************
a = (int**)malloc(n * sizeof(int*));
for (i = 0; i < n; i++)
{
a = (int*)malloc(m * sizeof(int));
}
//***************************************
b = (int**)malloc(n1 * sizeof(int*));
for (i = 0; i < n1; i++)
{
b = (int*)malloc(m1 * sizeof(int));
}
//**************************************
c = (int**)malloc(n * sizeof(int*));
for (i = 0; i < n; i++)
{
c = (int*)malloc(m * sizeof(int));
}
//*********************************
//*********************************

for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
{
fscanf(FileIn, "%d", &a[j]);
}
}
//***********************************
for (i = 0; i < n1; i++)
{
for (j = 0; j < m1; j++)
{
fscanf(FileIn1, "%d", &b[j]);
}
}



//*******************
//*******************
//*******************
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
c[j] = 0;


for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
for (k = 0; k < m; k++)
{
c[j] = c[j] + a[k] * b[k][j];


}
printf("%d :", c[j]);
fprintf(FileOut, "%d ", c[j]);
}
printf("\n");
fprintf(FileOut, "\n");
}






}


+ Kolejne pytanie w stylu znajdz błąd  (mnozenie macierzy przez wektor)


void mnozenie(int **tab, int *wek, int *wekN, int i, int j, int n, int m)
{

for (i = 0; i<n; i++)
{
wekN = 0;
for (j = 0; j<m; j++)
{
wekN += wek[j] * tab[j];
}
}
}
P-161410
mateczek
» 2017-05-22 13:49:22
[cpp]tutaj kod[/cpp]
najpierw poprawnie sformatuj kod. Pytanie czy twoim celem jest program w "c" czy w "c++"
P-161414
« 1 »
  Strona 1 z 1