Vyriešené :)) len mi tam chýba ten výpis prvočísiel... ak by mal niekto návrh ako na to sem s ním :))
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <vector>
using namespace std;
int main() {
ifstream vstup;
ofstream vystup;
string riadok;
int riadky, stlpce, i = 0, x = 0, j, cislo;
vector < vector < int > > matica1;
vector < vector < int > > matica2;
vstup.open("vstup.txt", ios::in);
if (vstup.is_open()) {
vstup >> riadky >> stlpce;
// Dynamicke vytvorenie matic
matica1.resize(riadky);
for (size_t i = 0 ; i < riadky; i++) matica1[i].resize(stlpce);
matica2.resize(riadky);
for (size_t i = 0 ; i < riadky; i++) matica2[i].resize(stlpce);
// Nacitanie matic
while (getline(vstup, riadok)) {
if (riadok == "") continue;
else {
istringstream iss(riadok);
// Prva matica
if (i < riadky) {
j = 0;
while (iss >> cislo) {
matica1[i][j++] = cislo;
}
i++;
}
// Druha matica
else {
j = 0;
while (iss >> cislo) {
matica2[x][j++] = cislo;
}
x++;
}
}
}
vstup.close();
vystup.open("vystup.txt", ios::out);
// Zapiseme udaje
vystup << "Nacitana matica A: \n";
for (i = 0; i < riadky; i++) {
for (j = 0; j < stlpce; j++) {
vystup << matica1[i][j] << " ";
}
vystup << "\n";
}
vystup << "\nNacitana matica B: \n";
for (i = 0; i < riadky; i++) {
for (j = 0; j < stlpce; j++) {
vystup << matica2[i][j] << " ";
}
vystup << "\n";
}
vystup << "\nSucet matic A a B: \n";
for (i = 0; i < riadky; i++) {
for (j = 0; j < stlpce; j++) {
vystup << matica1[i][j] + matica2[i][j] << " ";
}
vystup << "\n";
}
vystup.close();
}
else cout << "Subor sa nepodarilo otvorit.";
return 0;
}