Hirdetés
- Vezeték nélküli fülhallgatók
- Androidos tablet topic
- Lenovo Legion Go: a legsokoldalúbb kézikonzol
- Melyik tápegységet vegyem?
- Fejhallgató erősítő és DAC topik
- AMD Navi Radeon™ RX 9xxx sorozat
- Házimozi belépő szinten
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Videós, mozgóképes topik
- KártyaPC topik (Odroid, Olinuxino)
Új hozzászólás Aktív témák
-
Badb0y
addikt
Valaki rendbe tudná nekem ezt a programot hozni? Mármint, hogy fusson ?
Iszonyat hálás lennék. Ha esetleg hülyeség vagy fölösleg van benne, akkor az kerüljön eltávolításra

Ma le kell adnom uh. pls help

Köszönöm segítségetek előre is.
/*
C++ nyelven szeretnénk modellt készíteni a következő leírás alapján. Egy óvodás hátizsákjába sok (max. 100) játék fér. Minden játéknak van népszerűségi indexe (egész szám, hány óvodás irigykedik a játék tulajdonosára), és minden játékot meg lehet nyomni (push()), amire minden játék máshogy reagál. Játékból több fajta is van, és a játékfajták száma később csak nőni fog. Játékok jelenleg az alábbiak:
• Macintosh-MACi (index: 15, verziószám: egész). Ha megnyomják, és a verziószám legalább 10, akkor kiírja, hogy „Én is unix vagyok”.
• Linux-pingvin (kezdő index: 500, kernel_verzió: sztring), ha megnyomják, kiírja a kernel verziószámát, és ha az index kisebb, mint 97, akkor 4-gyel megnöveli. Ha megsemmisül, kiírja, hogy „UNIX4EVER”.
• Microsoft-majom (kezdő index: 53, vagyon: long double). ha megnyomják, kiírja, hogy „I! LOVE! THIS! COMPANY!!!”.
A rendszerben a következő funkciókat kell megvalósítani:
• hátizsák átlagos népszerűségi indexének lekérése (getAvgPopularity())
• hátizsákba új játék behelyezése (addToy())
• játék népszerűségének lekérdezése (getPopularity())
• minden játékhoz a megnyomás (push())
• pingvin destruktora.
Feladatok:
• Tervezzen meg egy olyan OO modellt, mely a fenti követelményeket kielégíti! Rajzolja fel a modell osztálydiagramját! (0,5p)
• Deklarálja a Hátizsák, Játék, Maci, Pingvin osztályokat és az elvárt funkciók ellátásához szükséges tagfüggvényeket! Használja a dőlt betűs neveket! (2)
• Implementálja a fenti osztályokat és azok tagfüggvényeit! Az osztályokat olyan módon készítse el, hogy újabb játék-típus felvételekor a már meglevő kódot ne kelljen módosítani! (1,5 pont)
• Írjon egy egyszerű programrészletet, ami készít egy hátizsákot, és elhelyez benne egy pingvint (kernel verzió: 2.6.11) és egy majmot (vagyona $3.5e274). Írassa ki a hátizsák átlagos népszerűségét, majd nyomja meg a pingvint, és így is írja ki a hátizsák népszerűségét! (1 pont)
*/
#include <stdio.h>
#include <iostream.h>
#include <string.h>
class Jatek {
protected:
int index;
public:
Jatek(int i) : index(i) {}
int getPopularity() {
return index;
}
virtual void push() = 0;
virtual ~Jatek() {}
};
class Maci : public Jatek {
int verzio;
public:
Maci(int v) : Jatek(14), verzio(v) {}
void push() {
if (verzio >= 10)
cout << "En is unix vagyok!"
<< endl;
}
};
class Pingvin : public Jatek {
string ker_ver;
public:
Pingvin(string k) : Jatek(43),
ker_ver(k) {}
void push() {
cout << ker_ver << endl;
if (index < 97) index += 4;
}
~Pingvin() {
cout << "UNIX4EVER" << endl;
}
};
class Hatizsak {
Jatek* tar[100];
int n;
public:
Hatizsak() : n(0) {}
~Hatizsak() {
for (int i = 0; i < n; i++) {
delete tar[i];// ha adoptal
}
}
void addToy(Jatek* j) {
if (n < 100) {
tar[n] = j;
n++;
} else {
delete j; // ha adoptal
}
}
int getAvgPopularity() {
int sum = 0;
for (int i = 0; i < n; i++) {
sum +=
tar[i]->getPopularity();
}
return sum/n;
}
};
// a feladat szerint nem kell
class Majom : public Jatek {
long double vagyon;
public:
Majom(long double ld) :
Jatek(43), vagyon(ld) {}
void push() {
cout << "I! LOVE! THIS!\
COMPANY!!!"
<< endl;
}
};
int main() {
Hatizsak h;
Pingvin* p = new Pingvin("2.6.11");
Majom* m = new Majom(3.5e274);
h.addToy(p);
h.addToy(m);
cout << h.getAvgPopularity() << endl;
p->push();
cout << h.getAvgPopularity() << endl;
return 0;
}Ill. még ebben is van valami hiba, mert nem azt írja ki, amit akarok. Valamiért mindig 99-110-ig ír ki, nem azt amit beadok.
/*
Egy meteorológiai állomáson különféle adatokat mérnek (szél, hőmérséklet, csapadék, stb.). A mért adatokat egy OO programmal szeretnénk nyilvántartani, mégpedig úgy, hogy azokat az észlelés sorrendjében egy tárolóba tesszük (add). Az adatok eltérő formátumúak. A szélnek pl. iránya és nagysága is van, míg a hőmérséklet csak egy mennyiség, de a sorrend megtartása miatt közös tárolóban kell azokat tárolnunk. A tároló maximum 1000 adatot tud tárolni, és képes kilistázni (list) a benne levő adatokat a hozzájuk tartozó értékekkel együtt. (pl. szél: É-Ny, 10km/h; hőmérséklet: 12 C).
• Tervezzen OO modellt, mely tartalmaz Wind, Temperature, valamint Store objektumot, és könnyen bővíthető esetleges újabb adatokkal (pl. csapadék). Rajzolja fel a modell osztálydiagramját! Használja a megadott dőltbetűs neveket!
• Implementálja az osztályokat! Ne legyen egy függvénytörzsben sem feleslegest kód! Olyan módon készítse el az osztályokat, hogy bővítéskor ne kelljen a kódot módosítani! A tárolónak legyen olyan művelete is, mellyel az összes adat kitörölhető (clear)!
• Írjon egy egyszerű programrészletet, ami megmutatja 2 különböző típusú meteorológiai adat bevitelét egy tárolóba, majd kiírja a tárolóban tárolt adatokat és a hozzájuk tartozó értékeket!
*/
#include <iostream.h>
//osztalyok
class homerseklet
{
public:
int hom;
char dimenzio[10];
};
class szel
{
public:
int erosseg;
char irany[10];
};
//osztalyok vege
//globalis adatok
struct Adat
{
homerseklet h;
//csapadek cs;
szel sz;
};
Adat adattomb[1000];
//golbalis adatok vege
//globális eljárások függvények
void kiir(int n)
{
for(int i=0;i<n;i++)
{
cout<<adattomb[i].h.hom<<" "<<adattomb[i].h.dimenzio[10]<<" "<<adattomb[i].sz.erosseg<<" "<<adattomb[i].sz.irany[10]<<endl;
}
}
void beolvas(int h,char dim[10],int ero, char irany[10],int i)
{
adattomb[i].h.hom=h;
adattomb[i].h.dimenzio[10]=dim[10];
adattomb[i].sz.erosseg=ero;
adattomb[i].sz.irany[10]=irany[10];
}
//ováááá
void main()
{
int i=0;
int muv;
cout<<"1 add , 2 list"<<endl;
cout<<"elemszam:"<<i<<endl;
int eleg=0;
while (eleg!=1)
{
cin>>muv;
switch (muv)
{
case 1: {
cout<<"Adja meg a homersekletet"<<endl;
int hom;
cin>>hom;
cout<<"Adja meg a homersekletet dimenziojat"<<endl;
char dim[10];
cin>>dim[10];
cout<<"Adja meg a szeleroseget"<<endl;
int ero;
cin>>ero;
cout<<"Adja meg a szeleroseg iranyat"<<endl;
char irany[10];
cin>>irany[10];
beolvas(hom,dim,ero,irany,i);
i++;
cout<<"1 add, 2 list"<<endl;
cout<<"elemszam:"<<i<<endl;
}; break;
case 2:{ kiir(i); eleg=1;} break;
}
}
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Spórolós topik
- Torrent meghívó kunyeráló
- AliExpress tapasztalatok
- Gumi és felni topik
- Samsung Galaxy A54 - türelemjáték
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Prohardver app (nem hivatalos)
- Szigorúan titkos dokumentumokkal a kezében távozott az Intel egyik mérnöke
- One otthoni szolgáltatások (TV, internet, telefon)
- Víz- gáz- és fűtésszerelés
- További aktív témák...
- Hp Zbook Fury G7 " Gyári magyar Bill " Sok - Sok darab!!!!
- Bomba áron GIGABYTE G5 /I7-13620H 16GB 1 TB SSD Nvidia RTX 4050 6GB 144 Hz FHD IPS
- Honor Pad X8 / 4/64GB / Wi-Fi / 12 Hó Garancia
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Garancia
- Samsung Galaxy A53 5G / 6/128GB / Kártyafüggetlen / 12 Hó Garancia
- Lenovo L15 Gen 2 Ryzen5 5650U
- LG 27GP850P-B - 27" NANO IPS - 2560x1440 - 180Hz 1ms - NVIDIA G-Sync - AMD FreeSync - HDR 400
- LG 27GR95UM - 27" MiniLED - UHD 4K - 160Hz 1ms - NVIDIA G-Sync - FreeSync Premium PRO - HDR 1000
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3180
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




