Názory ke článku C++ - 12. lekce
Omlouvám se, do téo chvíle nebyly zdrojáky zkompilovatelné. byly interpretovány některé části kodu jako html. Opraveno. Thx Crockick
23. 12. 2005
Chtěl bych se zeptat jak by bylo možné sloučit linked list se struct.Chtěl bych strukturu struct vkládat do linked listu. A pak ten linked list například třídit. Jak by se to dalo vyřešit?
Za odpověď Vám děkuji.
30. 12. 2005
Když se koukám na tyhle tutoriáli, tak si řikám že ,Stephen Prata : Mistrovství v C++, je docela dobraá knížka (mám jí taky ;) - nechechápu proč jí nemáte v doporučený literatuře ale jen v kolonce "ostatní literatura" když to podle ní všechno děláš ...
6. 2. 2006
To už je trapný umim to nazpamnět všechny ůkoly sem udělal nechcete sem dávat návody(ukázky zdrojáků) na hry???
4. 3. 2006
Text tohoto komentáře byl vymazán, jelikož porušoval publikační pravidla našeho e-zinu! Redakce
12. 3. 2006
No jo, holta panacci jsou liny a neumej vymyslet kloudnej, originalni a zajimavej priklad.
mysliš že po tých 12 lekciach by si bol schopny vytvoriť hru? na hru nestačí iba c++, samozrejme ked nechces robit textovku, na to aby si mohol robit hry nad tym musis trochu dlhsie sediet ako 12 dni či mesiac. po par rokoch prace sa ozvi a potom sa spytaj
mimochodom bude dalsia lekcia? ja chcem dalsiu a dalsiu az dokedy neprirastiem k PC a potom dalsie :)
ale vazne bude dalsia?
Ode me jiz ne. Presedlal jsem ke grafice a k prograovani ala c uz se nechci venovat. Jini autori ale pokracovat budou (navaze se i na tento kurz).
a nevies mi povedat kedy priblizne by vysila dalsia lekcia, cize lekcia c.13? pretoze hoci nie som v 12 ale iba v 9(dosiel som sem za 9 dni) tak chcem co najrychlejsie ist dalej pretoze ma to bavi a obavam sa ze keby som na chvilu prestal uz by sa mi nechcelo pokracovat. stalo sa mi to uz viackrat
Jak můžu inicializovat pomocí ukazatelů pole???
např:
int * pole[* a]=new int; //zde mi to hlásí chybu...
delete pole[*a];
12. 11. 2006
Nevím, co myslíš. Alokuješ paměť pro ukazatel, který na něco poté bude ukazovat (např. na pole), ne? Např.:
int pole[20];
int * pPole = new int;
pPole = &pole[20];
5. 12. 2006
Myslim si ze sa inspirujes knihou mistrovstvi v c++.Ak nie nevadi. Ja som sa sekol prave na jednej lekcii kde je v ulohe napisane: cout.precision(2);cout.self(ios::fixed,ios::floatfield);cout.self(ios::showpoint); naco to sluzi? Vydim ze ma to nieco spolocne s ostrem kniznicou, ale neviem co. Prosim, potrebujem to surne vediet na prechod do dalsej lekcie. dik
Mas uplnu pravdu. Ja som sa zacal ucit c++ koli vyvoji hier a coskoro som zistil, ze to robim len v prikazovom riadku. Ak chce niekto robyt vobec vo windowse musi sa naucit nejaku tu kniznicu. Napr MFC. A nie je to sranda. C++ je zaklad a tam je toho ovela viac. Takze ak je nejaky macher co si mysli ze to zvladne nech nam to ukaze.
ak chces inicializovat nie dynamicke pole, ale staticke tak to urob takto: int*meno_pola[velkost_pola]; ak chces zas inicializovat dynamicke pole tak: int*meno_pola = new int[velkost_pola];to dynamicke pole potom musis vymazat: delete[]meno_pola.POZOR!ak vytvoris dynamicke pole napr.: int*meno_pola = new int, nesmies pouzit hranate zatvorky pri 'delete meno_pola'. Prazdne hran. zatvorky definuju, ze ma vymazat cele pole a nie iba prvok pola. To znamena ak nepouzijes hranate zatvorky pri inicializovani dynamickeho pola tak ich nepouzivaj ani pri deletovani.Tvoj zapis bol nasledovny: int*pole[*a]=new int; to *a tam robilo chybu. Nastavil si 'a' ako ukazovatela na nejaky prvok. To znamena ze ked si mal niekde zapis: int a = 4; tak si sa asi snazil dosadit adresu (4) tam kde patrila hodnota. Pametaj. Ak inicializujes ukaovatel napr. '*a' tak potom 'a' je jeho adresou (int*a=24;cout << a;(tu ti vypise adresu 'a' cize napr. 0x003f4))avsak ked mas napr. 'a' tak potom '&a' je jeho adresou (int a=24;cout << &a(vypise ti adresu 'a')). Ak by si napriek tomu nieco nechapal, alebo hocico ine, tak napis.
Jak si můžu stáhnout kurzy do PC přes PDF to nejde a přes mail taky ne,prosím pomozte.
10. 4. 2007
No pokud nejsem takovej machr a nedokazu to, tak se asi muzu rozloucit se zapoctem. :D
15. 5. 2007
Jak se v C++ zadavaji vstupni parametry?Syntaxe,posloupnost,cokoli vas napadne. Poradte. Diky
no v tve promluve se mi nelibi jedna vec: "... staticke tak to urob takto: int*meno_pola[velikost_pola];..." to ale prece deklaruje ukazatel na pole int-ů o velikosti [velikost_pola], tedy jakoby ukazatel na 'ukazatel'(vim ze ukazatele nejsou totozne s poli, ale dosti podobne)... standardne se staticke pole deklaruje (pokud se nemylim:) int jmeno[velikost], tedy bez *. ta * by tam mela smysl, pokud bys chtel takto alokovat posleze matici o pevnem poctu 'radku'...
ale jinak mas pravdu (rekl bych...)
7. 7. 2007
Ty tam mas :
temp = a;
a = b;
b = temp;
- je to sice pekne spravene ale exizstuje aj lepsie sposob pri ktorom nepotrebujes 3 premene :
a=b-a;
b=b-a;
a=b+a;
-Prehodi A s B - vyskusaj si to ;)
27. 7. 2007
Sice je to docela pěkný příklad, ale jsem celkem zvědav, jak by ti to fungovalo na takové řetězce,které se s matematikou moc nemusí. A že tam budou je docela možné, vzhledem k tomu, že to byl příkladný příklad k templatum, kde se počítá s různými datovými typy.
Pro ty kteří začínají a chtějí si ušetřit nějakou tu minutku hledáním co to zas
nefunguje :
U kompilátoru dev-cpp nemůžete v tomto příkladu použít jméno fce swap ale Swap.
Asiže fce swap už je nějak jinde nadefinovaná...
Jako trvalo mi to dlouho než sem tu chybu našel.. :)))
20. 3. 2008
Potřeboval bych pomoct jestly někdo neví jak nastavit podmínku něco jako : if press ,w, ...., neboli když zmáčkne tlačítko třeba ,w, tak...., to už neni podstatný jde mi o tu podmínku , ale kdyby to šlo bez entru..,děkuju
8. 4. 2008
Prave jsem "dostudoval" :D základní C++ a musím říci, že tato série byla úžasný odrazový můstek... Skvěle vysvětleno, dobré příklady... Autor určitě vycházel z Mistrovství v C++, a povedlo se mu vystihnout danou tématiku a problematiku snad ještě lépe než samotná kniha (teda až na ukazatele, které jsem nemohl za boha pochopit, naštěstí mi pomohl jeden obrázek z nejmenované stránky, a poté už mi zde i tento výklad přisel mnohem více srozumitelný).
Nyní bych rád hupsnul na C++ OOP a věřím, že s tímto základem to nebude až tak moc těžké sousto.
Tímto komentářem bych chtěl poděkovat autorovi, za to, že mi objasnil základy C++ ;)
10. 7. 2009
Reagoval na komentář od uživatele Kamo :
Sice reaguju už trochu pozdě, ale tohle je velice dobrý nápad, který si to podle mne zaslouží :-)
Jenom nevím, jak by se to chovalo v případě přetečení čísla... nicméně dalo by se to trochu vylepšit použitím exkluzivního bitového součtu :-)
a = a xor b;
b = a xor b;
a = a xor b;
11. 8. 2009
ahoj lidi, mohl by mi někdo prosím pomoct s takovou blbostí?
mám objekt a ten má vlastnosti.. chci udělat pole objektů abych pak mohl zapisovat do vlastností asi takhle
objekt jmeno[10];
jmeno[1]->vlastnost=1;
jmeno[2]->vlastnost=2;
atd..
problém je že při deklaraci mi to hází chybu:-/
přemýšlým jesi není třeba mít pole ukazatelů na objekty ale stejně..
objekt *(jmeno[10]) = new objekt;
zase hází chybovku
neví někdo co s tím?
tímto jsme se naučili celé c++ nebo má nějaké pokračévání jako třeba lekce 13 atd....?
Chtěl bych se zeptat jak lze uložit data , okončit program a po novém otevřením mírt data z minulé aktivity ?
20. 5. 2013
NSD Eukliduv algoritmus:
# include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
for (;;){
cout << "Program pro vypocet NSD dvou cisel"<<endl;
cout << "Pouze prirozena cisla\n\n";
int a,b,A,B;
for (;;){
cout <<"Zadej cislo a: ";
cin >> a;
if (a>0) {A=a;break;}}
for (;;){
cout <<"Zadej cislo b: ";
cin >> b;
if (b>0) {B=b;break;}}
for (;;){
if (a<b) b=b-a;
if (a>b) a=a-b;
if (a==b) break; }
cout << "NSD cisel "<<A<<"a"<<B<<"je cislo"<<a<<endl<<endl;
cout << "Konec? (a/n)";
char konec;
cin >> konec; cin.ignore (255,'n');
if (konec=='a') break;
system ("CLS"); }
system ("PAUSE")
return 0;
}
20. 5. 2013
Zamena dvou promennych / pro kamaradku
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int a,b;
cout << "Program na zamenu hodnot na promennych A a B\n\n";
cout << "Zadej hodnotu promenne A: ";
cin >> a;
cout <<"Zadej hodnotu promenne B: ";
cin >> b;
a=a+b;
b=a-b;
a=a-b;
cout <<endl << "Hodnota promenne A je nyni: " <<a <<endl;
cout << "Hodnota promenne B je nyni: " <<b <<endl <<endl;
system("PAUSE");
return 0;
}
20. 5. 2013
Opakovani programu:
int main()
{
zacatekProgramu:
cout << "dnes je pondeli...\n\n";
cout << "Chces ukoncit program? (a/n) ";
char znak;
cin >> znak; //cin.ignore(255,'\n'); // zruší zbývající znaky na řádku
if (znak == 'n')
{
system("CLS"); // smazání obrazovky
goto zacatekProgramu;
}
20. 5. 2013
PROSPECH ZAKA C++
float a,n,s,max,prum;
cout << "Zjisteni prospechu z n znamek? \n";
cout << "Kolik bude znamek? ";
cin >> n;
for (int i=0; i<n; i++)
{
cout << "Zadej znamku: ";
cin >> a;
s = s + a;
if (max<a) max=a;
}
prum=s/n;
if (max<3&&prum<=1.5) cout << "S vyznamenanim";
else if (max<5) cout << "Prospel";
else cout << "Neprospel";
20. 5. 2013
Příklad :KOULE
float pi,r,S,V;
cout << "Program pro vypocet objemu a povrchu koule" << endl;
cout << "vloz hodnotu promenne r:" ;
rznovu:
cin >> r;
if (r<0)
{
cout << "Zadavej kladna cisla" << endl;
goto rznovu;
}
cout << endl;
pi=3.14;
V=4*pi*r*r*r/3;
S=4*pi*r*r;
cout << "Objem koule je: " << V << " cm3" << endl;
cout << "Povrch koule je: " << S << " cm2"<< endl;