Preskoči na sadržaj
Ista raja. Nova runda.
GAMERZ.ba — REBORN
Diskusija

c++ programiranje

411 pregleda · 33 odgovora · otvorena 13.12.2008. u 00:56

Evo i ja odluci nesto korsino da uradim ! Rijece je o programiranju trenutno se radi o c++ ...
P evo da pocnemo ovdje imam 30 uradenih zadataka
(Uradeni zadaci) koji rade pocetnici na ovom programu...

Znaci ovi su glavni zadaci i kad krenete raditi u c++ ovo ce vam biti potrebno.

Eh sad sta vam je potrebno za programiranje...

Program:


Skini program


I sad prvi korak otvorite program i da bi poceli sa novom radnom povrsinom potrebno je da idete na (FILE)--(NEW)--(Source File)
Ili lakse da se nezezate odma da stisnete ctrl+N

Slika:



E sad cu uradit postupak jednog zadatka....kako to treba da izgleda

--Zadatak glasi "Napisati program za ispisanjvanje parnih i neparnih brojeva"--
---------------------------------------------------------------------------------
Uvjek kod ovih jednostavnih zadataka pocetak je isti i on izgleda ovako

#include<iostream>
using namespace std;
main () {


Znaci svaki zadataka bez da u njemu ima operacije korijenovanje i sl pocinju na gore navedeni nacin...

-------------------------------------------------------------------------------------
E glavni dio zadatka se radi ovako sada cu ga samo ispisat a poslije cu obrazlozit

int x;
cout<<"Unesi jedan broj";
cin>>x;
if (x%2==1){cout<<"Broj nije paran"<<endl;} else {cout<<"Broj je paran"<<endl;}


---------------------------------------------------------------------------------
I zavrsni dio je uvjek isti a izgleda ovako...

system ("pause");
return 0;
}


Zatim pritisnete "F9" i pokrenete program

VAko izgleda uraden program.



i kad unesete neki broj evo ja cu unjeti broj "3"








Obrazlozenje

1.Uvodni dio-Napomeno sam da se uvodni dio u laksi zadataka uvjek pise isto pa tako sada necu pisati kako jos moze biti dosta za pocetak vako

2. glavni dio- e ovo je najtezi dio

--int-- sluzi za definisanje cjelobrojnog tipa i on moze primiti veci broj bajt-a....
--cout-- omogucava sve sto zelimo napisati na zaslonu monitora znaci kad napises " cout<<"Prvi program u c++";" na monitoru ce samo pisati Prvi program u c++.
--cin-- sluzi za definisanje ...
--if-- koristi se kod rjesavanja slozenij problema i kad imamo vise od jednog moguceg rjesenja...
--else-- sluzi kad imamo dva moguca rijesenja odnosno kad imamo vise uslova...

Znaci upisali smo int sa naredbom <<<< "cout<<" smo unjeli stace nam pisati na monitoru<<<<
sa naredbom "cin" smo ga definisali<<<< sa naredbom "if i else" smo unjeli 2 moguca postupka i ako je paran broj
na monitoru ce ispisat tako ako nije ispisat ce da je nepraran <<

3. Zavrsni dio je uvjek isti

system ("pause");
return 0;
}




VODIC by: pompeY
Dali sam zasluzio moderatora
PoMPeY, tamo si rekao "--cin-- sluzi za definisanje ...". cin (C input) sluzi za ucitavanje varijabli.Definisanje varijabli se vrsi po sablonu VariableType X. Znaci int x, String x, i sl.
Imam primjedbu i na ovo: "--else-- sluzi kad imamo dva moguca rijesenja odnosno kad imamo vise uslova..." Uslov je uvijek jedan.

Uslov je dio koda koji se nalazi u zagradi od if-a. Npr. if(a>b){...} <-- ovo a>b je uslov. Uslov moze biti ispunjen ili ne, znaci postoje dva izlaza. Kada je uslov ispunjen izvsava se kod koji pripada if-u, kada nije ispunjen izvrsava se kod koji pripada else-u.

Vidi se da znas uraditi program, samo mozda nisi najbolje objasnio neke pojmove. To se ne moze ni ocekivati od tebe u ovako kratkom vodicu.

Ipak si sigurno pomogao mnogima. GJ!

Post dobio aplauz od Philosopher

Scoped je napisao/la:
cijela prva godina je C++, cak velikim dijelom i druga. kasnije se prelazi na C# koji je interesantniji. svaka cast za temu i trud <img src='http://www.gamers.ba/csbihslike/smiley.gif'>

samo ti je cout sjeban, ne znam kako si dobio "Broj je nije paran" a dobro si gore stavio. editovano?
i da, system ("pause"<img src='http://www.gamers.ba/csbihslike/wink.gif'> i return 0 nije obavezno stavljati.
i radi preglednosti (zbog mogucih gresaka koje prijavljuje kompajler ) pravi bolji raspored jer kompajler pokaze red u kom si napravio gresku , tako da bi kad bi pisao ovako lakshe nasao gresku:

int x;
cout<<"Unesi jedan broj";
cin>>x;
if (x%2==1)
cout<<"Broj nije paran"<<endl;
else
cout<<"Broj je paran"<<endl;

respect, josh jednom svaka cast
<img src='http://www.gamers.ba/csbihslike/wink.gif'>

i josh jedna stvar, koristio si int (cjelobrojnu vrijednost) pa ti je uslov glasio " if(x%2==1) " i to je sasvim uredu, ali da se malo promijeni zadatak, da je umjesto inta koristen float, npr. da neko ukuca broj 2.13 izbacilo bi ti da je paran. zato mislim da je bolja opcija staviti za uslov:
if(x%2!=0) (ako je x moduliran sa 2 razlicito od nule)
cout<<"Broj je neparan..."<<endl; itd...
Pa nisi bas upravu sa tim 2.13.
U matematici se ne moze odredjivati parnost broja koji nije cio.
Samo cijeli borjevi se dijele na parne i neparne.

Zato bi na samom pocetku trebalo napisati
****
cout<<"Unesite cijeli broj:\t";
cin>>x;
****
A za x treba staviti da je int.
Tako si odma ogranicio program da ne moze napraviti takvu gresku.

Evo sto je radila moja profesorica informatike, kada smo radili pascal.
Zadatak glasi ovako: "Napisati program koji ce odrediti da li je prvi ucitan broj djeljiv sa drugim."
To standardno napises unos brroja i if petlju sa "mod" uslovom. Ali sta je caka?
Pa ona kao drugi broj unese "0" i tako ti sjebe citav koncept.
0 se ne moze dijeliti, a ti nisi na procetku, pri samom unosu stavio if uslov za drugi broj, da ga ongranicis na samo ono sto je moguce.

Moras pri samom pisanju programa, isti ograniciti na neke stvari i iskljuciti potencijalne bugove. On je to ovdje uradio samim definisanjem "x" kao integer.

A jedan savjet za pocetnike. Odmah na pocetku se uciti da izvlacite kod, da ga pisete "lijepo i citko".
Pogledajte kod ovoga gore programa. Nije bas naj citljiviji, jer se teze uocava gdje pocinje koji block naredbi.
Evo ga ta j isti kod, samo malo preradjen.

int main()
{
int x;
cout<<\"Unesi jedan broj\";
cin>>x;
if (x%2==1)
cout<<\"Broj nije paran\"<<endl;
else
cout<<\"Broj je paran\"<<endl;
sistem ("pause";
return (0);
}

Eh, sada da objasnim zasto morate staviti ovo sistem "pause".
Program ce raditi i bez toga, ali nece u sustini nicemu sluziti. Zasto?
Pa iz prostog razloga zato sto ce se nakon izvrsavanja programa, prozor automatski zatvoriti i necete vidjeti rezultate,
Ako stavite ovo sistem pause, program ce nakon izvrsavanja cekati sve dok vi ne stisnete neko dugme i tek nakon toga ce se zatvoriti.

A cemu sluzi return (0)?
Pa ono naglasava da je dosao kraj funkcije.
C, C++ i C# su karakteristicni po tome sto je citav program ustvari sastavljen iz funkcija, pa cak i "main".
Vidite na pocetku da sam napisao "int main()".
To znaci da sam inicijalizovo funkciju, cije je ime main, sto je obavezno za glavnu unkciju, koja ce kao rezultat vracati integer, odnosno cjelobrojnu vrijednos.
Ja sam na kraju napisa return (0), odnosno, naredio sam main funkciji da windowsu vrati 0.
Ovo return (0) nije obavezno u main funkciji, ali jeste u svim ostalim.
Npr. Imamo funkciju koja od main funkcije prima dva broja i racuna njihovu aritmeticku sredinu.
Ona bi isla ovako otprilike.

float AritSred (float a, float b)
{
return ((a+b)/2);
}

Ovu funkciju sam malo "podkreso" i sve strpo u jedan red.
Sada u main funkciji ako napisem ovaj red:

c=ArtSred(a,b)
cout<<c;

ona ce ispisati aritmeticku sredinu brojeva a i b.
Znaci, pomocu te return funkcije vratili smo vrijednos aritmeticke sredine iz funkcije ArtSred u funkciju main.

Ima dosta durgih nacina da se to uradi, pomocu pokazivaca..... ali je tu uglavnom previse tesko za pocetnike.
Malo je teze da shvatiti jer ide djelom u abstraktnost.

Post dobio aplauz od Philosopher

"Ovo return (0) nije obavezno u main funkciji, ali jeste u svim ostalim." - a void funkcije?
nc je napisao/la:
"Ovo return (0) nije obavezno u main funkciji, ali jeste u svim ostalim." - a void funkcije?
Reko sam da se mogu koristiti i pokazivaci i drugi nacini da se neka vrijednos iz jedne funkcije vraca u main.
To se inace koristi u void ali i u drugim kada treba vratiti vise od jedne vrijednosti.
Takodjer sam rekao da je to za malo iskusnije programere (ili one koji uce tek programirati) i da to necu objasnjavati.

Znaci, nisam nista pogresio.
Samo da ne bi bilo zabune, znaci ne mora svaka funkcija imati return statement. Void koriste i pocetnici i profesionalci. Obicno se koristi kod set-funkcija, znaci funkcija kod kojih se varijabla podesava (dodavanje, postavljanje nove vrijednosti, i sl.), ali se koristi i u drugim funkcijama.

Sto se tice vracanja, vratiti se moze samo jedna vrijednost. Ako se treba vratiti vise vrijednosti (znaci da postoji vise operacija nad vise varijabli) onda se jednostavno napravi vise funkcija. Svaka funkcija treba da se sastoji od jedne logicke cjeline.
Jedan funkcija en moze u bukvalnom smislu vratiti vise od jedne varijable.
Cim naidje na return, ona se presta je izvrsavati i vraca se na predhodnu.
Medjutim, htio sam reci da nije ogranicena na samo jednu tu varijablu. Ona moze lako pomocu pokazivaca da maniupulise nekim drugim varijablama i tako vraca rezultate koje dobija u neku drugu funkciju.
To se radi tako sto ona funkcija koja je poziva ne slje vrijednost varijable kojom treba da manipulise, vec posalje pomocu pokazivaca memorijsku lokaciju te varijable.
Samim tim, pozvana funkcija ima pristu toj varijabli, sto u normalnim okolnostima nije slucaj.

Nadam se da sam ovaj put dobro objasnio sta sam mislio reci.
Sve sto si tu napisao jeste tacno.
A void funkciju pocetnici rijedje koriste, jer jos ne znaju raditi sa pokazivacima, pa samim tim ne mogu manipulisati vrijednostima iz drugih funkcija, a da one ostanu promjenjene. Zato sam rekao da je to za nesto naprednije.
Pa buraz valjda sam zasluzio aplauz za ovo sto sam uradio....
:):):)

EDIT by Philosopher

Ma evo ga jedan aplauz za trud. 

Post dobio aplauz od Philosopher

Ovako 100% nemozes nikoga nauciti nicemu :D
s brda s dola :D
al neka neka :D
mozda bude novih programera :D

svaka cast na trudu :D
gnus je napisao/la:
Ovako 100% nemozes nikoga nauciti nicemu 
s brda s dola 
al neka neka 
mozda bude novih programera 

svaka cast na trudu 
Pa jarane nemoze niko nikog naucit vako preko neta....
Ovo ja samo mala pomoc onim koji su poceli radit pa da nes skonta......


Ma beze ja i ovo pise jer niko nece htjeti da ovo procita....
Mislim da nije los turtorial i da se iz njeg nesto moze naucit...
znam dosta ovaj program,super je nema sta:)
radi sve sto moze postojati pomocu njega

Prijavi se da bi odgovorio/la na ovu temu.