Hirdetés
Ú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.. ú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!
- BESZÁMÍTÁS! Asus H370-A i5 9600K 16GB DDR4 512GB SSD RTX 2060 Super 8GB Zalman T7 Zalman 500W
- HIBÁTLAN iPhone 13 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3760, 93% Akkumulátor
- Kèszleten levő VGA-k! Kamatmentes rèszletre is! Èrdeklődj!
- Lenovo ThinkPad P15 Gen 2 - i7-11850H 32GB 1000GB Nvidia RTX A4000 8GB 1 év gar.
- 154 - Lenovo LOQ (15IRX9) - Intel Core i5-13450HX, RTX 4060
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest
 
								 
							 
  úgy hogy amennyit csak tudok olvasok..
 úgy hogy amennyit csak tudok olvasok.. 
 

