No, no, nemoj tako. Bio je odlican, u ono vrijeme, prije 6 godina :D
Glede C::B-a: wxWidgets, GTK, QT, birajte... GUI C::B-a je takoder napisan u wx-ima ;)
No, no, nemoj tako. Bio je odlican, u ono vrijeme, prije 6 godina :D
Glede C::B-a: wxWidgets, GTK, QT, birajte... GUI C::B-a je takoder napisan u wx-ima ;)
No, no, nemoj tako. Bio je odlican, u ono vrijeme, prije 6 godina :D
Ma što neću! Satrat ću ga do korijena! Jel se uopće taj program da instalirati na 64-bitnu Sedmicu? Uglavnom, bio je dobar kad nismo imali bolje, kad nije bilo Code::Blocksa. Danas zaslužuje svoje mjesto u ropotarnici povijesti.
A eto natjerali ste i mene da pređem na Code::Blocks.
@mbaksa, da budem pošten u C++ -u nisam napravio niti jednu GUI aplikaciju, ali jesam u VB-u i C#-u.
A eto natjerali ste i mene da pređem na Code::Blocks.
@mbaksa, da budem pošten u C++ -u nisam napravio niti jednu GUI aplikaciju
Znam da nisi. Da jesi ne bi dao onakav komentar. Svrha mojeg pitanja je bila da dokaže poantu - da je DevC++ neadekvatan alat za razvoj GUI aplikacija. Uz to što je loš i zastario.
Code::Blocks brže izvršava neke funkcije, mislio sam da samo Visual C++ ima Inetllisense, ali eto da ne upadosmo u raspravu nebi koristio Code::Blocks ;)
Jel se uopće taj program da instalirati na 64-bitnu Sedmicu?
For the record, može se instalirati i radi :D
vec kad se raspravlja o gui-u ja jos ucim opcenito jezik ali me zanima di ste krenili s ucenjem gui-a
evo ovdje imate predavanja sa elektrotehnickog fakulteta u Sarajevu, jest da su za početnike, ali se ide brzo. link: http://c2.etf.unsa.ba/course/view.php?id=76 idite samo na login as guest da pristupite predavanjima
vec kad se raspravlja o gui-u ja jos ucim opcenito jezik ali me zanima di ste krenili s ucenjem gui-a
Pitanje ti nije na mjestu. Naime, ne postoji tako nešto kao "učenje GUI-a" - to je isto ko da pitaš za učenje (nekog) "programskog jezika". Postoje različiti frameworkovi za GUI - neki imaju vizualne dizajnere, neki nemaju, neki su OOP, neki nisu, neki su crossplatform, neki nisu, neki postoje za različite programske jezike, drugi su ograničeni na jedan ili na manji broj itd. Stvar je u tome da C++ nema standardni framework za GUI. Neki razvojni alati, poput VB-a, Delphija i C++Buildera imaju vlastite vizualne frameworkove, alati iz .NET-a imaju zajedničke GUI frameworkove koji se mogu koristiti iz različitih programskih jezika itd. Također, što je JavaScriptov GUI? Web-stranice, XHTML. Dakle, sve to je jedan veliki kupus.
Uglavnom, za većinu korisnika danas nema smisla koristiti GUI-je koji nemaju dobar vizualni dizajner. Tako da nisam siguran što tebi znači sintagma "učenje GUI-ja".
Za pocetak gde mogu nabaviti(kupiti) ili preuzeti c++.
Za pocetak gde mogu nabaviti(kupiti) ili preuzeti c++.
Za početak malo pogledaj što se piše u temi - na prošloj stranici sam dao linkove.
Za pocetak gde mogu nabaviti(kupiti) ili preuzeti c++.
C++ ne možeš kupiti, to je programski jezik i on je besplatan. No kupiti mozes frameworkove, kompajlere, IDE itd.
ono moje pitanje se odnosilo na pisanje c++ programa za windows koji koriste gui
ono moje pitanje se odnosilo na pisanje c++ programa za windows koji koriste gui
QT, WinApi...
Evo ti par linkova:
WinApi:
http://msdn.microsoft.com/en-us/library/aa678136%28v=ax.10%29.aspx
QT:
Tri prijatelja Marko,Janko i Petar treba da se nadju na nekom mjestu.Dogovorili su se da prvi koji dodje 10 minuta ceka drugog,pa ako ovaj dodje da 5 minuta cekaju treceg.Napisati program koji ucitava vremena (0 <= sat <=24,0<= minut <=59) dolaska redom Marka,Janka,Petra i daje odgovor na pitanje da li su se ova tri prijatelja srela.
Primjer:
Ako su data vremena redom:13:05,13:09,12:55 sreli su se
Ako su data vremena redom: 13:05,12:54,13:09 nisu se sreli.......
Kako uraditi ??
Ajde se namuči barem malo, kad zapne javi, od toga što ćemo ti mi dati kod nema ništa, malo promozgaj.
Uradio ja........
evo:
#include <iostream.h>
main() {
int s1,m1,s2,m2,s3,m3,t;
cin>>s1>>m1>>s2>>m2>>s3>>m3;
m1=m1+s1*60;
m2=m2+s2*60;
m3=m3+s3*60;
if (m1>m2) {t=m1; m1=m2; m2=t;}
if (m1>m3) {t=m1; m1=m3; m3=t;}
if (m2>m3) {t=m2; m2=m3; m3=t;}
if ((m2-m1<=10) && (m3-m2<=5)) {
cout<<"Sreli su se"<<endl;}
else {
cout<<"Nisu se sreli"<<endl;}
Ali meni kaze nastavnica da ima mnoooooogooo laksi nacin koji je to???
Tri prijatelja Marko,Janko i Petar treba da se nadju na nekom mjestu.Dogovorili su se da prvi koji dodje 10 minuta ceka drugog,pa ako ovaj dodje da 5 minuta cekaju treceg.Napisati program koji ucitava vremena (0 <= sat <=24,0<= minut <=59) dolaska redom Marka,Janka,Petra i daje odgovor na pitanje da li su se ova tri prijatelja srela.
Primjer:
Ako su data vremena redom:13:05,13:09,12:55 sreli su se
Ako su data vremena redom: 13:05,12:54,13:09 nisu se sreli.......
Kako uraditi ??
EDIT: Dok sam ja napisao kod autor je vec rjesio.
Evo rjesenja:
#include <iostream>
using namespace std;
int main()
{
typedef unsigned short broj;
//polje za unos brojeva
broj vremena[3];
//unos brojeva
for(int x=0;x<3;x++){
broj a,b;
cin>>a>>b;
//pretvaranje vrijeme iz h i m u m
vremena[x]=60*a+b;
}
//sortiranje polje
for(int x=0;x<3;x++){
for(int y=0;y<2;y++){
if(vremena[y]>vremena[y+1]){
broj temp=vremena[y];
vremena[y]=vremena[y+1];
vremena[y+1]=temp;
}
}
}
//provjeravanje
if(vremena[1]-vremena[0]<=10&&vremena[2]-vremena[1]<=5)
cout<<"Sreli su se!"<<endl;
else
cout<<"Nisu se sreli"<<endl;
return 0;
}
Ali meni kaze nastavnica da ima mnoooooogooo laksi nacin koji je to???
Evo pronasao sam nacin u kojem nema sortiranja. Samo gledas je li ti vrijeme izmedu svaka dva <= 15 jer ako nije onda se nece sresti:
#include <iostream>
using namespace std;
template <class tip>
inline tip apv(tip a){ //funkcija koja vraca apsolutnu vrijednost
return (a>=0) ? a:-a;
}
int main()
{
typedef unsigned short broj;
//polje za unos brojeva
broj vremena[3];
//unos brojeva
for(int x=0;x<3;x++){
broj a,b;
cin>>a>>b;
//pretvaranje vrijeme iz h i m u m
vremena[x]=60*a+b;
}
if(apv(vremena[0]-vremena[1])<=15&&apv(vremena[1]-vremena[2])<=15&&apv(vremena[0]-vremena[2])<=15)
cout<<"Sreli su se!"<<endl;
else
cout<<"Nisu se sreli!"<<endl;
return 0;
}
EDIT: Rjesenje nevalja.
A moze li preko if petlje taj zadatak???
A moze li preko if petlje taj zadatak???
If petlje? A to bi bilo? If nije petlja ;) :P
Pa sa if naredbom sta li je vec???
ono moje pitanje se odnosilo na pisanje c++ programa za windows koji koriste gui
Ne shvaćaš koncept GUI-ja. Shvati da C++ kao programski jezik ne dolazi s GUI-jem, odnosno s nikakvim frameworkom za GUI. Ne znam zapravo dolaze li sa svim C++ alatima Windows API headeri, koji omogućavaju korištenje Windowsovog API-ja između ostalog i za izgradnju GUI-ja. Ti zapravo ako hoćeš, možeš u bilo kojem programskom jeziku početi raditi GUI aplikacije koristeći samo Windowsov API. Ali to je jednostavno besmisleno - em je jako teško, em oduzima strašno puno vremena, koje si daleko pametnije mogao iskoristiti za razvoj logike programa ili čega već drugog. Osim toga, takav program neće raditi pod Linuxom.
Dakle, kao C++ programer prvo moraš uzeti neki framework (vidim da je na temi već netko predložio neke) i onda korištenjem tog frameworka (tj. njegovog alata za izradu sučelja) izgraditi GUI sučelje svog programa.
Evo uradio sam sam sa if naredbom :D
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int h1,h2,h3,m1,m2,m3,p,d,t; //"h" su sati a "m" minute , "p" je prvi koji je dosao,"d" je drugi a "t" je treci
cin>>h1>>m1>>h2>>m2>>h3>>m3;
p=m1+h1*60;
d=m2+h2*60;
t=m3+h3*60;
if ((d - p <= 10) && (t - d <=5)) {
cout<<"Sreli su se"<<endl;}
else {
cout<<"Nisu se sreli"<<endl;}
system("PAUSE");
return 0;
}
int h1,h2,h3,m1,m2,m3,p,d,t; //"h" su sati a "m" minute , "p" je prvi koji je dosao,"d" je drugi a "t" je treci
Ako u komentaru moraš objašnjavati što koja varijabla znači, obično se radi o tome da si loše odabrao nazive varijabli. Što fali nazivima varijabli prvi, drugi, treci? Dobro, možda im i fali, ali je ipak daleko bolje od p, d, i t.
Inače program, kao i programi nekih drugih ovdje, ima kardinalnu pogrešku. Kako korisnik programa zna što mora upisati?
Za takve stvari jednostavno nema isprike. Kôd programa mora biti razumljiv, nazivi varijabli moraju biti jasni sami po sebi i program mora biti funkcionalan (to podrazumijeva da ga korisnik može koristiti - a ne može ga koristiti ako ne zna što mora upisati, zar ne?). Programe ne radite samo radi sebe (u ovom slučaju ih zapravo ni ne radite za sebe), a ako ih i radite samo radi sebe, za koji mjesec ili godinu, kad u nekom većem projektu zaboravite čemu točno vam je služila neka varijabla ili što točno morate naslijepo ukucati, onda ćete čupati kosu. To je tim veća pogreška, jer ovdje pokušavate svoje znanje prenijeti drugima - ili prenosite kako treba ili nemojte prenositi - neke stvari koje se rade na ovoj temi su antiedukativne. Korigirajte se. Svi koji to radite (da ne ispadne da se ovo tiče samo Intelovca).
Zadatak je zadat ovako:
"Ako su data vremena redom: 13:05,12:54,13:09 nisu se sreli......." - tvoj kod daje isparavan output
Ako se stave ovi inputi:
12:21 12:20 12 26 - output je "nisu se sreli" - nije točan output
Vremena dolaska se ne unose vremenskim redosljedom, nego kad je došao Marko, Janko i Petar
dakle, najprije sortirati, a onda ići tvojom if uvjetnom naredbom..
nije dobar ni onaj način da vremena čekanja ne prelaze 15, sa sumom čekanja 6 već se može prijeći granica - dva stigla istovremeno, a treći 6 min poslije njih.
Inače program, kao i programi nekih drugih ovdje, ima kardinalnu pogrešku. Kako korisnik programa zna što mora upisati?
No ovo je zadatak u kojem je naveden input i output pa stoga mislim da se ovdje poruke koje uglavnom "uljepsavaju" program nepotrebne, dapace na natjceanjima iz algoritama ako se slucajno ispise nesto sto nije navedeno, automatski zadatak nevalja.
Ali mora se učiti od početka urednosti!!!, nema fušeraja i toga "dodat ću kasnije".
Varijable moraju bitit razumljive!, ako je godište piše se godište, a ne a.
Ali mora se učiti od početka urednosti!!!, nema fušeraja i toga "dodat ću kasnije".
Varijable moraju bitit razumljive!, ako je godište piše se godište, a ne a.
Nisam na to mislio. Mislio sam na poruke koje program ispise i navede korisnku sto trbea upisati itd. Dakle ono tipa Upisite vrijeme dolaska Marka... To je jednostavno nepotrebno na natjecateljskom tipu zadatka. Na ntjecanjima se tako navode zadaci i ako si ispisao nesto nepotrebno onda automatski gubis cijeli zadatak,
Inače program, kao i programi nekih drugih ovdje, ima kardinalnu pogrešku. Kako korisnik programa zna što mora upisati?
No ovo je zadatak u kojem je naveden input i output pa stoga mislim da se ovdje poruke koje uglavnom "uljepsavaju" program nepotrebne, dapace na natjceanjima iz algoritama ako se slucajno ispise nesto sto nije navedeno, automatski zadatak nevalja.
Nisam na to mislio. Mislio sam na poruke koje program ispise i navede korisnku sto trbea upisati itd. Dakle ono tipa Upisite vrijeme dolaska Marka... To je jednostavno nepotrebno na natjecateljskom tipu zadatka. Na ntjecanjima se tako navode zadaci i ako si ispisao nesto nepotrebno onda automatski gubis cijeli zadatak,
Ako ti kažeš da je tako na natjecanjima - OK. Znaš li možda razloge tome? Zašto se na natjecanjima forsiraju neupotrebljivi programi? Možda zato jer jedino što im je bitno je algoritam pa im je onda ikakvo sučelje suvišno? Pa čak i tekstualno? Jer bi programe podacima, pogotovo na testiranju, mogli puniti i iz datoteka, tipa ime_programa.exe << testni_podaci.txt ili tako nekako? Ne vidim opravdanog razloga zašto bi se ispis za traženje informacija kažnjavao.
No, zadaci kojima se ovdje bavimo nisu natjecateljski rezultati. I to što profesori ne inzistiraju na ispisu teksta kojim se traži unos neke informacije (je li to zaista tako? može se na temu javiti više učenika pa da vidimo kakav kôd očekuju njihovi profesori?) je njihova pogreška - učenike pogrešno uče. Ako ništa drugo, dovoljno je pogledati programerske knjige. Koja to knjiga ima primjere u kojima se, nakon pokretanja programa, ništa ne ispiše, odnosno jedino što te dočeka je prazan program s promptom za upis - nečega? Programer na svoj program mora gledati i iz perspektive običnog korisnika. Što korisnik dobiva kad pokrene takav program?