TUTORIAL -C++ programiranje

poruka: 41
|
čitano: 76.926
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
offline
TUTORIAL -Osnove C++ programiranja

U ovome ću tutorialu objasniti osnove c++ programiranja običnim početnicima. Početi ću od osnova te ću sve pomno objasniti. Aplikacije koje ćemo ovdje praviti biti će napravljene u malom crnom prozoru jer je prvo potrebno naučiti osnove programiranja pa tek onda preći na lijepe prozore. Redovito ću objavljivati postove.Pa počnimo:

 

1. Što je ustvari programiranje?

Programiranje je davanje uputa računalu što učiniti. Npr. vi nekome kažete uđi u trgovinu, kupi nešto pa se vrati. Tako mi šturo rečeno dajemo upute računalu što činiti. Mi upute računalu dajemo u nama razumljivu obliku koji računalo ne razumije. Računalo razumije samo 0 i 1. Stoga je naš program potrebno pretvoriti u računalu razumljiv oblik tj. kompajlirati.

 

2. Što je kompajler?

Kompajler je program koji naš program pretvara u računalu razumljiv oblik. Na prvim računalima podatci su se upute unosile puttem 0 i 1. Onda se pojavio assambler. To prvi nekakav oblik programskog jezika jer je sadržavao neke naredbe poput MOV i GOTO. Dalje dolaze prvi niski programski jezici. Mi danas programiramo u visokim programskim jezicima te mi ne moramo poznavati arhitekturu računala da bismo programirali. Kompjaler može biti kao zaseban program, ali većina dolazi sa razvojnim okruženjem tj. IDEom

 

3. Što je potrebno za programirati?

Za programiranje potrebno je: Kompajler tj. IDE, puno volje i vremena i neka knjiga ili tutorial.

 

4. Što je IDE?

IDE je razvojno okruženje koje nam olakšva programiranje. On većinom dolazi sa kompajlerom. Početnicima je vjerovatno najpoznatiji Visual C++. On je skup program no njegova express inačica se može skinuti ovdje. Dalje poznati su codeblocks i dev c++. Početnicima preporučujem dev c++ te ću prema njemu i raditi.

 

5. Mogu li u c++ praviti "windows" aplikacije?

Da. Ali za to trebate naučiti rad u bibliotekama specijaliziranim za to poput windows.h.

 

Na ovom linku možete pronaći fino pdf objašnjenje osnova c++-a:

http://free-zg.htnet.hr/jsribar/demistif.pdf

Ako slučajno pomognem molimo pritisnite gumb hvala.
Poruka je uređivana zadnji put čet 1.7.2010 19:52 (captain_soap_McTawish).
 
14 0 hvala 11
14 godina
odjavljen
offline
TUTORIAL -C++ programiranje

Objasni pristupe kod programiranja, zasto je C++ objekto orijentirani programski jezik, i sto to znaci... Ima tu jos puno posla, i tutorijal nije bez primjera, ovo je vise copy paste. I to svoje vlastite primjere. Počet od jednostavnog hello world primjera pa sve do tezih i tezih, i pokazat upotrebu klasa i svega.

Slobodno stisni thumb down ako te to toliko pali
Poruka je uređivana zadnji put pet 25.6.2010 15:52 (Weky).
Moj PC  
0 0 hvala 0
14 godina
offline
RE: TUTORIAL -Osnove C++ programiranja
captain_soap_McTawish kaže...

U ovome ću tutorialu objasniti osnove c++ programiranja običnim početnicima. Početi ću od osnova te ću sve pomno objasniti. Aplikacije koje ćemo ovdje praviti biti će napravljene u malom crnom prozoru jer je prvo potrebno naučiti osnove programiranja pa tek onda preći na lijepe prozore. Redovito ću objavljivati postove.Pa počnimo:

 

1. Što je ustvari programiranje?

Programiranje je davanje uputa računalu što učiniti. Npr. vi nekome kažete uđi u trgovinu, kupi nešto pa se vrati. Tako mi šturo rečeno dajemo upute računalu što činiti. Mi upute računalu dajemo u nama razumljivu obliku koji računalo ne razumije. Računalo razumije samo 0 i 1. Stoga je naš program potrebno pretvoriti u računalu razumljiv oblik tj. kompajlirati.

 

2. Što je kompajler?

Kompajler je program koji naš program pretvara u računalu razumljiv oblik. Na prvim računalima podatci su se upute unosile puttem 0 i 1. Onda se pojavio assambler. To prvi nekakav oblik programskog jezika jer je sadržavao neke naredbe poput MOV i GOTO. Dalje dolaze prvi niski programski jezici. Mi danas programiramo u visokim programskim jezicima te mi ne moramo poznavati arhitekturu računala da bismo programirali. Kompjaler može biti kao zaseban program, ali većina dolazi sa razvojnim okruženjem tj. IDEom

 

3. Što je potrebno za programirati?

Za programiranje potrebno je: Kompajler tj. IDE, puno volje i vremena i neka knjiga ili tutorial.

 

4. Što je IDE?

IDE je razvojno okruženje koje nam olakšva programiranje. On većinom dolazi sa kompajlerom. Početnicima je vjerovatno najpoznatiji Visual C++. On je skup program no njegova express inačica se može skinuti ovdje. Dalje poznati su codeblocks i dev c++. Početnicima preporučujem dev c++ te ću prema njemu i raditi.

 

5. Mogu li u c++ praviti "windows" aplikacije?

Da. Ali za to trebate naučiti rad u bibliotekama specijaliziranim za to poput windows.h.

 

6. Mogu li u c++ praviti web aplikacije?

Ne.

da li mi je pametnije prec sa c++ na basic i onda radit u visual basicu windows aplikacije ili mi je pametnije cpp i onda preko njeg radit win aplikacije i sta je od tog dvoje lakse

14 godina
odjavljen
offline
RE: TUTORIAL -Osnove C++ programiranja

Bitno je razumijeti riječ "lakse". Ja recimo neznam za tu rijec. Ja negledam kako cu nesto dobiti lakse, vec gledam kako da to dobijem na bolji nacin, da to bude sto bolje, nije mi cilj na brzinu zavrsit. Ako treba posvetit cu mjesece i mjeseca rada jednom projektu, a ostavit sve drugo ako ce rezultat biti vrijedan.

Visual Basic je reinkarnacija BASIC-a, u osnovi je jako jednostavan, ali ima puno ogranicenja, C++ je mocnij jezik za izradu bilo cega viseg. Odluci sta te zanima pa pogledaj sta ti vise odgovara. Nemoj gledat kako ces na brzinu nesto zavrsiti, a da se to zbog toga rusi svako malo i ima memory leakova zbog nekih gluposti, kao reicmo deklaracije varijable sa širokim rasponom brojeva koji nisu potrebni.

Slobodno stisni thumb down ako te to toliko pali
Poruka je uređivana zadnji put pet 25.6.2010 15:51 (Weky).
14 godina
offline
RE: TUTORIAL -Osnove C++ programiranja
Weky kaže...

Bitno je razumijeti riječ "lakse". Ja recimo neznam za tu rijec. Ja negledam kako cu nesto dobiti lakse, vec gledam kako da to dobijem na bolji nacin, da to bude sto bolje, nije mi cilj na brzinu zavrsit. Ako treba posvetit cu mjesece i mjeseca rada jednom projektu, a ostavit sve drugo ako ce rezultat biti vrijedan.

Visual Basic je reinkarnacija BASIC-a, u osnovi je jako jednostavan, ali ima puno ogranicenja, C++ je mocnij jezik za izradu bilo cega viseg. Odluci sta te zanima pa pogledaj sta ti vise odgovara. Nemoj gledat kako ces na brzinu nesto zavrsiti, a da se to zbog toga rusi svako malo i ima memory leakova zbog nekih gluposti, kao reicmo deklaracije varijable sa širokim rasponom brojeva koji nisu potrebni.

da onda ostanem na c++? ali u kojem onda programu mogu raditi win aplikacije u c++?

14 godina
odjavljen
offline
RE: TUTORIAL -Osnove C++ programiranja

To je compiler.

Meni je najbolji Visual Studio 2008, fino i brzo se snadem u njemu i koristim ga vec par godina.

Odluci sam sto zelis i sta te zanima. Basic se danas nigdje ne koristi osim mozda sto ga u skolama uce.

Slobodno stisni thumb down ako te to toliko pali
Poruka je uređivana zadnji put pet 25.6.2010 16:00 (Weky).
14 godina
offline
RE: TUTORIAL -C++ programiranje
Weky kaže...

Objasni pristupe kod programiranja, zasto je C++ objekto orijentirani programski jezik, i sto to znaci... Ima tu jos puno posla, i tutorijal nije bez primjera, ovo je vise copy paste. I to svoje vlastite primjere. Počet od jednostavnog hello world primjera pa sve do tezih i tezih, i pokazat upotrebu klasa i svega.

 Hoću! To mi je i cilj naime želim da ovaj tutorial objasni početnicima osnove programiranja i osnove objektnog programiranja. Danas sam planirao početi sa osnovama međutim kompjuter mi se ruši pa nisam bio u mogućnosti da napišem nastavak danas. Budući da je kasno sutra ću nastaviti tutorial. U ovome tutorialu planiram detaljno proći osnove c++-a. Inače sve primjere pišem sam. Još dok sam učio koristio sam svoje primjere jer nisam volio prepisivati iz knjiga. NAPOMENA: Kod mene ništa nije copy/paste, sve postove pišem sam svojim riječima pa i onaj prethodni

 

 

Hambrle kaže...

da li mi je pametnije prec sa c++ na basic i onda radit u visual basicu windows aplikacije ili mi je pametnije cpp i onda preko njeg radit win aplikacije i sta je od tog dvoje lakse

 Pametnije ti je početi c++ jer je on viši programski jezik i u njemu možeš napraviti gotovo sve. 

 

Tutorial ću nastaviti sutra.

Ako slučajno pomognem molimo pritisnite gumb hvala.
Poruka je uređivana zadnji put pet 25.6.2010 22:05 (captain_soap_McTawish).
14 godina
offline
TUTORIAL -C++ programiranje

 C++ je programski jezik nastao na temelju c-a. Prvotno se zvao c sa razreredima. Njegova moć je upravo u tome, u objektnom programiranju. Mi  njemu možemo kreirati vlastiti tip podataka tj. objekt. Objekt ima svoje sučelje tj. ono što može raditi. Počet ćemo sa osnovama pa ćemo onda doći do objektnog programiranja. Poznavanje objektnog programiranja je neophodno da bi se mogli praviti "windows" aplikacije temeljene na događajima. Pokazati ću vam kako rukovati sa ide-om

 

DEV -C++

Ovdje ga učitajte. Nakon što ga učitate, instalirajte ga. Pokrenite ga.

 

1.Nakon što se ga pokrenuli pritisnite u gornjem lijevom kutu ikonicu za new project.

 

2. Otvoriti će vam se prozor new project. Pod name upišiti ime projekta tj. programa. Odmah pokraj toga imate izbornik u kojem odlučujete u kojem ćete jeziku programirati. Vi izaberite C++ Project. Označite kvadratić  Make default language. Dalje iznad izaberite Console application. Pritisnite ok.

3. Pojaviti će vam se prozor u kojem trebate odlučiti gdje ćete pohraniti projekt. Savjetujem vam da napravite neku mapu na c disku i u nju pohranjujete programe. Nakon što ste izabrali putanju pritisnite ok.

  

4. Sada vam se pojavio prostor u kojem vi pravite programe. Vjerovatno je već došlo nešto ispisano. Središnji dio je mjesto u kojem upisujete kod. U lijevome pravokutniku vi vidite klase, dadoteke projekta. Nakon što upišete kod koji ćemo polije raditi morate ga kompajlirati. Zato gore iznad imate, red ispod new project imate tri kvadratića za kompajliranje. Idemo sa lijeva na desno. Prvim pokrećemo prevođenje tj. kompajliranje programa. Drugim pokrećemo prevedeni program. Trećim pokrenemo prevođenje pa automatski pokrenemo program.

 

 

5. I program se pokrene.

Ako slučajno pomognem molimo pritisnite gumb hvala.
Poruka je uređivana zadnji put sub 26.6.2010 9:15 (captain_soap_McTawish).
 
3 0 hvala 4
14 godina
offline
TUTORIAL -C++ programiranje

Sada ćemo početi sa pisanjem koda.

Napišite u svoj IDE sljedeće:

 

#include <iostream>

#include <cstdlib>

 

using namespace std;

 

int main()

{

          cout<<"Ovo je moj prvi c++ program"<<endl;

          system("PAUSE");

          return 0;

}

 

Sada ćemo ovaj program izanalizirati.

Prvo što ćete primjetiti da sve naredbe(točnije većina jer se neke stvari ne pišu tako) završavaju sa sa točkom i zarezom(;). U c++ svaka naredba mora tako završiti osim određenih stvari, no nemojte se time zamarati.

#include <iostream> uključuje standardnu biblioteku c++ programskog jezika. U njoj se nalaze izlazni i ulazni tok. Mi ovdje koristimo izlazni budući da naređujemo da program nešto ispiše. #include nije naredba već je to pretprocesorska naredba. Prevoditelj će nakon što nju vidi otići u biblioteku iostream i prvo nju prevesti pa naš program.

 

#include <cstdlib> uključuje biblioteku u kojoj se nalazi naredba system("PAUSE).

 

using namespace std; uključuje imenik standardnih funkcija c++.

 

int main() je početak funkcije u kojoj mi izvodimo rogram. Tu određujemo što će program raditi. Svaki c++ program može imati samo jednu main funkciju.

 

{ } Ovo su vitičaste zagrade koje određuju tj, odvajaju blokove naredbi, u ovom slučaju određuju odakle dokle se nalati main funkcija. Poželjno je da se nakon svake otvorene vitičaste zagrade sljedeće naredbe malo uvuku radi čitljisvosti programa.

 

cout je naredba za ispis. Njom ispisujemo sadržaj na monitor. Dalje nalazimo operator << za izlazni tok. On govori da će se ovo što slijedi ispisati na ekran. Među navodnicima nalazimo ono što će se ispisati. Tekst izričito mora biti u navodnicima. Opet nalazimo narebu za izlazni tok pa nakon nje naredbu endl. Ona naređuje programu dapređe u novi red. Ako ne bismo tu naredbu napisali onda pprogram ne bi prešao u novi red. Probajte pa ćete vidjeti što se će se dogoditi.

Pogledajmo malo:

cout<<"Ovo je moj prvi c++ program"<<endl;

Primjetit ćete da imamo dva operatora za izlazni tok. Prvo ispisujemo tekst pa onda ispisujemo novi red. To smo mogli i rastaviti pa bi to izgledalo ovako:

cout<<"Ovo je moj prvi c++ program";

cout<<endl;

No mogli smo i nastaviti pisati tekst:

cout<<"Ovo je moj prvi c++ program"<<endl<<"Ovo je nastavake"<<endl;

Program će u jedno redu ipisati Ovo je moj prvi.. pa će preći u novi red pa ispisati Ovo je nastavak... Tako možemo neograničeno pisati u jednome redu. Da smo ovo rastavljali to bi izgledalo ovako:

cout<<"Ovo je moj prvi c++ program";

cout<<endl;

cout<<"Ovo je nastavak";

cout<<endl;

Program će ispisati apsolutno isto. Ako izbacimo ovo endl između dva teksta onda će program ispisati prvo Ovo je moj... pa će u istom redu nastaviti Ovo je na... Probajte.

 

system("PAUSE"); naređuje da program ostane upaljen. Ako je izbacimo program će se pokrenuti i onda odmah ugasiti tako da nećemo stići vidjeti što piše. Probajte ju izbaciti

 

return 0; naređuje da se program izvodi dok mi nešto ne pritisnimo pa se prestaje izvoditi.

 

To je vaš prvi program. Nadam se da ste dobo shvatili dosadašnje gradivo. Kasnije ćemo nastaviti.

 

Ako slučajno pomognem molimo pritisnite gumb hvala.
 
3 0 hvala 4
13 godina
neaktivan
offline
RE: TUTORIAL -Osnove C++ programiranja
captain_soap_McTawish kaže...

6. Mogu li u c++ praviti web aplikacije?

Ne.

Da :)

14 godina
offline
RE: TUTORIAL -Osnove C++ programiranja
dario111cro kaže...
captain_soap_McTawish kaže...

6. Mogu li u c++ praviti web aplikacije?

Ne.

Da :)

 Ispričavam se na pogrešci no možeš li malo pojasniti.

Ako slučajno pomognem molimo pritisnite gumb hvala.
14 godina
offline
TUTORIAL -C++ programiranje

Idemo dalje.

 

#include <iostream>

#include <cstdlib>

 

using namespace std;

 

int main()

{

              int a;

              int b;

              int c;

              a=10;

              b=2;

              c=a+b;

              cout<<"Zbroj brojeva "<<a<<" i "<<b<<" je: "<<c<<endl;

              system("PAUSE");

              return 0;

}

 

Ovdje imamo početak koji smo objasnili.

int a nam je novo. Tu mi kreiramo varijablu tj. osiguravamo memorijski prostor. Znači time mi u RAM-u odredio određeno mjesto gdje ćemo nešto pohraniti. Tu smo napravili varijablu a. U int možemo pohraniti jedino cijele brojeve obično u rasponu od -32768 do32767. Ovaj raspon ne vrijedi za svako računalo i prevoditelj stoga ima razlika u rasponu. U njega ne možemo pohraniti decimalne brojeve tj. brojeve sa točkom.

Dalje smo kreirali varijable b i c. Primjetili ste da su varijable nazvane po slovima abecede. No to ne mora biti tako. Varijable u svome imenu mogu sadržavati slova, brojeve donju crtu(_)sa tim da prvi znak u imenu varijable ne smije biti broj. Niti se smiju pojaviti dvije varijable istog imena bez obzira na njihove tipove. Usto c++ razlikuje velika i mala slova stoga A i a nije isto

 

Dalje imamo a=10. Ovdje znak jednakosti označava pohranu vrijednosti. Vrijednost u koju pohranjujemo mora se nalaziti sa lijeve strane te se takve vrijednosti nazivaju lvrijednosti. Mi možemo imati i više lvrijednosti:

a=b=c=d=5;

Ovo čitamo sa desna na lijevo. 5 se pohranjuje u d, d se pohranjuje u c, c se pohranjuje u b, b se pohranjuje u a. Trebate znati da takvim načinom ne možemo pisati sve:

Dalje u varijablu b pohranjujemo broj 2.

Sada imamo

c=a+b;

Tu u varijablu c pohranjujemo zbroj vrijednosti varijabla a i b. Znači tu zbrajamo vrijednosti a i b te ih pohranjujemo u varijablu c.

Sada imamo:

cout<<"Zbroj brojeva "<<a<<" i "<<b<<" je: "<<c<<endl;

Tu prvo prikažemo tekst zbroj brojeva pa prikažemo vrijednost varijable a pa prikažemo tekst i pa varijablu b pa prikažemo je pa varijablu c pa preksočimo unovi red.

To smo mogli rastaviti:

cout<<"Zbroj brojeva ";

cout<<a;

cout<<" i ";

cout<<b;

cout<<" je: ";

cout<<endl;

Ako se pažljivije pogledali ove primjere vidjeli bi ste da smo polje zbroj brojeva ostavili jedno prazno mjesto pa stavili navodnike pa to učinili i u ostalim tekstovima. Da to nismo ostavili program bi prikazao Zbroj brojevaaibje:c. Probajte pa ćete vidjeti.

U ovom primjeru smo brojeve koje zbrajamo unosili direktno u source kodu. Vi biste vjerovatno željeli da to možete unijeti kad pokrenete program.

To ćemo izvesti ovako:

#include <iostream>

#include <cstdlib>

 

using namespace std;

 

int main()

{

              int a;

              int b;

              int c;

              cout<<"Unesite broj a"<<endl;

              cin>>a;

              cout<<"Unesite broj b"<<endl;

              cin>>b;

              c=a+b;

              cout<<"Zbroj brojeva "<<a<<" i "<<b<<" je: "<<c<<endl;

              system("PAUSE");

              return 0;

}

Imamo početak kao i prije pa onda prikažemo naredbu za ispis teksa unesite broj a. Dalje se pojavljuje nova naedba:

cin>>a

cin očitava ono što smo smo unije tijekom tipkovnice prije pritiska na tipku enter. Ovdje imamo operator za ulazni tok >>. Znači mi ono pritisnto sa tipkovnice spemamo u varijabl a; Onda kasnije to isto činimo i sa varijablom b.

 

U c++ varijable mi možemo:

a)oduzimati- operator (-)

b) množiti- operator(*)

c) dijeliti- operato(/)

d) računati ostatak putem modula -operator(%) Znači 5%2=1

e) zbrajati-operator(+)

Tako smo mogli napisati program za množenje ili oduzimanje.

Napomena: Dijeljenje int varijabli vam neće ipasti točno je int ne podržava decimalne brojeve pa će program prikazati najbližu moguću vrijednost.

Ako slučajno pomognem molimo pritisnite gumb hvala.
 
4 0 hvala 1
15 godina
protjeran
offline
RE: TUTORIAL -Osnove C++ programiranja
captain_soap_McTawish kaže...
dario111cro kaže...
captain_soap_McTawish kaže...

6. Mogu li u c++ praviti web aplikacije?

Ne.

Da :)

 Ispričavam se na pogrešci no možeš li malo pojasniti.

Npr. postoji Intraweb za C++ Builder pomoću kojeg je moguće raditi web aplikacije, a tu su i SOAP server aplikacije, WSDL importer, WebSnap... No to sve ovisi o C++ biblioteci koja se koristi. VCL biblioteka to sve ima.

14 godina
offline
TUTORIAL -C++ programiranje

Danas nastavljamo sa tutorialom.

 

Dosada smo za računanje brojeva koristili cjelobrojnu varijablu int. U nju nismo mogli unositi realne brojeve. Danas ćemo pojasniti još neke tipove varijabli i njihove međusobne pretvorbe.

 

float

Njegov raspon brojeva je od -3.4*1038 do -3.4*10-38. I ima točnost od 7 decimalnih znamenki. Zao će ovaj program za računnje točno izračunati rezultat.

 

#include <iostream>

#include <cstdlib>

 

using namespace std;

 

int main()

{

            float djeljenik;

            float djelitelj;

            float rezultat;

            cout<<"Unesite prvi broj!"<<endl;

            cin>>djeljenik;

            cout<<"Unesite drugi broj!"<<endl;

            cin>>djelitelj;

            rezultat=djeljenik/djelitelj;

            cout<<"Rezultat je: "<<rezultat<<endl;

            system("PAUSE");

 }

 Ovdje ćemo dobiti točan rezultat sa decimalnim brojevima.

 

double

To je isto varijabla za realne brojeve. Njezin raspon je od -1.7*10308 do -1.7*10-308. Njezina točnost je 15 decimalnih znamenki.

Postoji i long double čiji je raspon od -1.1*104932 do -3.4*104932. Njezina točnost je 18 decimalnih znamenki.

 

Varijablu možemo definirati kao konstantu ako ispred tipa varijable stavimo const. Takva varijabla je nepromjenjima i prevoditelj će javiti gršku kad je pokušamo promjeniti. Kod konstante moramo obvezno odmah definirati njezinu vrijednost.

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    const float pi=3.14;
    float povrsina;
    float radius;
    cout<<"Unesite radijus kruga!"<<endl;
    cin>>radius;
    povrsina=radius*radius*pi;                    //Sve dobro radi računamo površinu kruga
    cout<<"Povrsina je: "<<povrsina<<endl;
    pi=pi+1;                                                 //Međutim kad pokušavamo promijeniti vrijednost
                                                                 //prevoditelj jaljva pogrešku
    system("PAUSE");
}

 

Ako želimo kao konstantu definirati nešto što je korisnik unio onda bi to mogao biti problem jer konstantu moramo definirati odmah. To se može riješiti ako kreiramo još jednu varijablu u koju će korisnik unijeti podatke pa onda tu varijablu pohranimo u konstantu.

 

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a;          
    const int b=a;
    cin>>a;
    system("PAUSE");
}

 

O međusobnim pretvorbama tipova biti će u kasnijem postu

Ako slučajno pomognem molimo pritisnite gumb hvala.
 
4 0 hvala 0
14 godina
neaktivan
offline
TUTORIAL -C++ programiranje

Hvala na tutorijalima. Ja sam početnik i puno si mi pomogao. samo nastavi pisati =)

Moj PC  
1 0 hvala 0
14 godina
offline
TUTORIAL -C++ programiranje

Danas ćemo govoriti o tome ako se nađu zajeno dva različita tipa podataka.

 

Ukucajte ovaj primjer:

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    int a;
    int b;
    float c;
    a=5;
    b=2;
    c=a/b;
    cout<<"Rezulatat: "<<c<<endl;
    system("PAUSE");
}

Program će isppisati broj 2.

Prvo smo kreirali cjelobrojne int vaijable a i b, pa smo kreirali float c. Onda smo u varijable a i b pohranili brojeve 5 i 2. U varijablu c smo pohranili rezultat djeljenja varijabli a i b,. Zašto je program ispisao broj unatoč tome što smo rezulatat pohranili u float tip? Zato što smo dijeljenik i djeljitelj odredili kao int varijable te je program dijelio brojeve kao int i onda pohranio u float. To ćemo riješiti tako što ćemo jednu od varijabli za dijeljenik ili dijeljitelj definiramo kao float. Po pravilu o pretvaranju ako se nađu dva različita tipa podataka jedan do drugog onda se svode na jedan zajednički tip. U ovom slučaju to je float. Radi toga možemo samo jednu varijablu definirati kao float. Vjerovatno se sada pitate zašto se to nije dogodilo kad smo imali float=int/int. To se nije dogodilo iz razloga jer smo u float varijablu samo pridruživali vrijednost dijljenja, nismo sa njom vršili nikakve artimetičke operacije. Ipak ako nekad mudete pisali program za računanje onda ćete verovatno željeti da korisnici mogu unositi i decimalne brojeve pa ćete vjerovatno definirati sve varijable kao float ili int.

Prošli primjer će točno raditi ako jednu od varijabla označimo kao float:

 

#include <cstdlib>
#include <iostream>

 

using namespace std;

 

int main()
{
    float a;
    int b;
    float c;
    a=5;
    b=2;
    c=a/b;
    cout<<"Rezulatat: "<<c<<endl;
    system("PAUSE");
}

 

Važno je napomenuti da brojeve koje unesemo direktno u program (npr. c=6/4), bez varijabli program definira kao konstante i definira ih u tip u koji je najbliže moguće pretvoriti zadane brojeve. Zato će u slučaju ako nekad npr. u programu upišemo cout<<5/2<<endl program ispisati rezultat 2. U toj naredbi mi smo programu rekli da ispiše na ekran raezlutat dijeljenja brojeva 5 i 2. Kako smo brojeve 5 i 2 unijeli direktno, tj. nismo ih unosli u varijablu, program ih je morao staviti u tip. Zbog toga što su oni najbliže int tipu program ih je i gledao kao takve te je razultat ispisao kao rezultat dijeljenja int varijabli. To možemo riješiti tako da brojeve 5 i 2 definiramo kao decimalne 5.0 i 2.0 ili kraće 5. i 2. Tada će ih program morati spremiti u float tip jer su njemu najbliži. Napomena: Ne morate oba broja definirati kao decimalna, dvoljno je samo jedan zbog pravila koje smo objasnili gore. Pogledajte sljedeći primjer:

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    cout<<5/2<<endl; //Ispisati će broj 2
    cout<<5./2<<endl; //točno će ispisati
    system("PAUSE");
}

Tu vidite usporedbu onga što smo prikazali.

 

Međutim što će se dogoditi ako imamo tipove double ili long double. Po pravilu varijable će se pretvoriti u viši tip. Double je viši od float i int te će se, ako se double nađe u operaciji svi ostali tipovi pretvoriti u double. Long double je još veći tip stoga će se svi ostali tipovi doslovno pretvoriti u long double uključujući i double.

 

Ako vam nekad dođe ideja da napravite kalkulator u kojeg unosite izričito cijele brojeve onda poželite točno izračunati rezultat morati ćete nekako int varijablu u dijeljenju pretvoriti u float ili double. To ćete učiniti pomoću static_cast naredbe. Ona pretvara izraze(ne samo varijable) u drugi tip. Ona općenito glasi ovako static cast<tip>(izraz). Između <> unosimo tip u koji ćemo pretvarati, a u zagrade unosimo izraz koji ćemo pretvarati. Pogledajte primjer:

 

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    int a=4;
    int b=6;
    cout<<"1. rezultat je: "<<a/b<<endl; //Ispisati će pogresan rezultat
    cout<<"2. rezultat je: "<<static_cast<float>(a)/b<<endl; //Ispisati će točan rezultat
    system("PAUSE");
}

U 1. rezultatu samo smo jednostavno podijelili dvije int varijable i naravno dobili smo netočan rezultat. U drugoj smo prvu varijablu pretvorili u float pa podijelili i dobili smo točan rezultat. Napomena:static_cast vrijedi samo u izrazu u kojem je proveden. Nakon toga varijabla se vraća u početno stanje. 

Ako slučajno pomognem molimo pritisnite gumb hvala.
 
1 0 hvala 1
15 godina
neaktivan
offline
RE: TUTORIAL -C++ programiranje

..."castanje" se može također izvoditi tako da samo u zagrade stavimo tip u koji će ići izraz koji želimo ,gornji izraz recimo :

 

....(float)a/b<<endl;

 

 

 

Private
15 godina
neaktivan
offline
TUTORIAL -C++ programiranje

Ne bih te htio omesti ali slobodno staviš 

http://free-zg.htnet.hr/jsribar/demistif.pdf

 

Znam svi znamo što je to itd, ovo je taman ono što treba za početak, na isti način prikazuje kôd, tj, definitivno i bolje nego ti, ako ništa drugo jer je u pdfu i lijepo se vidi, pa nek stoji link na vrhu, ti dalje piši postove ovako detaljno i na ovaj način, a ovo će također biti korisno za novajlije...

I vješanje i ljepota ostavljaju čovjeka bez daha
 
0 0 hvala 0
14 godina
offline
RE: TUTORIAL -C++ programiranje
$ome1 kaže...

Ne bih te htio omesti ali slobodno staviš 

http://free-zg.htnet.hr/jsribar/demistif.pdf

 

Znam svi znamo što je to itd, ovo je taman ono što treba za početak, na isti način prikazuje kôd, tj, definitivno i bolje nego ti, ako ništa drugo jer je u pdfu i lijepo se vidi, pa nek stoji link na vrhu, ti dalje piši postove ovako detaljno i na ovaj način, a ovo će također biti korisno za novajlije...

Hoću li to staviti to u prvi post?

Ako slučajno pomognem molimo pritisnite gumb hvala.
15 godina
neaktivan
offline
RE: TUTORIAL -C++ programiranje

Ti si autor pa stoga i sam odlučuješ a nastavi pisati jer pogotovo kad dođeš do petlji i petljica biti će sve korisno i potrebno detaljno objasniti,a kad dođeš do klasa i objekata tad naravno treba još detaljnije opisivati ali svaka čast ako dođeš do toga jer dug je i trnovit put na ovom forumu :)

 

Private
15 godina
protjeran
offline
TUTORIAL -C++ programiranje

Pohvaljujem inicijativu autora Namigiva Ako će trebati pomoć, javi.

Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
TUTORIAL -C++ programiranje

Hvala ti što pišeš ove postove jer preko tvojih ostova učim C++ zato jer nisam našo neke kvalitetne C++ tutorijali. Ili su na Engleskom(informatičkom engleskom kojeg ne razumjem) ili uopće ne kažu ćremu koja naredba služi nego samo napišu cijeli kod i kažu šta će to napravit. Samo imam 1 pitanje,a to je kako da napravim program sa izgledom (GUI)? Znaći da ima gumbove,mjesta za pisanje itd. 

Moj PC  
0 0 hvala 0
15 godina
offline
TUTORIAL -C++ programiranje

Divin se volji za pisanjem ovog koda!!!

 

Ne bi ni da me plaćaju :)

 

Mozda bi pokaza nekoj simpatičnoj curi ali to je to!

 

Inače svaka čast! Jedna preporuka: možda bi bilo bolje napraviti pdf dokumente pa ih negdi uploadat! Ovako na forumu se piše svašta(baš ko ja sada) pa ti sjeku postove!

 
0 0 hvala 0
15 godina
protjeran
offline
RE: TUTORIAL -C++ programiranje
filipvk1000 kaže...

Hvala ti što pišeš ove postove jer preko tvojih ostova učim C++ zato jer nisam našo neke kvalitetne C++ tutorijali. Ili su na Engleskom(informatičkom engleskom kojeg ne razumjem) ili uopće ne kažu ćremu koja naredba služi nego samo napišu cijeli kod i kažu šta će to napravit. Samo imam 1 pitanje,a to je kako da napravim program sa izgledom (GUI)? Znaći da ima gumbove,mjesta za pisanje itd. 

Ako si početnik tada takav program još nije za tebe jer nećeš uopće razumijeti njegovu strukturu niti način rada dok ne budeš upoznao klase. Znači, polako.

14 godina
neaktivan
offline
RE: TUTORIAL -C++ programiranje
Tracer kaže...
filipvk1000 kaže...

Hvala ti što pišeš ove postove jer preko tvojih ostova učim C++ zato jer nisam našo neke kvalitetne C++ tutorijali. Ili su na Engleskom(informatičkom engleskom kojeg ne razumjem) ili uopće ne kažu ćremu koja naredba služi nego samo napišu cijeli kod i kažu šta će to napravit. Samo imam 1 pitanje,a to je kako da napravim program sa izgledom (GUI)? Znaći da ima gumbove,mjesta za pisanje itd. 

Ako si početnik tada takav program još nije za tebe jer nećeš uopće razumijeti njegovu strukturu niti način rada dok ne budeš upoznao klase. Znači, polako.

Ma znam to,nego me zanima samo koji program se koristi za to?

13 godina
neaktivan
offline
TUTORIAL -C++ programiranje

Sve se to može u C++.

 

BTW  Ovdje sam uploadovao nekih 100tinjak jednostavnih primjera za C++ koje sam radio na faksu i koji bi mogli koristiti početnicima. Svi su u jednom .rar fajlu i uredno su posloženi, a tu su i neke mpp prezentacije u kojima su objašnjeni ti primjeri.

 

 

Ako se u nama krije skriveni talenat, onda se jako dobro sakrio
 
3 0 hvala 2
15 godina
protjeran
offline
RE: TUTORIAL -C++ programiranje
filipvk1000 kaže...
Tracer kaže...
filipvk1000 kaže...

Hvala ti što pišeš ove postove jer preko tvojih ostova učim C++ zato jer nisam našo neke kvalitetne C++ tutorijali. Ili su na Engleskom(informatičkom engleskom kojeg ne razumjem) ili uopće ne kažu ćremu koja naredba služi nego samo napišu cijeli kod i kažu šta će to napravit. Samo imam 1 pitanje,a to je kako da napravim program sa izgledom (GUI)? Znaći da ima gumbove,mjesta za pisanje itd. 

Ako si početnik tada takav program još nije za tebe jer nećeš uopće razumijeti njegovu strukturu niti način rada dok ne budeš upoznao klase. Znači, polako.

Ma znam to,nego me zanima samo koji program se koristi za to?

Što se tiče C++a najbolji za to je C++ Builder 2010. Jednostavan kao Visual Basic i ima svu snagu C++a. Npr.:

 

https://www.youtube.com/user/Tracer1808

 

Ovdje možeš vidjeti video tutorijale koje sam za to radio. Npr.:

 

14 godina
neaktivan
offline
TUTORIAL -C++ programiranje

Hvala puno!!

Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
RE: TUTORIAL -Osnove C++ programiranja
captain_soap_McTawish kaže...

....

 

Na ovom linku možete pronaći fino pdf objašnjenje osnova c++-a:

http://free-zg.htnet.hr/jsribar/demistif.pdf

 

Preporucam onome tko se  ozbiljno zagrije za C++ da si kupi navedenu knjigu. Na Interliberu se zna naci po uber povoljnoj cijeni, isplati se imat u polici, a i dobro je stivo ako vam je dosadno na plazi :)

Intel Core 2 Duo E6750 2.66GHz Asus P5K-V Kingston HyperX 2GB DDR2-800 WD 500GB 7200 16MB WD 320GB 7200 16MB WD 250GB 5400 8MB Ext. WD640 7200 16MB
15 godina
neaktivan
offline
TUTORIAL -C++ programiranje

samo nastavi. napokon dobar uvod u c++

Dočekali...10.11. The MW2
Moj PC  
0 0 hvala 0
Nova poruka
E-mail:
Lozinka:
 
vrh stranice