Kész a C++ programom, de mi lehet a hiba?
Elég hosszadalmas lett, nem tudom szabad-e ide ilyen hosszút beírni, de beírom. 3 fájlból áll, van egy terem.h, terem.cpp, main.cpp .
A terem.h a következő:
#ifndef TEREM_H
#define TEREM_H
#include <iostream>
using namespace std;
class Terem
{
public:
int elemszam;
char helye[100];
char milyen;
int ulohelyek[100];
bool sotetitheto[100];
friend ostream& operator << (ostream& os, const Terem& p);
friend istream& operator >> (istream& is, Terem& p);
void Kiir();
void atl();
int szumma;
double atlag;
};
class Eloadoterem: public Terem
{
public:
bool hangosithato[100];
bool projektor[100];
bool lepcsozetes[100];
friend ostream& operator<< (ostream& os, const Eloadoterem& p);
friend istream& operator>> (istream& is, Eloadoterem& p);
};
};
class Szamitogeplabor: public Terem
{
public:
int szamitogepek;
bool halozat;
string OPr;
friend ostream& operator<< (ostream& os, const szamitogeplabor& p);
friend istream& operator>> (istream& is, szamitogeplabor& p);
};
};
#endif
A terem.cpp:
#include <"TEREM.H">
#include <cmath>
ostream& operator<< (ostream& os, const Terem& p)
{
os << "A Windows 2000 operációs rendszert futtató számítógépes laborok ülőhelyszámának átlaga: " << p.atlag<< endl;
}
istream& operator>> (istream& is, Terem& p)
{
cout << "Adatok száma: "; is >> p.elemszam;
for(i=0;i++;i<p.elemszam)
{
cout << "Eloadoterem/Szamitogeplabor: "; is >> p.milyen;
if (p.milyen==eloadoterem)
{
then
{
cout << "Hol található? "; is >> p.helye;cin.get();
cout << "Ülőhelyek száma: "; is >> p.ulohelyek;cin.get();
cout << "Sötétíthető? "; is >> p.sotetitheto;cin.get();
cout << "Hangosítható? "; is >> p.hangosithato;cin.get();
cout << "Rendelkezik projektorral? "; is >> p.projektor;cin.get();
cout << "Lépcsőzetes? "; is >> p.lepcsozetes;cin.get();
p.OPr[i]=CSIRKE;
p.szamitogepek[i]=CSIRKE;
p.halozat[i]=CSIRKE;
}
else
{
cout << "Hálózat: "; is >> p.halozat;cin.get();
cout << "Számítógépek száma: "; is >> p.szamitogepek;cin.get();
cout << "Operációs rendszer: "; is >> p.OPr;cin.get();
cout << "Hol található? "; is >> p.helye;cin.get();
cout << "Ülőhelyek száma: "; is >> p.ulohelyek;cin.get();
cout << "Sötétíthető? "; is >> p.sotetitheto;cin.get();
p.hangosithato[i]=CSIRKE;
p.lepcsozetes[i]=CSIRKE;
p.projektor[i]=CSIRKE;
}}}}
void Terem::Kiir()
{cout << "Adatok: " >> endl;
for(i=0;i++;i<p.elemszam)
{if (p.hangosit[i]==true && p.projektor[i] == true)
{cout << "Hálózat: "; is >> p.halozat;cin.get();
cout <<p.hangosithato[i]<<p.projektor[i]<<p.ulohelyek[i]<<p.lepcsozetes[i]<<p.sotetitheto[i]<<p.helye[i]<<endl;
}}}
void Terem::atl()
{
for (i=0;i++;i<p.elemszam)
{
if (p.OPr[i]==windows 2000)
{
then
{
p.szumma=+p.ulohely[i];
}
}
p.atlag=p.szumma/p.elemszam;
}
A main.cpp:
#include "terem.h"
int main()
{
Terem n;
cin >> n;
n.kiir();
n.atl();
cout << n;
cin.get(); cin.get();
return 0;
}
Tegnap már kérdeztem, ott kaptam a megíráshoz segítséget, de most ismét elakadtam. Nem tudok rájönni, hogy mi a hiba. Az include-okkal van valami baja elvileg, de nem tudom hogy írjam át.
Aki esetleg szeretné a feladat szövegét látni:
Hozza létre a Terem osztályt Helye, Ülőhelyek száma, Sötétíthető adattagokkal. Származtassa belőle az Előadóterem és a Számítógép labor alosztályokat. Az Előadóterem alosztályt bővítse a Hangosítható, Beépített projektor, Lépcsőzetes padsorok, a Számítógép labor alosztályt a Számítógépek száma, Hálózati kapcsolat, Telepített operációs rendszer adattagokkal. Írjon programot, amellyel létrehozhatók az Előadóterem és a Számítógép labor osztályok egyedeit tároló vektorok. A program tegye lehetővé a feltöltést és a hangosítható és egyúttal projektorral is ellátott előadótermek adatainak kilistázását, valamint a Windows 2000 operációs rendszert futtató számítógépes laborok átlagos ülőhelyszámának kiíratását.
Az include-dal az a hiba, hogy idézőjelet meg <>-at is használtál. Csak az egyik kell, ami a terem.h esetében az idézőjel.
Egyébként meg a program tele van problémákkal, szerintem ez a fórum nem alkalmas rá, hogy segítsen, amikor ilyen sok gond van. Kérd meg egy haverodat, hogy üljön le melléd és úgy segítsen.
A program hibáit nemnagyon értem, 5 hibát ír ki egészben abból 3 include meg ifndef.
pontosabban ezeket: In file included from terem.cpp
expected declaration befor'}'token
In file included from terem.cpp
unterminated #ifndef
Build error
A csukó zárójellel az a gond, hogy feleslegesen van ott az Eloadoterem es a Szamitogeplabor osztalyok definíciója után. Az if/endif látszólag jó, nem tudom, ott miért szólna...
De ahogy mondtam, ez így nem fog menni, olyan sok benne a hiba. Keríts valakit, aki ott tud ülni melletted.
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!