Mi a következő programnak a specifikációja? Bemenet, kimenet, előfeltétel, utófeltétel.
#include <iostream>
using namespace std;
int main()
{
int nevdb;
int versenydb;
bool rossz;
cout << "Tanulok szama: "<< endl;
do
{
cout << endl;
cout << "Hany tanulo vett reszt a versenyeken: ";
cin >> nevdb;
rossz=nevdb<1;
if(rossz)
{
cout << "Nem jo! A tanulok szamanak minimum 1-nek kell lennie." << endl;
}
} while(rossz);
string nevek[nevdb];
int kulonbsegek[nevdb];
for (int i=0; i<nevdb; i++)
{
cout <<"Kerem az "<< i+1<<". versenyzo nevet: ";
cin >> nevek[i];
}
cout << endl;
cout << "Versenyszamok szama: " << endl;
do
{
cout << endl;
cout << "Hany darab versenyszam volt: ";
cin >> versenydb;
rossz=versenydb<1;
if(rossz)
{
cout << "A versenyszamok szamanak minimum 1-nek kell lennie."<< endl;
}
} while(rossz);
string versenyszamok[versenydb];
for (int i=0; i<versenydb; i++)
{
cout <<"Kerem az "<< i+1<<". versenyszam nevet: ";
cin >> versenyszamok[i];
}
int minpontszam[versenydb];
cout << endl;
cout << "Minimum pontszamok: "<< endl;
for (int i=0; i<versenydb; i++)
{
do
{
cout <<"Kerem a(z) "<< versenyszamok[i]<<" minimum pontszamat: ";
cin >> minpontszam[i];
rossz=minpontszam[i]<0 || minpontszam[i]>50;
if (rossz)
{
cout << "A minimalis pontszamnak 0 es 50 kozott kell lennie! " << endl;
}
} while(rossz);
}
cout << endl;
cout << "Eredmenyek: " << endl;
int eredmenyek[versenydb][nevdb];
for (int i=0; i<versenydb; i++)
{
for (int j=0; j<nevdb; j++)
{
do
{
cout << "Hany pontot ert el, "<< nevek[j] <<" a(z) "<< versenyszamok[i] <<" szamban: ";
cin >> eredmenyek[i][j];
rossz=eredmenyek[i][j]<-1 || eredmenyek[i][j]>100;
if (rossz)
{
cout << "Az eredmenynek -1 es 100 kozott kell lennie! " << endl;
}
} while(rossz);
}
}
bool ertekeles;
for (int i=0; i<nevdb; i++)
{
ertekeles=true;
for (int j=0; j<versenydb; j++)
{
if(eredmenyek[j][i] == -1)
{
ertekeles=false;
kulonbsegek[i]=-200;
}
if(eredmenyek[j][i] < minpontszam[j])
{
ertekeles=false;
kulonbsegek[i]=-200;
}
}
if (ertekeles)
{
int maximum=1;
int minimum=1000;
for(int j=0; j<versenydb; j++)
{
if (eredmenyek[j][i] > maximum)
{
maximum=eredmenyek[j][i];
}
if (eredmenyek[j][i] < minimum)
{
minimum=eredmenyek[j][i];
}
}
int kulonbseg = maximum - minimum;
kulonbsegek[i] = kulonbseg;
}
}
int max_kulonb = -10;
for (int i=0; i<nevdb; i++)
{
if(kulonbsegek[i] > max_kulonb)
{
max_kulonb=kulonbsegek[i];
}
}
cout << endl;
cout << "****************************************************"<< endl;
cout << endl;
cout << "A legszelsosegesebb pontok elerok: ";
for (int i=0; i<nevdb; i++)
{
if(kulonbsegek[i]==max_kulonb)
{
cout << nevek[i] <<" ";
}
}
cout << endl;
return 0;
}
Te lehetsz az első, aki segít a kérdezőnek!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!