Programiranje u C++-u - pitanja i odgovori izdvojena tema

poruka: 7.285
|
čitano: 1.713.639
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
FireMan97 kaže...
tim koji radi na nekom jednostavnijem C++ projektu

Tim? A teže, svoje znanje možeš povećati vježbajući zadatke i čitajući knjige. Bit će vremena za timske projekte.

13 godina
offline
Programiranje u C++-u - pitanja i odgovori

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;

}

Evo zadatka:
Mujo je kantu s bojom ostavio na početku autoputa i svaki put kada bi obojio metar
crte vraćao bi se do kante kako bi ponovno umočio kist. Mujo je početak prvog i kraj trećeg sata dočekao
pored svoje kante. Napiši program koji će na osnovu ulaznih podataka izračunati koliko je Mujo propješačio
metara tijekom ta tri sata rada u Hrvatskim cestama?
Ulazni podaci:
- cijeli broj P ( 0 £ P £ 1000), broj metara koje je Mujo obojio prvog sata;
- cijeli broj D ( 0 £ D £ 1000, D < P), broj metara koje je Mujo obojio drugog sata;
- cijeli broj T ( 0 £ T £ 1000, T < D), broj metara koje je Mujo obojio trećeg sata.
Pokušao sam s ovom formulom:
 r=((a+b+c)*(a+b+c+1));
I onda mi je radilo.Samo neznam zašto nece sa ovim kodom.
 

 
0 0 hvala 0
14 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

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...

http://www.bug.hr/forum/topic/softver-literatura-usluge/prodaja-knjige-hardware/103166.aspx
 
0 0 hvala 0
13 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
Intelovac123 kaže...

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.

17 godina
offline
Programiranje u C++-u - pitanja i odgovori

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;
}

Poruka je uređivana zadnji put uto 17.7.2012 12:52 (Floki).
 
2 0 hvala 1
13 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
Floki kaže...

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 +=?

13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

a = a+ba+=b;

Ta dva izraza su ista, kontaš?

13 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
royalhero kaže...

a = a+ba+=b;

Ta dva izraza su ista, kontaš?

Da, to bi u ovom slucaju onda značilo r = r + 2 *i;

13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
warix kaže...

to bi u ovom slucaju onda značilo r = r + 2 *i;

Da!

13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

gdje mogu naći openGL 4.2 za visual c++?

 

znači li GL Graphics Library ili Language?

 
0 0 hvala 0
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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.

16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
pall44 kaže...

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.

Poruka je uređivana zadnji put sri 18.7.2012 16:53 (nik_02).
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Jel mi može neko malo objasniti klase?Imam i Tracerovu knjigu i Demistificirani C++ i iz nijedne nemogu skuzit :S

 
0 0 hvala 0
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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.

 

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
nik_02 kaže...

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.

 

nik_02 kaže...

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.

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put sri 18.7.2012 17:42 (rustweaver).
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...
nik_02 kaže...

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.

 

nik_02 kaže...

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.

 

13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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 .

Poruka je uređivana zadnji put sri 18.7.2012 20:17 (Fuhrer).
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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.

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

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.

 

 
0 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
pall44 kaže...

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.

 

pall44 kaže...

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.

 

pall44 kaže...
i zar se za directX ne mora platit licenca?

Ne mora.

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put sri 18.7.2012 21:18 (rustweaver).
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
pall44 kaže...

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.

Poruka je uređivana zadnji put sri 18.7.2012 21:03 (nik_02).
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
nik_02 kaže...

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

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put sri 18.7.2012 21:17 (rustweaver).
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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.

15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
nik_02 kaže...

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...

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
14 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

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...

Di si Jokane, puška te ubila!
Moj PC  
0 0 hvala 0
13 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
ogi219 kaže...

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.

13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Radi u Codeblock , Dev C++ je star jako tako da ono sto bi trebalo radit ne radi u vecini slucajeva :)

 
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Fuhrer kaže...

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.

13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Meni jedina stvar koja nevalja u Dev-Cpp su znakovi strelicaljevo i strelicadesno(glupi html blocker) ,jer nemam fizicke tipke vec moram koristit kombinaciju tipki.
HUGE RESPECT: woodgamesfx, captain_soap_McTawish, rustweaver, royalhero, tracerCPP,Indestructible
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

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

E-mail:
Lozinka:
 
vrh stranice