- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- Fogkefe: elektromos vagy manuális?
- gban: Ingyen kellene, de tegnapra
- Lalikiraly: Astra kalandok @ Harmadik rész
- hdanesz: 50. Debrecen Nagydíj - nemzetközi salakmotorverseny - életemben másodjára
- Magga: PLEX: multimédia az egész lakásban
Új hozzászólás Aktív témák
-
Tuostein
csendes tag
Sziasztok!
Van egy beadandóm és valamiért nem akar lefutni, hibát nem dob ki, csak simán kiakad! CodeBlocks-ban írom... tudom van jobb is... a debuggal arra jutottam hogy megakad a keres fgv-ben az if-es sorban. legalábbis oda rakta a sárga nyilat a debug..
A feladat: "Egy N résztvevőjű kutyaszépségversenyen M különböző szempont szerint pontoznak minden kutyát, s az eredményt a KUTYA(N,M) mátrix tartalmazza. Minden szempont alapján maximum MAX(I) pont adható (nem negatív egész szám). Az összetett versenyből automatikusan kiesik az a kutya, amely valamelyik kategóriában nem éri el a kategóriánként megadott alsó ponthatárt (MIN(I)). Készítsen C++ programot, amely megadja azt a kategóriát, ahol a legkevesebb kieső volt!"
És a kód:
#include <iostream>
using namespace std;
void beolvas(int&, int&, int*, int*, int**);
void keres(int&, int&, int*, int*, int**);
void kiir(int&, int&, int*);
int main()
{
int n,m;
cout << "Kutyaszepsegverseny" << endl << endl;
int *min, *max, *k;
int** kutya;
beolvas(n,m,max,min,kutya);//ellenőrzött beolvasás
k = new int[m];
keres(n,m,k,min,kutya);//legkevesebb kieső keresése
kiir(n,m,k);//az összes legkevesebb kieső kiírása
return 0;
}
void beolvas(int &n, int &m, int* max, int* min, int** kutya){
bool rossz=true;
string temp;
do {
cout << "Hany kutya szerepel (1-...): ";
cin >> n;
if (cin.fail()) {
cout << "Nem szamot adott meg!" << endl << "Adjon meg egy pozitiv egesz szamot!" << endl;
rossz=true;
}else {
rossz= (n<1);
if (rossz) {
cout << "Helytelen erteket adott meg!" << endl << "Adjon meg egy pozitiv egesz szamot!" << endl;
}
}
cin.clear(); getline (cin,temp,'\n');
}while (rossz);//kutyák számának (n) ellenőrzött beolvasása
do {
cout << endl <<"Hany szempontot pontoznak (1-...): ";
cin >> m;
if (cin.fail()) {
cout << "Nem szamot adott meg!" << endl << "Adjon meg egy pozitiv egesz szamot!" << endl;
rossz=true;
}else {
rossz= (m<1);
if (rossz) {
cout << "Helytelen erteket adott meg!" << endl << "Adjon meg egy pozitiv egesz szamot!" << endl;
}
}
cin.clear(); getline (cin,temp,'\n');
cout << endl;
}while (rossz);//szempontok számának (m) ellenőrzött beolvasása
max = new int[m];
for (int i=1; i<=m; i++){
do{
cout << i << ". szempont maximum ponthatara (2-...): "; cin >> max[i-1];
if (cin.fail()) {
cout << "Nem szamot adott meg!" << endl << "Adjon meg egy kettonel nagyobb egesz szamot!" << endl;
rossz=true;
}else {
rossz= (max[i-1]<2);
if (rossz) {
cout << "Helytelen erteket adott meg!" << endl << "Adjon meg egy kettonel nagyobb egesz szamot!" << endl;
}
}
cin.clear(); getline (cin,temp,'\n');
}while (rossz);
}//szempontok maximum ponthatára
min = new int[m];
for (int i=1; i<=m; i++){
do{
cout << i << ". szempont minimum ponthatara (0-" << max[i-1]-1 << "): "; cin >> min[i-1];
if (cin.fail()) {
cout << "Nem szamot adott meg!" << endl << "Adjon meg egy nem negativ szamot (0-" << max[i-1]-1 << ")!" << endl;
rossz=true;
}else {
rossz= ((min[i-1]<0) || (min[i-1]>=max[i-1]));
if (rossz) {
cout << "Helytelen erteket adott meg!" << endl << "Adjon meg egy nem negativ szamot (0-" << max[i-1]-1 << ")!" << endl;
}
}
cin.clear(); getline (cin,temp,'\n');
}while (rossz);
}//szempontok minimum ponthatára
kutya = new int*[n];
for (int i=1; i<=n; i++){
kutya[i-1] = new int[m];
}
for (int i=1; i<=n; i++){
for (int j=1; j<=m; j++){
do{
cout << i << ". kutya " << j << ". szempontra kapott pontja (maximum: " << max[j-1] << "): "; cin >> kutya[i-1][j-1];
if (cin.fail()) {
cout << "Nem szamot adott meg!" << endl << "Adjon meg egy nem negativ szamot (0-" << max[j-1] << ")!" << endl;
rossz=true;
}else {
rossz= ((kutya[i-1][j-1]<0) || (kutya[i-1][j-1]>max[j-1]));
if (rossz) {
cout << "Helytelen erteket adott meg!" << endl << "Adjon meg egy nem negativ szamot (0-" << max[j-1] << ")!" << endl;
}
}
cin.clear(); getline (cin,temp,'\n');
}while (rossz);
}
}
}
void keres(int &n, int &m, int* k, int* min, int** kutya){
for (int j=1; j<=m; j++){
k[j-1]=0;
for (int i=1; i<=n; i++){
if (kutya[i-1][j-1]<=min[j-1]) {
k[j-1]=k[j-1]+1;
}
}
}
}
void kiir(int &n, int &m, int* k){
int v=n;
for (int i=1; i<=m; i++){
if (k[i-1]<v) {
v=k[i-1];
}
}
if (v==0) {
for (int i=1; i<=m; i++){
if (k[i-1]==v) {
cout << i <<". szempont szerint nem volt kieső kutya!" << endl;
}
}
}else {
for (int i=1; i<=m; i++){
if (k[i-1]==v) {
cout << i <<". szempont szerint volt a legkevesebb kieső kutya!" << endl;
}
}
}
}Nagyon megköszönném a segítségeteket, mert már semmi ötletem sincs hogy miért nem megy!
üdv: Péter
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Huawei P20 64GB, Kártyafüggetlen, 1 Év Garanciával
- LG 27CN650N-6A - Felhő Monitor - 1920x1080 FHD - 75Hz 5ms - USB Type-C - Quad Core - BT + WiFi
- DDR5 8/ 16/ 32GB 4800-5600MHz SODIMM laptop RAM, több db- számla, garancia
- ÚJ Asus TUF Gaming F17 FX707 - 17.3"FHD IPS 144Hz - i7-13620H - 16GB - 1TB - RTX 4060 -3 év garancia
- Prémium gépház most fantasztikus áron!
Állásajánlatok
Cég: FOTC
Város: Budapest