- D1Rect: Nagy "hülyétkapokazapróktól" topik
- bitpork: MOD Júni 28- Augusztus 2- szombat jelen állás szerint.
- Magga: PLEX: multimédia az egész lakásban
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Android másképp: Lineage OS és társai
- Random25: Windows 11 telepítés Pendriveról
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Luck Dragon: Asszociációs játék. :)
Ú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!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Nintendo Wii U
- Microsoft Excel topic
- CURVE - "All your cards in one." Minden bankkártyád egyben.
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Exkluzív órák
- Autós topik látogatók beszélgetős, offolós topikja
- Bambu Lab 3D nyomtatók
- HiFi műszaki szemmel - sztereó hangrendszerek
- bitpork: MOD Júni 28- Augusztus 2- szombat jelen állás szerint.
- További aktív témák...
- Uhh Lenovo ThinkPad P15 G2 Tervező Vágó Laptop -75% 15,6" i5-11500H 16/1TB RTX A2000 4GB /1 Millió/
- Esport PC - i5 13400F, GTX 1080ti és 16gb DDR5
- Ohh Lenovo ThinkPad P15 G2 Tervező Vágó Laptop -75% 15,6" i5-11500H 32/1TB RTX A2000 4GB /1 Millió/
- AZTA! HP EliteBook 840 G8 Fémházas Laptop Ultrabook 14" -60% i7-1185G7 16/512 FHD IPS Iris Xe
- Sony PlayStation 5 (PS5) Játékkonzol - Lemezes verzió, dobozában!
- Azonnali készpénzes Intel i3 i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- Bomba ár! Dell Latitude E7450 - i5-5GEN I 8GB I 256SSD I 14" FHD I HDMI I Cam I W10 I Garancia!
- Xiaomi Redmi A1 32 GB Kártyafüggetlen 1Év Garanciával
- Telefon felvásárlás!! Samsung Galaxy A12/Samsung Galaxy A22/Samsung Galaxy A32/Samsung Galaxy A52
- Nexus 6P 32GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest