Stranica: 2/3.

Re: C++pomoc oko zadatka

PostPostano: 02 lip 2014, 09:41
Postao/la gagiD
PunkBastard je napisao/la:mislim da ti je ovo jednostavnije za duljinu stringa: string.length();
http://www.cplusplus.com/reference/stri ... ng/length/
recimo ovako:
Kod: Označi sve
string nekistrnig;
nekistring.length();


Da jednostavnije je, a ja sam iz nekog razloga mislio da je C a na C++ :hihi

Re: C++pomoc oko zadatka

PostPostano: 02 lip 2014, 10:43
Postao/la PunkBastard
gagiD je napisao/la:Da jednostavnije je, a ja sam iz nekog razloga mislio da je C a na C++ :hihi

Nema taga [C++] u naslovu, piše samo "C++pomoc oko zadatka" :lol:

Re: C++pomoc oko zadatka

PostPostano: 02 lip 2014, 11:10
Postao/la nicky
U C-u postoji funkcija
Kod: Označi sve
size_t strlen(const char *str)

koja je dio libraryja
Kod: Označi sve
#include <string.h>


Primjer:
Kod: Označi sve
#include <stdio.h>
#include <string.h>

int main(void)
{
char polje[] = {"String je duzine"};
printf("String je duzine %d",strlen(polje));
return 1;
}


ispis je: String je duzine 16

Re: C++pomoc oko zadatka

PostPostano: 02 lip 2014, 19:30
Postao/la Jelena
Hvala Vam svima puno,jos samo mi treba kako random brojeve da ubacim u tu matricu da ispisuje?

Re: C++pomoc oko zadatka

PostPostano: 02 lip 2014, 20:24
Postao/la PunkBastard
Ako sam dobro shvatio prvo trebaš napuniti matricu random brojevima 15-35 pa onda to redom ispisivati. Znači samo napraviš 2 for petlje za prvi dio, upis u matricu i na svakom koraku for petlje na mjesto na kojemu je petlja trenutno upišeš random broj, nešto kao:
Kod: Označi sve
int tmp;
for(int i=0; i<4; i++){
    for(int j=0; j<4; j++){
        matrica[i][j]=rand()%15+35;
    }
}

za ispis napraviš istu stvar sa for petljama (2), samo dodaš da ispisuje to što se nalazi na mjestima "i" i "j", a možeš sa samo 2 for petlje tako da generira svaki put nasumični broj i samo ga ispiše ili štogod već ali u tom slučaju matrica nije niti potrebna i možeš samo jednu for petlju staviti koja ide do 16 i radi istu stvar.

Re: C++pomoc oko zadatka

PostPostano: 04 lip 2014, 12:48
Postao/la Jelena
hvala puno,ostao mi je samo jos jedan,ako neko zna.
Trazi se unos 10 brojeva,koji ce biti zapamceni u niz.Program treba da sortira unete brojevi od najmanjeg do najveceg.Koristiti bubble sort algoritam.

Re: C++pomoc oko zadatka

PostPostano: 04 lip 2014, 13:12
Postao/la gagiD
Unijeti 10 brojeva u niz ces uraditi isto kao i za matricu samo s jednom for petljom.

A Bubble sort mozes ovako:

Kod: Označi sve
for ( int i=1 ; i  < 10 ; i++) {
        for ( int j = 0 ; j < 9 ; j++) {
            if ( niz[i] < niz[j]) {
                int tmp = niz[i];
                niz[i] = niz[j];
                niz[j] = tmp;
            }
        }
    }


btw. jos sam negdje vidio ovu istu zadacu ;)

Re: C++pomoc oko zadatka

PostPostano: 04 lip 2014, 13:20
Postao/la nicky
dva mala ispravka u gagijevom rješenju

Traži se niz od manjeg prema većem, pa je if uvjet
Kod: Označi sve
 if ( niz[i] > niz[j])


Vanjska for petlja bi isto trebala ići od i = 0 a ne od i = 1

Varijable deklarirati izvan for petlje (int tmp), jer se u protivnom sa svakim prolaskom inicijalizira varijabla i uništava na kraju petlje (troši vrijeme) umjesto da koristi jednom inicijalizirani podatak i uništi kad više nije potreban.

Re: C++pomoc oko zadatka

PostPostano: 04 lip 2014, 14:00
Postao/la Jelena
sta nije dobro ovde?

Kod: Označi sve
int x[],i,j;
      for (i=1;i<=10;i++);
   cout<<unesite brojeve u niz<<endl;
   cin>>x[i];
   for ( int i=1 ; i  < 10 ; i++) {
        for ( int j = 0 ; j < 9 ; j++) {
            if ( x[i] < x[j]) {
                int tmp = niz[i];
                x[i] = x[j];
                x[j] = tmp;
            }
        }
    }

Re: C++pomoc oko zadatka

PostPostano: 04 lip 2014, 14:48
Postao/la Medojedni jazavac
U prvoj for petlji imas ";" na kraju, kaj znaci da se for petlja samo izvrti do kraja, a ni jedna anredba ispod nje se ne odradi dok ona ne zavrsi. Ono kaj se konkretno desi je, i ide 1, 2, 3, 4..., 10 i tek sad krene cout<<...

Ono što uvjek želiš je metati naredbe unutar {} bloka da ti se to ne desava, makar imala smo jednu naredbu u foru.
Kod: Označi sve
for (i=1;i<=10;i++) {
   cout<<unesite brojeve u niz<<endl;
   cin>>x[i];
}