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

poruka: 7.285
|
čitano: 1.712.078
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
codebreaker kaže...

Kako mislis ne smije? Sto ne bi smio, sasvim validan kod. tj nema gresaka hehe.

E onda ne znam ko koga pravi budalom, jer nas uce da je to nevalidan kod, a ja ne kontam zasto, a greska neka sigurno nije bila. U pripremnim testovima imamo takva 2 zadatka za dvije grupe. U oba je rjesenje ??? - sto znaci da se to ne moze tako napisati. Moram cekati 5 dana da bi upitao. :S

Loyal to the game
Poruka je uređivana zadnji put ned 19.5.2013 2:59 (Simon Ghost Riley).
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

fino se kompajlira i daje očekivani output. 5 i 7.

 

dakle prvo ispisuje x, pa okida postinkrement, pa okida predinkrement i ispisuje x+2.

 

Doduše nije baš najčitljivije i lako je pomješati očekivanja što će se ispisati.

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

fino se kompajlira i daje očekivani output. 5 i 7.

 

dakle prvo ispisuje x, pa okida postinkrement, pa okida predinkrement i ispisuje x+2.

 

Doduše nije baš najčitljivije i lako je pomješati očekivanja što će se ispisati.

Pa vjerovatno zbog toga sto i nije najcitljivije nas tako uce, jer npr sa:

int x=5;

cout << x++;

cout << ++x; 

nema problema i rjesenje je 57. Valjda nas uce da koristimo ovaj drugi nacin ili sta vec.

Loyal to the game
12 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
Simon Ghost Riley kaže...
codebreaker kaže...

Kako mislis ne smije? Sto ne bi smio, sasvim validan kod. tj nema gresaka hehe.

E onda ne znam ko koga pravi budalom, jer nas uce da je to nevalidan kod, a ja ne kontam zasto, a greska neka sigurno nije bila. U pripremnim testovima imamo takva 2 zadatka za dvije grupe. U oba je rjesenje ??? - sto znaci da se to ne moze tako napisati. Moram cekati 5 dana da bi upitao. :S

Problem je da C++ spec smatra ovaj primjer za validan C++ kod, ali ne definira ponašanje, tj. ostavlja kompajleru da to prevede kako mu bolje odgovara. U tom smislu nije validan kod, jer možeš dobit drugačiji rezultat na drugačijim kompajlerima, čak i ako se oni svi drže istog ANSI standarda.

Potraži na google/wiki "Sequence Point", imaš više o tome.

15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
CyberK kaže...
Simon Ghost Riley kaže...
codebreaker kaže...

Kako mislis ne smije? Sto ne bi smio, sasvim validan kod. tj nema gresaka hehe.

E onda ne znam ko koga pravi budalom, jer nas uce da je to nevalidan kod, a ja ne kontam zasto, a greska neka sigurno nije bila. U pripremnim testovima imamo takva 2 zadatka za dvije grupe. U oba je rjesenje ??? - sto znaci da se to ne moze tako napisati. Moram cekati 5 dana da bi upitao. :S

Problem je da C++ spec smatra ovaj primjer za validan C++ kod, ali ne definira ponašanje, tj. ostavlja kompajleru da to prevede kako mu bolje odgovara. U tom smislu nije validan kod, jer možeš dobit drugačiji rezultat na drugačijim kompajlerima, čak i ako se oni svi drže istog ANSI standarda.

Potraži na google/wiki "Sequence Point", imaš više o tome.

Eh, bas ovo mi je objasnjenje trebalo jer sam i ja na to pomislio. Kada sam kompilirao izbacilo je normalan rezultat 57, i odma sam posumnjao da bi mozda na drugom kompajleru dalo nesto drugo. Potrazit cu o tome, hvala ti na odgovoru.

Loyal to the game
Poruka je uređivana zadnji put ned 19.5.2013 10:25 (Simon Ghost Riley).
12 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Može li mi itko reći šta to znači istanca i override?

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

Instanca-> predstavlja primjer klase., npr ako imas klasu Zivotinja njena instanca ce biti npr Pas

Override-> predstavlja redefinisanje nekog metoda koji potklasa nasljedjuje od natklase, npr ako natklasa definise metod ispisi() u potklasi taj metod mozes definisati na nacin na koji ti odgovara., to je override.

Ako sam nesto propustio napisati ili ako neko misli da je nedovoljno jasno nek dopuni :) 

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

Može li mi itko reći šta to znači istanca i override?

Instanca je konkretan objekt neke klase. 

npr imas std::string - to je klasa

ali kad napises std::string pero; pero je instanca klase string.

 

Override znaci da virtualnu funkciju bazne klase implementiras u naslijedjenoj klasi.

Lack of money is the root of all evil. George Bernard Shaw
12 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Ovako, imam jadnu molbu. Za 5 iz infe trebam rjesiti jedan zadatak u C jeziku(ne c++ nego c), pa ako moze mala pomoc
ZADATAK: Napraviti program koji ucitava vise rijeci. Program treba ispisati broj rijeci, ispisati rjeci koje su cijele napisane velikim slovom (npr.ako unesem rijec AUTO, potrebno ju je opet ispisati, ali AUto ili Auto se nesmije ispisati jer nije cijela rijec napisana velikim slovom), ispisati najdulju rijec, te ispisati rijeci koje imaju vise od 10 znakova.

Svaka pomoc je dobrodosla ;)

 
0 0 hvala 0
16 godina
odjavljen
offline
Re: Programiranje u C++-u - pitanja i odgovori

Dakle... U do...while vrtiš sljedeće (dok user ne upiše nulu ili tako neš za kraj programa)

 

1. Postavi neki int koji će brojati prolaze kroz petlju i onda na kraju taj broj ispiši - to ti je broj upisanih riječi.

2. Za uppercase riječi - stavi if - ako je upisana riječ jednaka njenoj uppercase varijanti (tu imaš primjer kako string pretvoriti u uppercase). Ako su ta dva stringa ista, ispiši opet

3. Najdužu odrediš tako da uspoređuješ dužinu prethodne sa novom - ako je nova duža, staru zamijeni sa novom.

4. Za dužinu imaš milijun primjera. Ako korisnik upiše riječ dužu od 10 znakova (ifom provjeri), strpaj ju u array i na kraju cijeli taj array ispiši. Ako je array prazan, ispiši da nema duže riječi.

http://nighthawk-software.blogspot.com/
17 godina
offline
Programiranje u C++-u - pitanja i odgovori

Ne mora pretvarati u uppercase, samo provjeri da li je dekadska vriednost znaka veća ili jednako  97, ako jest - nije uppercase

 

if('a' >= 97) 

   break;

 

Prekida pretragu znakova u riječi - nije uppercase.

Poruka je uređivana zadnji put uto 21.5.2013 18:16 (Floki).
 
0 0 hvala 0
12 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Kako promjenit boju parent windowa, nakon što je već registrirana klasa i on je prikazan?

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

Kako promjenit boju parent windowa, nakon što je već registrirana klasa i on je prikazan?

Ako misliš na WinAPI onda:

hwnd - handle tvog prozora

 

SetClassLong(hwnd, GCL_HBRBACKGROUND, (LONG)CreateSolidBrush(RGB(255, 0, 0)));  // Podesiti RGB na željene vrijednosti

0100001001101111011010100110000101101110
Poruka je uređivana zadnji put sri 22.5.2013 13:24 (Boky).
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Boky kaže...
919191 kaže...

Kako promjenit boju parent windowa, nakon što je već registrirana klasa i on je prikazan?

Ako misliš na WinAPI onda:

hwnd - handle tvog prozora

 

SetClassLong(hwnd, GCL_HBRBACKGROUND, (LONG)CreateSolidBrush(RGB(255, 0, 0)));  // Podesiti RGB na željene vrijednosti

To mi ga ne oboja odmah, nego tek kad ga minimizam ili prekrijem nekim drugim prozorom

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

To mi ga ne oboja odmah, nego tek kad ga minimizam ili prekrijem nekim drugim prozorom

Pa naravno, jer je to samo atribut. Pošalji mu i WM_PAINT poruku, ili na neki drugi način pokreni paint handler.

0xBADC0DE
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Ovako, uradio sam zadatak gdje treba pronaci najveci zajednicki djelilac dva prirodna broja.
Moze li mi ko reci kako da uradim taj isti zadatak, ali bez petlji?
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
pocetnik_amater kaže...
Ovako, uradio sam zadatak gdje treba pronaci najveci zajednicki djelilac dva prirodna broja.
Moze li mi ko reci kako da uradim taj isti zadatak, ali bez petlji?

#include <iostream>

using namespace std;

int main()
{
int a,b;
cin>>a;
cin>>b;
while (a!=b)
{
if (a>b) a-=b;
if (b>a) b-=a;
}
cout<<b<<endl;
return 0;
}

 

 

Euklidov algoritam

http://www.bug.hr/forum/topic/softver-literatura-usluge/prodaja-knjige-hardware/103166.aspx
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...
919191 kaže...

To mi ga ne oboja odmah, nego tek kad ga minimizam ili prekrijem nekim drugim prozorom

Pa naravno, jer je to samo atribut. Pošalji mu i WM_PAINT poruku, ili na neki drugi način pokreni paint handler.

uspio sam s InvalidateRect(hwnd_parent,0,1);

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

Pozdrav svi forumaši/ce,trebo bi malu pomoc,to jest veliku,imam par zadataka za sutrašnji ispit,pa ako ima koga da rijesi sa FOR petljom,naravno moze poslje for petlje doći šta,to jest koja petlja dalje treba... :)

Napišite program koji upisuje prirodan broj N pa ispisuje :
a) svaku znamenku u novi redak počevši od zadnje
b) svaku drugu znamenku počevši od zadnje
c)sumu znamenaka
d)največu znamenku

 

 
0 1 hvala 0
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Intelovac123 kaže...
pocetnik_amater kaže...
Ovako, uradio sam zadatak gdje treba pronaci najveci zajednicki djelilac dva prirodna broja.
Moze li mi ko reci kako da uradim taj isti zadatak, ali bez petlji?

#include <iostream>

using namespace std;

int main()
{
int a,b;
cin>>a;
cin>>b;
while (a!=b)
{
if (a>b) a-=b;
if (b>a) b-=a;
}
cout<<b<<endl;
return 0;
}

 

 

Euklidov algoritam

 Zar ovo while-if ne predstavlja jednu vrstu petlje?

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

 Zar ovo while-if ne predstavlja jednu vrstu petlje?

While i jest petlja

 

A zašto mora biti bez petlje? Baš se tako traži, ili si jednostavno to ti sebi tako zamislio?

0xBADC0DE
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

možda netko traži rekurzivnu funkciju :P

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

Napišite program koji upisuje prirodan broj N pa ispisuje :
a) svaku znamenku u novi redak počevši od zadnje

Ako imaš cijeli broj N, njegovu zadnju znamenku dobiješ tako da uzmeš ostatak od dijeljenja sa 10 (modulo operator), nakon toga broj podijeliš sa 10 tako da ukloniš posljednju znamenku i dođeš do slijedeće...

 

int n=825, ostatak;

ostatak = n % 10;
printf("%d\n", ostatak);
n/=10;

Evo ti primjer na što sam mislio. Isprobaj...

0xBADC0DE
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Hvaala ti ljepa,al ja uopce nemam pojma kako bi taj program trebo izgledat :/ 
i taj printf nismo ucili uopce... 

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

i taj printf nismo ucili uopce... 

Samoinicijativno si već 10x mogao upitati google što printf točno radi...

 

Što se programa tiče, jesam li baš morao pisati kompletnu main funkciju? Ili ne znaš baš ništa i očekuješ kompletno riješenje bez uloženog truda?

0xBADC0DE
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

ma potrudit cu se ja sutra na ispitu,ja sam samo doso ako mozes napisi ako ne jbg kaj sad :S

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

ma potrudit cu se ja sutra na ispitu,ja sam samo doso ako mozes napisi ako ne jbg kaj sad :S

Joj ti si onaj sa "neugodnim profesorom" xD

 

a

#include <iostream>

using namespace std;

int main()
{
    int broj=12345;

    for ( ; broj; broj/=10)
    {
        cout << broj%10 << endl;
    }

    return 0;
}

 

b

#include <iostream>

using namespace std;

int main()
{
    int broj=12345;

    for ( ; broj; broj/=100)
    {
        cout << broj%10 << endl;
    }

    return 0;
}

 

c

#include <iostream>

using namespace std;

int main()
{
    int broj=12345, zbroj=0;

    for ( ; broj; broj/=10)
    {
        zbroj+=broj%10;
    }

    cout << "zbroj znamenaka je: " << zbroj << endl;

    return 0;
}

 

d

#include <iostream>

using namespace std;

int main()
{
    int broj=12345, najveca=0;

    for ( ; broj; broj/=10)
    {
        if (najveca < broj%10)
            najveca=broj%10;
    }

    cout << "najveca znamenka je: " << najveca << endl;

    return 0;
}

 

Sad vidim da si već dobio odgovor na a i b, zašto opet tražiš riješenje za to?

0xBADC0DE
Poruka je uređivana zadnji put sri 22.5.2013 19:30 (rustweaver).
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Imam zadatak u kojem korisnik treba da unosi brojeve, a program se treba da zavrsi tek kada korisnik unese neko slovo.

hitno je

 
0 0 hvala 0
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...
pocetnik_amater kaže...

 Zar ovo while-if ne predstavlja jednu vrstu petlje?

While i jest petlja

 

A zašto mora biti bez petlje? Baš se tako traži, ili si jednostavno to ti sebi tako zamislio?

Ne, to je zadatak. I ja sam prvo uradio sa petljom, i odgovaraju, "pokusaj bez petlje sad", a ja nemam ideje kako.

Zadatak treba da ima u sebi funkciju int djelilac(int a, int b). :S

 

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

hvala ti stari e,joj pa da znam ko si i di zivis,bome ak ti nebi poslo cokoladu :DD
hvala stvarno ;) 

E-mail:
Lozinka:
 
vrh stranice