https://docs.google.com/document/d/1B-kSmTuQu89YU8XOb72IlyRp3PL1NpzvBGdLt4UxfcE/edit
#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;
void beolvasas(vector< vector<int> > &jegyek);
int beolvas_egesz(const string uzenet, const string hibauzenet);
int beolvas_jegy(const int i, const int j);
bool fel11a(const vector< vector<int> > jegyek);
bool csupaotos(const int i, const vector< vector<int> > jegyek);
int main(){
vector< vector<int> > jegyek; // a két záró kacsacsõr közé mindenképp kell a szóköz
bool van;
beolvasas(jegyek);
van = fel11a(jegyek);
if (van){
cout << "Van" << endl;
} else {
cout << "Nincs" << endl;
}
return 0;
}
bool fel11a(const vector< vector<int> > jegyek){
int i=0;
int n=jegyek.size();
while(i<=(n-1) && !csupaotos(i, jegyek)){
i++;
}
return i<=n-1;
}
bool csupaotos(const int i, const vector< vector<int> > jegyek){
int j=0;
int m=jegyek[i].size();
while((j<=(m-1)) && (jegyek[i][j]==5)){
j++;
}
return j>(m-1);
}
void beolvasas(vector< vector<int> > &jegyek){
int n, m;
n = beolvas_egesz("Hany diak: ", "Nem negativ kell!");
m = beolvas_egesz("Hany targy: ", "Nem negativ kell!");
jegyek.resize(n);
for(int i=0; i<n; i++){
jegyek[i].resize(m);
for(int j=0; j<m; j++){
jegyek[i][j] = beolvas_jegy(i,j);
}
}
}
int beolvas_egesz(const string uzenet, const string hibauzenet){
int n;
bool hiba;
do{
cout << uzenet;
string str;
cin >> str;
n = atoi(str.c_str()); // atof float-hoz
hiba = n==0 && str!="0" || n<0;
if(hiba){
cout << hibauzenet << endl;
}
} while(hiba);
return n;
}
int beolvas_jegy(const int i, const int j){
int n;
bool hiba;
do{
cout << i+1 << ". diak " << j+1 << ". jegye: ";
string str;
cin >> str;
n = atoi(str.c_str()); // atof float-hoz
hiba = n==0 && str!="0" || n<1 || n>5;
if(hiba){
cout << "1 es 5 kozott kell lennie!" << endl;
}
} while(hiba);
return n;
}