- Milyen billentyűzetet vegyek?
- OLED TV topic
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- VR topik (Oculus Rift, stb.)
- TCL LCD és LED TV-k
- ASUS ROG Ally
- AMD vs. INTEL vs. NVIDIA
- Nyárbúcsúztató hardvermix
- Amlogic S905, S912 processzoros készülékek
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
Új hozzászólás Aktív témák
-
choco01
addikt
Most ilyen speedrun megy mert holnap írunk ZH-t és leragadtam a struktúráknál, de elvileg kötelező lesz osztályokat használni..
úgy hogy amennyit csak tudok olvasok..
A gyakorló feladat ilyesmi volt, végülis értem, csak pár apró része nem világos hogy miért oda miért nem, eddig úgy gondoltam hogy a private/protected rész arra kell hogy mások elől védjem az ott lévő dolgokat és akkor valahogy publicba tudok infót adni a védett részbe is..de aztán lehet nem..
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
/*Készítsen programot, melyben a Kétkerék nevű kerékpár kölcsönző adatait tudja kezelni.A kölcsönzőben kétféle
típusú kerékpár van, melyek kölcsönzési óradíja különböző.A magellan 1200 Ft / óra, a median 1000 Ft / óra.
A kolcsonzo.txt szöveges állomány első sorában a kölcsönzések számát, a kölcsönzések adatait a következő struktúra szerint tartalmazza:
struct kolcsonzes
{
string; //a kölcsönzés napja
string tipus; //a kerékpár típusa
int sorszam; //a kerékpár sorszáma
int ido; //a kölcsönzés ideje
};
Készítse el az alábbi függvényeket, mindegyik függvény vegye át az állomány nevét :
Getdb() Adja vissza az adatok számát.
GetMagellan() Adja vissza a magellan kerékpárok számát.
GetMedian() Adja vissza a median kerékpárok számát.
MedianBevetel() Adja vissza a median kerékpárokkal szerzett bevétel összértékét.
OsszBevetel() Adja vissza a bevétel összértékét.
LeghosszabbKolcsonzes() Adja vissza a leghosszabb kölcsönzés adatait tartalmazó struktúrát.
Kiir() A függvény minden adatot sorszámozva, az kiíratja a képernyőre táblázatos formában, minden struktúra egy
sorba kerüljön(a sorszám 1 - ről indul).
*/
struct kolcsonzes
{
string datum;
string tipus;
int sorszam;
int ido;
};
class kolcsonzo
{
private:
kolcsonzes *k;
int db;
public:
kolcsonzo(char fnev[]);
~kolcsonzo();
int Getdb();
int GetMagellan();
int GetMedian();
int MedianBevetel();
int Osszbevetel();
int LeghosszabbKolcsonzes();
void Kiir();
};
//kolcsonzo.txt beolvasasa
kolcsonzo::kolcsonzo(char fnev[])
{
ifstream be(fnev);
if (be.fail()) { cerr<<"hiba fajlnyitas"; system("pause"); exit(-1);}
be >> db;
k = new kolcsonzes[db];
if (k == 0) { cerr << "hiba2";system("pause");exit(-2);}
for (int i = 0; i < db; i++)
{
be >> k[i].datum;
be >> k[i].tipus;
be >> k[i].sorszam;
be >> k[i].ido;
}
be.close();
}
kolcsonzo::~kolcsonzo()
{
if (k != 0)
delete[]k;
}
int kolcsonzo::Getdb()
{
return db;
}
int kolcsonzo::GetMagellan()
{
int m = 0;
for (int i = 0; i < db; i++)
{
if (k[i].tipus=="magellan")
{
m++;
}
}
return m;
}
int kolcsonzo::GetMedian()
{
int m = 0;
for (int i = 0; i < db; i++)
{
if (k[i].tipus=="median")
{
m++;
}
}
return m;
}
int kolcsonzo::MedianBevetel()
{
int mbev = 0;
for (int i = 0; i < db; i++)
{
if (k[i].tipus=="median")
{
mbev += k[i].ido * 1000;
}
}
return mbev;
}
int kolcsonzo::Osszbevetel()
{
int bev = 0;
for (int i = 0; i < db; i++)
{
if (k[i].tipus=="median")
{
bev += k[i].ido * 1000;
}
else
{
bev += k[i].ido * 1200;
}
}
return bev;
}
int kolcsonzo::LeghosszabbKolcsonzes()
{
int l = k[0].ido;
for (int i = 0; i < db; i++)
{
if (k[i].ido > l)
{
l = k[i].ido;
}
}
return l;
}
void kolcsonzo::Kiir()
{
cout << setw(14) << "datum" << setw(20) << "tipus" << setw(10) << "sorszam" << setw(10) << "kolcsido" << endl;
for (int i = 0; i < db; i++)
{
cout << i + 1 << "." << setw(12) << k[i].datum << setw(20) << k[i].tipus << setw(10) << k[i].sorszam << setw(10) << k[i].ido << endl;
}
}
int main()
{
kolcsonzo ketkerek("kolcsonzo.txt");
cout << "Az allomanyban levo adatok:\n";
ketkerek.Kiir();
cout << endl;
cout << "A kolcsonzesek szama: " << ketkerek.Getdb() << endl;
cout << "A magellan kolcsonzesek szama: " << ketkerek.GetMagellan() << endl;
cout << "A median kolcsonzesek szama: " << ketkerek.GetMedian() << endl;
cout << "A median kerekparokkal szerzett bevetel: " << ketkerek.MedianBevetel() << endl;
cout << "A kerekparokkal szerzett osszbevetel: " << ketkerek.Osszbevetel() << endl;
cout << "A leghosszabb kolcsonzes ideje: " << ketkerek.LeghosszabbKolcsonzes() << endl;
cout << endl << endl;
cout << "***************** dinamikus objektum *****************\n\n";
kolcsonzo *kektura = new kolcsonzo("kolcsonzo.txt");
if (kektura == 0)
{
cerr << "keves a memoria 2";
return 2;
}
cout << "Az allomanyban levo adatok:\n";
(*kektura).Kiir();
cout << endl;
cout << "A kolcsonzesek szama: " << kektura->Getdb() << endl;
cout << "A magellan kolcsonzesek szama: " << kektura->GetMagellan() << endl;
cout << "A median kolcsonzesek szama: " << kektura->GetMedian() << endl;
cout << "A median kerekparokkal szerzett bevetel: " << kektura->MedianBevetel() << endl;
cout << "A kerekparokkal szerzett osszbevetel: " << kektura->Osszbevetel() << endl;
cout << "A leghosszabb kolcsonzes ideje: " << kektura->LeghosszabbKolcsonzes() << endl;
cout << "Az 5 oranal hosszabb kolcsonzesek:\n";
delete kektura;
system("pause");
return 0;
}
Ú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!
- GIGABYTE RTX 4080 SUPER 16GB GDDR6X GAMING OC - Gari 2027.12.10. -ig - Eladó!
- ASUS GTX 1060 6GB GDDR5 ROG STRIX OC Eladó!
- ASUS RX 5700 XT 8GB GDDR6 ROG STRIX OC Eladó!
- Western Digital Blue SA510 500GB SATA3 - Új, bontatlan - Eladó!
- Crucial T500 PRO 2TB M.2 NVME PCI-E 4.0 x4 - Új, Hűtőbordás - 7400-7000 MBs - Eladó!
- iKing.Hu - Xiaomi 14 Ultra Ultra White Használt, karcmentes állapot, Kamerás csúcsmobil
- BESZÁMÍTÁS! ASUS A620M R7 7700X 32GB DDR5 1TB SSD RX 7900 XTX 24GB ZALMAN I3 NEO EVGA 850W
- BESZÁMÍTÁS! LG 24MB35PM 60Hz FHD IPS 5ms monitor garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3336
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest