Zase jsem se zasek :( – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Zase jsem se zasek :( – C / C++ – Fórum – Programujte.comZase jsem se zasek :( – C / C++ – Fórum – Programujte.com

 

hmm
~ Anonymní uživatel
25 příspěvků
4. 4. 2007   #1
-
0
-

Už vážně nevím, co mám dělat.. Učím se C++ po předchozí znalosti PHP a Pythonu podle knihy C++ za 21 dní. Ze začátku, asi tak do 7 lekce, tedy po objekty šlo všechno dobře, ale pak jsem se zasekl u ukazatelů a odkazů, ale i ty jsem po nějakém tom dni nakonec pochopil, jenomže teď už jsem ztracen úplně... :( komlpetně jsem se zasekl u 14 lekce, tedy mnohotvarnosti a propojených seznamů... Prostě úplně nechápu věci, které tam používají, ale nikde předem nenapíší co dělají, prostě si to mám domyslet. Ve 13 lekci použijí zápis virtual funkce() = 0 a v 14 na konci řeknou co to děla :(. Nevím jestli jsem prostě antitalent na programování, ale prostě se přes to místo nemůžu dostat a konec :(. Nemůžete mi někdo pomoct? Na ukázku dovedností, které asi mám posílám zdroják mého asi nej. programu.
PS: Používám Visual C++ 6 (hodlám se učit nativní programování, ne DOTNET)

Tady je ta ukázka(není to doladěné, pokuď se například zadá nějaké písmeno místo čísla zblázní se to):



#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream>
#include <string>

#define GetRandom( min, max ) ((rand() % (int)(((max) + 1) - (min))) + (min))

using namespace std;

class Slovicka
{
public:
void zkousej(int obtiznost);
void zkousejan(int obtiznost);
Slovicka();
~Slovicka() {}
private:
string slovickaAnL[5];
string slovickaCzL[5];
string slovickaAnS[5];
string slovickaCzS[5];
string slovickaAnT[5];
string slovickaCzT[5];
};
Slovicka::Slovicka()
{
slovickaAnL[0] = "car" ;
slovickaAnL[1] = "house" ;
slovickaAnL[2] = "wheel" ;
slovickaAnL[3] = "heart" ;
slovickaAnL[4] = "luck" ;

slovickaCzL[0] = "auto" ;
slovickaCzL[1] = "dum" ;
slovickaCzL[2] = "kolo" ;
slovickaCzL[3] = "srdce" ;
slovickaCzL[4] = "stesti" ;

slovickaAnS[0] = "hay";
slovickaAnS[1] = "fight";
slovickaAnS[2] = "scar";
slovickaAnS[3] = "dye";
slovickaAnS[4] = "puck";

slovickaCzS[0] = "seno" ;
slovickaCzS[1] = "boj" ;
slovickaCzS[2] = "jizva" ;
slovickaCzS[3] = "barva" ;
slovickaCzS[4] = "puk" ;

slovickaAnT[0] = "bent";
slovickaAnT[1] = "outfit";
slovickaAnT[2] = "kettle";
slovickaAnT[3] = "soul";
slovickaAnT[4] = "eldest";

slovickaCzT[0] = "ohnuty" ;
slovickaCzT[1] = "vystroj" ;
slovickaCzT[2] = "konvice" ;
slovickaCzT[3] = "duse" ;
slovickaCzT[4] = "nejstarsi" ;






}


void Slovicka::zkousej(int obtiznost)
{
switch (obtiznost)
{
case (1):
{
for (int i = 0; i <= 4; i++)
{
string slovickocz;
cout << "\n\nSlovicko: " << slovickaAnL[i] << " Cesky: ";
cin >> slovickocz;
if (slovickocz != slovickaCzL[i])
cout << "\nSpatne, spravne je " << slovickaCzL[i];
else
cout << "\nSpravne";
}
break;
}
case (2):
{
for (int j = 0; j <= 4; j++)
{
string slovickocz2;
cout << "\n\nSlovicko: " << slovickaAnS[j] << " Cesky: ";
cin >> slovickocz2;
if (slovickocz2 != slovickaCzS[j])
cout << "\nSpatne, spravne je " << slovickaCzS[j];
else
cout << "\nSpravne";

}
break;
}
case (3):
{
for (int k = 0; k <= 4; k++)
{
string slovickocz3;
cout << "\n\nSlovicko: " << slovickaAnT[k] << " Cesky: ";
cin >> slovickocz3;
if (slovickocz3 != slovickaCzT[k])
cout << "\nSpatne, spravne je " << slovickaCzT[k];
else
cout << "\nSpravne";
}
break;
}

}

}

void Slovicka::zkousejan(int obtiznost)
{
switch (obtiznost)
{
case (1):
{
for (int i = 0; i <= 4; i++)
{
string slovickoan;
cout << "\n\nSlovicko: " << slovickaCzL[i] << " Anglicky: ";
cin >> slovickoan;
if (slovickoan != slovickaAnL[i])
cout << "\nSpatne, spravne je " << slovickaAnL[i];
else
cout << "\nSpravne";
}
break;
}
case (2):
{
for (int j = 0; j <= 4; j++)
{
string slovickoan2;
cout << "\n\nSlovicko: " << slovickaCzS[j] << " Anglicky: ";
cin >> slovickoan2;
if (slovickoan2 != slovickaAnS[j])
cout << "\nSpatne, spravne je " << slovickaAnS[j];
else
cout << "\nSpravne";

}
break;
}
case (3):
{
for (int k = 0; k <= 4; k++)
{
string slovickoan3;
cout << "\n\nSlovicko: " << slovickaCzT[k] << " Anglicky: ";
cin >> slovickoan3;
if (slovickoan3 != slovickaAnT[k])
cout << "\nSpatne, spravne je " << slovickaAnT[k];
else
cout << "\nSpravne";
}
break;
}

}

}

int main()
{
bool *ukKonec = new bool;
for (int m = 0; m < 2; m++)
{
for (int m = 0; m < 79; m++)
cout << "*";
cout << "\n";

}
Slovicka test;
for (;;)
{
int obtiznost = 0;
int typ = 0;
cout << "\n*****Vitejte v programu Slovicka*****";
cout << "\n*****Toto je pouze testovaci verze*****";
cout << "\n*****Vyberte typ zkouseni*****";
cout << "\n*****Anglicky - Cesky(1)*****\n*****Cesky - Anglicky(2)*****\n\n";
cin >> typ;
cout << "\n*****Vyberte ktery test chcete spustit*****\n\n";
cout << "\n*****Lehky(1)*****\n*****Stredni(2)*****\n*****Tezky(3)*****\n";
cin >> obtiznost;

if (typ == 1)
{
switch (obtiznost)
{
case (1):
test.zkousej(1);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom;
cin >> pom;
if (pom == 'y')
*ukKonec = true;
break;
case (2):
test.zkousej(2);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom2;
cin >> pom2;
if (pom2 == 'y')
*ukKonec = true;
break;
case (3):
test.zkousej(3);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom3;
cin >> pom3;
if (pom3 == 'y')
*ukKonec = true;
break;
default:
*ukKonec = false;
}
if (*ukKonec == true)
break;

}
else
switch (obtiznost)
{
case (1):
test.zkousejan(1);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom;
cin >> pom;
if (pom == 'y')
*ukKonec = true;
break;
case (2):
test.zkousejan(2);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom2;
cin >> pom2;
if (pom2 == 'y')
*ukKonec = true;
break;
case (3):
test.zkousejan(3);
cout << "\nChcete ukoncit program(y/n)?\n";
char pom3;
cin >> pom3;
if (pom3 == 'y')
*ukKonec = true;
break;
default:
*ukKonec = false;
}
if (*ukKonec == true)
break;

}
return 0;
}


Jinak zde je spustitelná verze: http://jackxl.php5.cz/Slovicka.exe



Nahlásit jako SPAM
IP: ...–
midin
~ Anonymní uživatel
320 příspěvků
4. 4. 2007   #2
-
0
-

Vůbec se ničeho neděs, vykašli se na to a normálně to přeskoč. Tak jsem to dělal i já, po čase se k tomu vrátil, popř. zkusil jiný zdroj a vše bylo OK. Rozhodně si nemysli, že nemáš talent, chce to jen pilovat, pilovat, pilovat :)

Nahlásit jako SPAM
IP: ...–
survik1
~ Moderátor
0
Posthunter
4. 4. 2007   #3
-
0
-

nj, odkazy a ukazatele je nejtěžší část celého orientu C++ (nemluvím teď o API, různých knihovnách, 3d grafice...).

Mimochodem, proč používáš hlavičkové soubory pro C?

Nahlásit jako SPAM
IP: ...–
Život je jen hra, která se nedá vyhrát.
hmm
~ Anonymní uživatel
25 příspěvků
4. 4. 2007   #4
-
0
-

Původně jsaem tam používal náhodné číslo dělané přes tyto hlavičkové soubory, ale pak jsem to zrušil a zapkměl smazat :)

Nahlásit jako SPAM
IP: ...–
hmm
~ Anonymní uživatel
25 příspěvků
6. 4. 2007   #5
-
0
-

Fakt nevím co s tím :( sem ze zoufalství celé velikoknoce propařil :(

Nahlásit jako SPAM
IP: ...–
Dodiq0
Newbie
7. 4. 2007   #6
-
0
-

To hmm: chlape, skús sa na tie veci kuknúť v knihe Mistrovstvi v C++ od "Stephan Prata", myslím, že na portáli blackhole.sk, máš link na stiahnutie, je to výborná kniha. :p gl

Nahlásit jako SPAM
IP: ...–
Beginner
midin
~ Anonymní uživatel
320 příspěvků
7. 4. 2007   #7
-
0
-

To Dodiq: Příště bez warezu, díky.

Nahlásit jako SPAM
IP: ...–
Dodiq0
Newbie
8. 4. 2007   #8
-
0
-

sry

Nahlásit jako SPAM
IP: ...–
Beginner
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, 88 hostů

Podobná vlákna

Zásek v programování — založil milanbartax

Zásek u 1. lekce :( — založil Qwonter

Zase já-need second help — založil Dan Stahar

Zase spamování — založil hlucheucho

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ý