» »

C++ pomoč

C++ pomoč

hexor ::

Pozdrav!

Prosil bi vas za pomoč pri programu ki bere iz vhoda pare realnih števil(x,y).Ko prebere oba para naj vrednost vpiše v datoteko s presledkom v novo vrstico-pred vrednostima naj bo številka vrstice in jima naj odreže decimalni del v stolpcih x in y.Zapisovanje se naj ponavlja tako dolgo dokler za vrednost x ali y ne vnesem besedo konec.Vsaka pomoč bo dobrodošla.Hvala!

Tr0n ::

Kaksno pomoc pa rabis?

hexor ::

kako bi odrezal decimalni del od stevila npr. če vpišem 15.23,da mi v datoteko vpiše 15.....

hm.....

Zgodovina sprememb…

  • spremenil: hexor ()

deninho1989 ::

Pozdravljeni...Tudi jaz rabim eno pomoč...V ponedeljek imamo izpit iz programiranja, potem pa dobimo sledečo nalogo:



navodilo je pa sledeče: kaj izpiše izvedba naslednjega programa?
Zanima me če mi lahko kdo razloži zakaj in kako pride do naslednjih rešitev:
AABABCAB21A1A1321211

tnx, Lp

Zgodovina sprememb…

schtr4jh ::

Ob kreiranju objektov pri dedovanju se konstruktorji izvedejo od zgoraj navzdol. Ko se program konča se destruktorji izvedejo od spodaj navzgor.

Kreiraš objekt o_a razreda A. Izvede se A(), ki izpiše A;
Kreiraš objekt o_b razreda B. Izvede se A(), ki izpiše A in nato B(), ki izpiše B;
Kreiraš objekt o_c razreda C. Izvede se A(), ki izpiše A, nato B(), ki izpiše B ter na koncu C(), ki izpiše C.
V zavitih oklepajih kreiraš objekt o_bb razreda B. Izvede se A(), ki izpiše A ter nato B(), ki izpiše B. Ker prideš do zavitega zaklepaja, v teh dveh zaklepajih pa si kreiral objekt o_bb, se objekt "zruši", zato se kliče destruktor ~B(), ki izpiše 2 ter nato še destruktor ~A(), ki izpiše 1.
For zanka se bo izvedla 2x (i=7 in i=6). Kreiraš objekt o_aa razreda A, zato se najprej kliče konstruktor A(), ki izpiše A. Ker si prišel do zavitega zaklepaja, se kliče destruktor ~A(), ki izpiše 1. Ponovi se še enkrat (izpis: A 1).
Ker si prišel do konca programa, se morajo "zrušit" še ostali objekti, zato se kličejo destruktorji. Objekti se "rušijo" od zadnjega kreiranega do prvega kreiranega. Najprej se "zruši" o_c, ki kliče ~C(), nato ~B(), nato ~A() (izpis: 3 2 1). Za tem se "ruši" o_b - ~B() in ~A() (izpis 2 1). Na koncu se "zruši" še o_a, ki kliče samo destruktor ~A().

Še primer glede zavitih oklepajev:
class Base {
public:
Base() {
cout << "k ";
}
~Base() {
cout << "d ";
}
};

int main() {
Base o1;
int a = 5;
// tukaj lahko uporabljaš samo o1
if (a==5) {
Base o2;
// tukaj lahko uporabljaš o1 in o2
}
// tukaj lahko uporabljaš samo o1
}


Izpis: k k d d

Dovolj razumljivo?

deninho1989 ::

Najlepša hvala...Zdaj mi je vse skup dosti bolj jasno;)...Spraševal sem zato ker ti ta naloga prinese 20 točk...:D

schtr4jh ::

Lahko samo vprašam, katero šolo obiskuješ?

deninho1989 ::

vss velenje/enota MS

schtr4jh ::

Pol pa čist možno, da te poznam. Jst sm na ERŠ 4. letnik =)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

python osnova

Oddelek: Programiranje
212248 (1561) detroit
»

C++ 1. letnik

Oddelek: Pomoč in nasveti
8902 (694) Tr0n
»

osnove v Javi - zvezdice

Oddelek: Programiranje
403432 (2654) Tutankhamun
»

C++ kopirni konstruktor

Oddelek: Programiranje
103364 (3095) noraguta
»

oop+php+sessions

Oddelek: Izdelava spletišč
152501 (2109) cahahopie

Več podobnih tem