Tim? A teže, svoje znanje možeš povećati vježbajući zadatke i čitajući knjige. Bit će vremena za timske projekte.
Programiranje u C++-u - pitanja i odgovori
- poruka: 7.285
- |
- čitano: 1.713.639
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Može li mi netko reči zašto mi ovaj kod nije točan:
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int a,b,c,r=0,i,k=0;
cin>>a;
cin>>b;
cin>>c;
for(i=1; i<=a; ){
k=r;
r=i+i;
r=r+k;
i++;
}
for(i=1; i<=b; ){
k=r;
r=i+i;
r=r+k;
i++;
}
for(i=1; i<=c; ){
k=r;
r=i+i;
r=r+k;
i++;
}
cout<<endl;
cout<<r<<endl;
system("PAUSE");
return 0;
}
Ako sam dobro shvatio zadatak ja bi to ovako uradio..
Ako je prvog sata presao 5 metara onda je u stvari presao 1*2+2*2+2*3+2*4+2*5...(zato sto se svaki put morao vratiti)
Tako uradis za sva 3 sata i saberes...
Ako sam dobro shvatio zadatak ja bi to ovako uradio..
Ako je prvog sata presao 5 metara onda je u stvari presao 1*2+2*2+2*3+2*4+2*5...(zato sto se svaki put morao vratiti)
Tako uradis za sva 3 sata i saberes...
Tako sam i uradio, i ispadne 20 ako upisem
3
2
1
a u https://www.infokup.hr/Content/Downloads/2012/Algoritmi/Zadaci-Drzavno-2012-Algoritmi-Osnovna-7.pdf pise da treba ispasti 42
U rješenjima piše da to mogu napraviti s 3 for petlje ili onom formulom koju sam stavio u gornjem postu, i sa formulom radi.
Ne radi ti ispravno jer si dvije zadnje petlje postavio kao da je Mujo na početku svakog sata pomakao kantu na mjesto do kojeg je u bojanju došao - inicijalizirao si brojač na 1.
Međutim, kanta je uvijek ostala na istom mjestu.
Stoga, ne trebaju ti tri petlje, nego samo jedna, a u petlji stvari možeš postaviti jednostavnije nego jesi.
#include <iostream>
using namespace std;
int main(){
int a, b, c, r = 0;
cin>> a >> b >> c;
for(int i = 1; i <= a+b+c; i++)
{
r += 2*i;
}
cout<< r << endl;
return 0;
}
Ne radi ti ispravno jer si dvije zadnje petlje postavio kao da je Mujo na početku svakog sata pomakao kantu na mjesto do kojeg je u bojanju došao - inicijalizirao si brojač na 1.
Međutim, kanta je uvijek ostala na istom mjestu.
Stoga, ne trebaju ti tri petlje, nego samo jedna, a u petlji stvari možeš postaviti jednostavnije nego jesi.
#include <iostream>
using namespace std;
int main(){
int a, b, c, r = 0;
cin>> a >> b >> c;
for(int i = 1; i <= a+b+c; i++)
{
r += 2*i;
}
cout<< r << endl;
return 0;
}
Ok, hvala, samo što znači ovo +=?
a = a+ba+=b;
Ta dva izraza su ista, kontaš?
a = a+ba+=b;
Ta dva izraza su ista, kontaš?
Da, to bi u ovom slucaju onda značilo r = r + 2 *i;
to bi u ovom slucaju onda značilo r = r + 2 *i;
Da!
gdje mogu naći openGL 4.2 za visual c++?
znači li GL Graphics Library ili Language?
Za Windowse moraš imati grafičku karticu koja podržava navedeno i DirectX 11 SDK (Software Development Kit)u njemu se nalazi SDK za OGL za Linux moraš imat Graf karticu koja to podržava i SDK od proizvođaća tvoje kartice mada neke distribucije to već imaju u paketima primjer Debian nvidia-glx paket.
Library.
gdje mogu naći openGL 4.2 za visual c++?
znači li GL Graphics Library ili Language?
openGL se distribuira kroz grafičke kart. - driveri. Ako imaš doma kakvu noviju kartu , onda možeš i baratati openGL-om 4.2. Pošto dolazi bez svog GUI sučelja , najbolje ti je izabrati jedan GUI framework kroz koji možeš izgurati OGL. Preporučam Nokijin Qt. Znači instaliraj qt sa http://qt.nokia.com/downloads , uzmi par dana za kratki tut kako stvoriti prozor , jedan , drugi treći ... Uglavnom pohvataj bar osnove (ne znam kakvo ti je predznanje , možda će trebati daleko više vremena). Kad budeš mogao bar puzati po qt-u , imaš qtOpenGl modul kroz koji imaš svu funkcionalnost openGL-a , znači kucaš kod , kompiliraš i za sekundu imaš sliku na ekranu.
GL je library pisan u C jeziku tako da barataš s library-jem a ne novim jezikom.
Imaš dobrih knjiga masu , preporučam zadnju opengl super bible jer ti otkriva svijet programmable pipeline-a.
Nije za odbaciti niti sav materijal sa http://nehe.gamedev.net/. Iako se bavi zastarjelim fixed pipelineom , neke su ideje i postavke univerzalne , imaš 50-tak lessona, google ti je pun kratkih tutova za PPline.
Ponavljam , ne znam koliko ti je predznanje pa ovo navedeno možeš upogoniti relativno brzo ako je solidno , u suprotnom možda neće ići glatko.
Jel mi može neko malo objasniti klase?Imam i Tracerovu knjigu i Demistificirani C++ i iz nijedne nemogu skuzit :S
Klase služe da kreiraš nove tipove podataka. Npr.;
int a;
float b;
char c;
To su primitivni tipovi podataka. No kada ti treba nešto složenije poput
Kompleksni Z; // greška! Ne zna što je "Kompleksni"
onda moraš kreirati klasu Kompleksni.
openGL se distribuira kroz grafičke kart. - driveri. Ako imaš doma kakvu noviju kartu , onda možeš i baratati openGL-om 4.2
ICD da, headeri i statičke biblioteke ne. Pitanje je koliko je MS ažuran sa GL headerima za VS. Čuo sam kontradiktorne informacije o tome, ali u svakom slučaju VS dolazi sa potrebnim headerima i bibliotekama za razvoj GL aplikacija.
Preporučam Nokijin Qt.
Cijeli QT samo da bi otvorio prozor sa OpenGL kontekstom? Zašto mu jednostavno nisi preporučao GLUT? Dovoljno mu je što će glavu razbijati sa učenjem OGL-a a moguće i osnova matematike za 3D grafiku, ne treba mu još i nešto poput QT-a kao dodatno opterećenje. Tim više što dobar dio tutoriala po netu ionako koristi GLUT.
A može se i SDL iskoristiti za otvaranje prozora sa OpenGL kontekstom, što je također jako jednostavno.
openGL se distribuira kroz grafičke kart. - driveri. Ako imaš doma kakvu noviju kartu , onda možeš i baratati openGL-om 4.2
ICD da, headeri i statičke biblioteke ne. Pitanje je koliko je MS ažuran sa GL headerima za VS. Čuo sam kontradiktorne informacije o tome, ali u svakom slučaju VS dolazi sa potrebnim headerima i bibliotekama za razvoj GL aplikacija.
Preporučam Nokijin Qt.
Cijeli QT samo da bi otvorio prozor sa OpenGL kontekstom? Zašto mu jednostavno nisi preporučao GLUT? Dovoljno mu je što će glavu razbijati sa učenjem OGL-a a moguće i osnova matematike za 3D grafiku, ne treba mu još i nešto poput QT-a kao dodatno opterećenje. Tim više što dobar dio tutoriala po netu ionako koristi GLUT.
A može se i SDL iskoristiti za otvaranje prozora sa OpenGL kontekstom, što je također jako jednostavno.
Pitanje je koliko je MS ažuran sa GL headerima za VS. Čuo sam kontradiktorne informacije o tome, ali u svakom slučaju VS dolazi sa potrebnim headerima i bibliotekama za razvoj GL aplikacija.
Kratko i jasno : puca mu k..ac za openGL jer ima nativno directX , tako da ti je nativni OGL na win 1.1 od prošlog stoljeća. Uglavnom dolazi s minimalno dovoljnom podrškom da sam možeš stvoriti okruženje za rad s najnovijom inačicom 4.2 (glew).
Cijeli QT samo da bi otvorio prozor sa OpenGL kontekstom? Zašto mu jednostavno nisi preporučao GLUT? Dovoljno mu je što će glavu razbijati sa učenjem OGL-a a moguće i osnova matematike za 3D grafiku, ne treba mu još i nešto poput QT-a kao dodatno opterećenje. Tim više što dobar dio tutoriala po netu ionako koristi GLUT.
Qt je cijeli svijet za sebe. Između 1000 i jedne stvari ima i jednostavan OGL port. Uz kapacitete današnjih diskova nikoga ne treba mučiti 1.5(cca GB) zauzeća prostora i ići na neke uvjetno jednostavnije i manje komplicirane opcije. Ponovo ponavljam isto , bitno je predznanje s kojim ulazi u priču.Rad u Qt OGL je brz , jednostavan i efikasan s tim da je Qt svemir mogućnosti povrh OGL-a.
A može se i SDL iskoristiti za otvaranje prozora sa OpenGL kontekstom, što je također jako jednostavno.
Može.
Ma kužim ja u teoriji što su klase i za što se koriste , ali nekužim uz praksi .
Npr.
class Integer{
private:
int n;
public:
void pridruzi(int k) {
n = k;
}
int Integer::iznos() {
return n;
}
Nekužim sad u praksi čemu što služi :S
EDIT: Dosta primjera iz knjige mi ne radi , jel to možda zbog compilera ili ? Pogotovo kad stavim "void main()" javlja kako main ne može biti void,a u svim primjerima u knjizi je main void .
Knjiga je starija a u to vrijeme void main se koristio primarno. Samo promjeni u int i dolje return 0. Mislim da sam to prepravio ovdje.
Ako si već došao do tog nivoa da učiš klase preporučujem ti Demistificirani C++ jer oni su to jako detaljno obradili dok sam ja sve napravio tek kao uvod.
jel onda za openGl 4.2 trebam imat drivere za grafičku (ati 3870) ili trebam kupit novu?
treba mi openGL za microsoftov visual c++ (iz 2008.) pa me zanima šta sve trebam nabavit, tutoriale sam si već našo, imam visual c++ i zar se za directX ne mora platit licenca? osim toga mi je bolji openGL nego directX.
jel onda za openGl 4.2 trebam imat drivere za grafičku (ati 3870) ili trebam kupit novu?
Drivere sigurno imaš, ali tvoja kartica nema podršku za OpenGL 4.2, nego samo za 3.2
Sa ovim programom možeš ispitati situaciju.
treba mi openGL za microsoftov visual c++ (iz 2008.) pa me zanima šta sve trebam nabavit, tutoriale sam si već našo, imam visual c++
Pa zar ni u jednom tutorialu ne stoji kako podesiti OpenGL projekt sa svim pripadajučim bibliotekama i headerima?
Evo ti ovdje jedan u kojem ti ujedno piše i što ti treba.
Ne mora.
jel onda za openGl 4.2 trebam imat drivere za grafičku (ati 3870) ili trebam kupit novu?
treba mi openGL za microsoftov visual c++ (iz 2008.) pa me zanima šta sve trebam nabavit, tutoriale sam si već našo, imam visual c++ i zar se za directX ne mora platit licenca? osim toga mi je bolji openGL nego directX.
ATi Radeon HD 3870
OpenGL Compliance: 2.0
Dakle s ovom ne možeš , morat ćeš napraviti prometa nekome.
Nekako po konceptu posta možda još nisi spreman za kojekakve vratolomije pa da neko vrijeme vježbaš s postojećom pa vidi da li ti se isplati pothvat.
Imaš preko extenzija prog.pipeline , GLSL 1.2 , lupaj po tome i stekni iskustva nešto , poslije će ti sinuti treba li ti 4.2 u ovoj početnoj fazi.
Za VS ti je odgovoreno u par postova.
ATi Radeon HD 3870
OpenGL Compliance: 2.0
3.2
Bilo bi smiješno da kartica koja uredno podržava DX10 ne podržava OpenGL 3.x
http://www.amd.com/us/products/desktop/graphics/ati-radeon-hd-3000/hd-3800/Pages/ati-radeon-hd-3800-specifications.aspx
Bome točno.
Gledao sam na http://www.gpureview.com/Radeon-HD-3870-card-547.html
Jest da je navedeno kako 2.0 ne mora značiti plafon ali nisam imao naznake da varira do 3.2 osim doista sumnjive komparacije s dx 10.1.
Gledao sam na http://www.gpureview.com/Radeon-HD-3870-card-547.html
Jest da je navedeno kako 2.0 ne mora značiti plafon ali nisam imao naznake da varira do 3.2 osim doista sumnjive komparacije s dx 10.1.
Evo što na toj stranici misle o OpenGL-u:
OpenGL Compliance
Posted By: Michael Thomas - 09:38:19 Mon, August 14, 2006
Short Version
The highest version of OpenGL supported by the card.
Does It Matter?
Not really. The level of DirectX compliance tells you more than this number does. Since most games are written using DirectX, OpenGL has become much less important. The number is useful for anyone doing research with OpenGL or possibly for other professional interests, but overall gamers will likely not need to concern themselves with this number.
Toliko o njihovom interesu za OpenGL, nije ni čudo što lupetaju...
Bok, evo početnik sam, počeo sam učit o C++ skinio sam codeblocks i dev-c++ i gledam tutove na ovoj stranici i nista mi nije jasno, ocu li ja radit u codeblocks ili dev-c++? kako to sve ide kako ovo kako ono...
Bok, evo početnik sam, počeo sam učit o C++ skinio sam codeblocks i dev-c++ i gledam tutove na ovoj stranici i nista mi nije jasno, ocu li ja radit u codeblocks ili dev-c++? kako to sve ide kako ovo kako ono...
Što ti nije jasno?To su samo osnove.
Radi u Codeblock , Dev C++ je star jako tako da ono sto bi trebalo radit ne radi u vecini slucajeva :)
Radi u Codeblock , Dev C++ je star jako tako da ono sto bi trebalo radit ne radi u vecini slucajeva :)
Glupost! Sto tocno u DevC++-u ne radi kako bi trebalo. On jeste zastario, ali previse ga kudite.

Nemogu se sad tocno sjetit sto , ali se sjecam da mi je javljao bugove cesto .