Simulace lyžařských vleků – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Simulace lyžařských vleků – C / C++ – Fórum – Programujte.comSimulace lyžařských vleků – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Martin5230
Newbie
23. 3. 2015   #1
-
0
-

   


Mám tento problém. Konstanty jsem globálně nadeklaroval. Nevím si rady s bodem 2, 3, 4. 

Díky moc

Nahlásit jako SPAM
IP: 89.102.221.–
PiranhaGreg0
Stálý člen
23. 3. 2015   #2
-
0
-

To zní jako úkol do školy (VŠB?). Bez větší snahy ti tu nikdo neporadí  .

Nahlásit jako SPAM
IP: 109.81.210.–
Martin5230
Newbie
23. 3. 2015   #3
-
0
-

Ano je to úkol. Taky chci vše sám naprogramovat nechci po nikom, aby mi to celé udělal jen nejsem vůbec dobrý programátor a vždy nevím jak začít a potřebuji nakopnout. Jak jsem již zmínil konstanty jsem nadeklaroval a jednu structuru podle zadani mám takhle: 

 

struct lyzar                                

{

    int cislovleku;

    int idlyzar;

    bool instruktor;

};

Jen nevím jestli je to vše co má být v té struktuře nebo tam ještě něco chybí. 

Nahlásit jako SPAM
IP: 2001:718:1001:111::27...–
ingiraxo+15
Grafoman
23. 3. 2015   #4
-
0
-

#3 Martin523
já to pochopil spíše takto.. to zadání není úplně nejlepší 

#define N 4   // pocet vleku
#define M 10  // kapacita vleku
#define Z 10  // pocet zaku na instruktora

struct Vlek;
struct Lyzar
{
    int id;
    Vlek* vlek;
    bool instruktor;

    Lyzar() : vlek(0) {}
    Lyzar(int id, Vlek* vlek, bool instruktor)
        : id(id), vlek(vlek), instruktor(instruktor) {}
};

struct Vlek
{
    int cislo;
    Vlek* dalsi;
    Lyzar lyzari[M];

    Vlek() : dalsi(0) {}
    Vlek(int cislo)
        : cislo(cislo), dalsi(0) {}
};

int main()
{
    Vlek* vleky[N] = { 0 };

    Vlek v1(100);
    {
        v1.lyzari[0] = Lyzar(1, &v1, false);
        v1.lyzari[1] = Lyzar(2, &v1, true);
        vleky[0] = &v1;

        Vlek vx1(101);
        vx1.lyzari[0] = Lyzar(3, &vx1, false);
        v1.dalsi = &vx1;
    }
    Vlek v2(200);
    {
        v1.lyzari[0] = Lyzar(4, &v2, true);
        vleky[1] = &v2;
    }
    return EXIT_SUCCESS;
}
Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Martin5230
Newbie
23. 3. 2015   #5
-
0
-

Můžu se zeptat co znamená tohle:


Lyzar() {} Lyzar(int id, int cislo, bool instruktor) : id(id), cislo(cislo), instruktor(instruktor) {}

Navíc tento úkol máme mít v C++ 

Nahlásit jako SPAM
IP: 2001:718:1001:111::27...–
ingiraxo+15
Grafoman
23. 3. 2015   #6
-
0
-

1) dávej zdrojáky do code bloků <?

2) to jsou jen konstruktory

3) já to psal v C++ akorát jsem nepoužil nic z stl

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Martin5230
Newbie
24. 3. 2015   #7
-
0
-

   

 Lyzar() : vlek(0) {}
    Lyzar(int id, Vlek* vlek, bool instruktor)
        : id(id), vlek(vlek), instruktor(instruktor) {}

K čemu jsou tyto dva konstruktory?

Nahlásit jako SPAM
IP: 89.102.221.–
ingiraxo+15
Grafoman
24. 3. 2015   #8
-
0
-

Na inicializaci objektu při jeho vytvoření? Samozřejmě konstruktory tady nejsou povinný, ale díky nim zkrátíš zápis.. hlavně dat. typy jako pointer apod. by měli být inicializovány vždy, proto je dobré použít aspon bezparametrický konstruktor.

Jste se neučili konstruktory a máte dělat takové zadání?

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Martin5230
Newbie
24. 3. 2015   #9
-
0
-

Samozdřejmě, že učili, ale takhle zapsáno jsem to ještě nikdy neviděl. Myslím tu dvojtečku.

Lyzar(int id, Vlek* vlek, bool instruktor)
        : id(id), vlek(vlek), instruktor(instruktor) {}
Nahlásit jako SPAM
IP: 2001:718:1001:111::18...–
KIIV
~ Moderátor
+43
God of flame
24. 3. 2015   #10
-
0
-

To slouzi hlavne pro inicializaci vnorenych objektu, rodicovske tridy (ale nejen jich). Hlavne u objektu, co nemaji defaultni konstruktor, bys to proste nemohl zkompilovat.

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
24. 3. 2015   #11
-
0
-

Nejlepší je když se tazatel ani nenamáhá zkopírovat nebo opsat zadání. Tak já se nebudu namáhat to číst. Je to rozmazané a moc malé písmo.

Nahlásit jako SPAM
IP: 78.45.199.–
ingiraxo+15
Grafoman
24. 3. 2015   #12
-
+1
-
Zajímavé

#11 oxidián
A kliknout na obrázek tě nenapadlo? :-)

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
24. 3. 2015   #13
-
+1
-
Zajímavé

#12 ingiraxo
To by jeho velké ego nezkouslo.

hu

Nahlásit jako SPAM
IP: 193.86.81.–
Martin5230
Newbie
24. 3. 2015   #14
-
+1
-
Zajímavé

Myslím si, že obrázek je v slušné kvalitě.

Nahlásit jako SPAM
IP: 2001:718:1001:111::18...–
Kenvelo+2
Super člen
24. 3. 2015   #15
-
0
-

#11 oxidián
Že by klik obrázek a pak klik 'F' ? 

Nahlásit jako SPAM
IP: 89.177.196.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
Martin5230
Newbie
27. 3. 2015   #16
-
0
-

Strukturu Lyzar mám hotovou. Jak mám dále postupovat ve strukture Vlek? 

Nahlásit jako SPAM
IP: 89.102.221.–
Martin5230
Newbie
29. 3. 2015   #17
-
0
-

Docela jsem se zasekl na této části:


Pokud celkový počet požadavků vygenerovaných během simulace nedosáhl M, bude náhodně vygenerován jeden normální lyžař a jedna skupina s instruktorem (nejméně 2 lyžaři, nejvýše Z).

Můžete mi poradit jak tomu rozumíte?

Nahlásit jako SPAM
IP: 89.102.221.–
ingiraxo+15
Grafoman
29. 3. 2015   #18
-
0
-

#17 Martin523
To zadání je opravdu debilní, ale chápu to tak, že když vlek bude prázdnej (při vygenerování se tam nevloží žádný lyžař), tak tam ručně vložíš (dovygeneruješ) posádku vleku

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Martin5230
Newbie
29. 3. 2015   #19
-
0
-

Na začátku vygeneruji nejakou sadu lyžařů , max M(50) vygeneruji teda napr. 30 ... v těchto 30 maji byt i instruktoři ? nebo ty instruktory + žáky vytvořím jen když 30 < 50? v tomto případě by to platilo, takze vytvořim podle zadani 1 normalního 1 instruktora několik žáků, napr. 8) ... uz mam teda 30 + (1+1+8) = 40 40 < 50, takže znova 1x normalny lyžar 1x instrukttor několik žáků atd až dokud nedosahnu M? Takhle by jsem vytvářel instruktory + žáky jen, když je na svahu místo - druha možnost je jak jsem napsal vytvářet je pří generovani

Co myslíte?

Nahlásit jako SPAM
IP: 89.102.221.–
Petr
~ Anonymní uživatel
746 příspěvků
31. 3. 2015   #20
-
0
-

No tak se na to zeptej přímo Dvorského ne ? (pro ty co neznají, je to učitel onoho předmětu )

Když si s ním domluvíš konzultaci, sepíšeš čemu nerozumíš, případně mu předloží svůj kód co máš, tak ti určitě rád poradí nebo tě minimálně nasměruje... Myslím že je to rozumější než tady věštit jak by to mělo asi být. Takhle jenom ztrácíš čas a riskuješ to, že to pak budeš muset celé předělávat   

Nahlásit jako SPAM
IP: 85.207.89.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 39 hostů

Podobná vlákna

Simulace pokladny — založil Noneus

Simulace uživatele — založil midnighter@centrum.cz

Simulace autoservisu — založil Jurasz

SIMULACE CINNOSTI — založil VLAD

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý