Balkan SA:MP

Ostalo => Development => C, C++, C#, C-objective => Temu započeo: Bugi poslato Mart 27, 2014, 17:31:05 POSLE PODNE

Naslov: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Bugi poslato Mart 27, 2014, 17:31:05 POSLE PODNE
Treba mi pomoc oko sortiranja brojeva od najmanjeg do najveceg, samo da znate otprilike unese se koji broj po redu treba da se nadje npr od unesenih brojeva

2
5
88
13
1
25
2

da se nadje 3. po velicini i izlaz bi bio 5 :)
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Retardinjo poslato Mart 27, 2014, 18:43:56 POSLE PODNE
morat ces sredit malo sto se tice istih brojeva u nizu, ja nisam imo volje.
btw. kad ti vec treba pomoc onda postaj što si dosad napravio.

#include <iostream>
#include <algorithm>
#include <limits>

#define SIZE 7

int najmanjiBroj(int *niz, int size, int izborNajmanjeg) {
   int i = 0;
   while(izborNajmanjeg--) {
      i = std::distance(niz, std::min_element(niz, niz + size));
      if (izborNajmanjeg) niz[i] = std::numeric_limits<int>::max();
   }
   return niz[i];
}

int main()
{
    int niz[] = {2, 5, 88, 13, 1, 25, 6};
    int izbor;

    std::cout << "Upisite koji najmanji broj po redu zelite naci \n";
    std::cin >> izbor;
    std::cout << "\nNajmanji " << izbor << " u nizu je " << najmanjiBroj(niz,SIZE,izbor);
    return 0;
}
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: LuKsA poslato April 03, 2014, 23:22:21 POSLE PODNE
Inace postoji nativna sort() funkcija za to.
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Bugi poslato April 08, 2014, 16:24:00 POSLE PODNE
Al brate huseine to je ako sam dobro video to je za najmanji broj a meni treba od tih pomesanih brojeva da ispise redom 2 4 4 7 itd npr za unete 7 4 2 4 i sad ja znam ono za najmanji i najveci da odredim al treba mi sortiranje...
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Pulaski poslato April 08, 2014, 20:27:47 POSLE PODNE
Eto ti u C++, pa prevedi sebi ;)

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    int i,x,j;
    cout<<"Broj clanova niza: ";
    cin>>x;
    int niz[x];
    for(i=0;i<x;i++)
    cin>>niz[i];
    cout<<"Niz u rastucem redoslijedu: ";
    for(i=0;i<x;i++)
    for(j=i+1;j<x;j++)
    if(niz[i]>niz[j]) swap (niz[i],niz[j]);
    for(i=0;i<x;i++)
    cout<<niz[i]<<" ";
    cout<<endl<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Slay poslato April 08, 2014, 23:11:36 POSLE PODNE
http://balkan-samp.com/forum/index.php?topic=71134.0

Princip je isti, samo prevedi u c/++
http://en.wikipedia.org/wiki/Bubble_sort
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: LuKsA poslato April 09, 2014, 12:26:29 POSLE PODNE
omfg, pa sort() funkcija koja je nativna iz algorithm includea. npr.

int a[3];
a[0] = 5;
a[1] = 2;
a[2] = 8;
sort(a, a+2);

i onda ispis (cout).

zasto komplicirate i ne koristite nativne funkcije koje su puno bolje a i jednostavnije od vasih custom loopova itd.?
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Slay poslato April 09, 2014, 16:07:03 POSLE PODNE
Citat: LuKsA poslato April 09, 2014, 12:26:29 POSLE PODNE
omfg, pa sort() funkcija koja je nativna iz algorithm includea. npr.

int a[3];
a[0] = 5;
a[1] = 2;
a[2] = 8;
sort(a, a+2);

i onda ispis (cout).

zasto komplicirate i ne koristite nativne funkcije koje su puno bolje a i jednostavnije od vasih custom loopova itd.?

Nativna funkcija? - Custom loopovi?
Pa jesi ikada radio ikakva složenija sortiranja, jel se razumiješ uopće u sortiranja?

Da su odgovori na ta pitanja pozitivna znao bi da su sortiranja jedna od složenijih stvari u programiranju (ne u svim slučajevima naravno), i da, sama po sebi na fakultetima slabo se obraÄ'uju konkretno pričam o fakultetu ranga FER i da algoritama koji rade sortaciju nema na bacanje ima ih nekoliko, a bubble sort je osnovni i nije custom loop kako ti to nazivaÅ¡.

Nativna funkcija koju isto nazivaš koristi jednu metodu od tih 'custom loopova' - jer ne vidim da programeri izbacuju algoritme za sortiranja kao neke druge zato i ta funkcija koju ti nazivaš nativnom ima istu strukturu kao ona koju nazivaš custom loop, samo je integrirana u include i nije nativna, nije sve kao u samp-u pa da možeš reći da je nešto nativno, ovdje je malo drugačije.
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: LuKsA poslato April 09, 2014, 16:23:15 POSLE PODNE
nisam osobno pregledavao taj inc, ali naravno da je napravljeno loopom, ali pokusavam reci kako da olaksate covjeku i kako da lakse radi. S for petljom ce se vise namucit nego s sort funkcijom. Ista fora ko da umjesto swap() radis rucno. :) mada swap i radi na isti princip ko sto bi se radilo rucno.

Da, radio sam slozenija sortiranja, i naravno da sam onda loopove koristio, pokusavam reci da za sortiranje manji->veci brojevi netrebas komplicirat tolko.

nisi razumio sto sam mislio s "custom loop" al nvm sad.
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Bugi poslato April 10, 2014, 11:26:29 PRE PODNE
Znam ja i forda korisim hvala svima, skoro sve mi je jasno sem a%b sta se tu dogadja mislim dajte neki primer itd ili npr sta je a<<b
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: LuKsA poslato April 10, 2014, 13:26:52 POSLE PODNE
Citat: |LZ| Bugi poslato April 10, 2014, 11:26:29 PRE PODNE
Znam ja i forda korisim hvala svima, skoro sve mi je jasno sem a%b sta se tu dogadja mislim dajte neki primer itd ili npr sta je a<<b

http://en.wikipedia.org/wiki/Modulo_operation

Vidi :)

(laicki - ostatak kod dijeljenja) 9%3 = 0 | 3%2 = 1 .. itd
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Slay poslato April 10, 2014, 15:36:23 POSLE PODNE
Citat: |LZ| Bugi poslato April 10, 2014, 11:26:29 PRE PODNE
Znam ja i forda korisim hvala svima, skoro sve mi je jasno sem a%b sta se tu dogadja mislim dajte neki primer itd ili npr sta je a<<b

Pa to je matematički logički znak za računanje postotka (ostatka) i sl. Luksa ti je dao gore primjer...

a<<b ili a>>b ili a | b
time pomičeš bitove to je rad s memorijom, ako si ikada radio sa dinamičkom ili statičkom alokacijom memorije, pokazivačima i sl. onda znaš šta to radi... Ako ne, nemoj to raditi jer nije ni potrebno ugl. to je pomicanje bitova to sapada u veći level programiranja (high level programming) općenito programiranje koje se bavi manipuliranje memorijom je veća grana programiranja, jedan primjer gdje i zašto se radi manipulacija memorijom je recimo

imaÅ¡  2 varijabla, a = 5 i b = 45 i sada kako bi zamijenio vrijednosti varijable a i varijable b normalno bi kreirao varijablu c u koju bi prepisao recimo

a = 5;
b = 45;
c = b;
a = b;
b = c;

manipuliranjem memorije to možeš napraviti bez kreiranje 3 varijable time da hexadekadskim vrijednostima ili bitovima i pokazivačima izvadiš iz memorije točnu vrijednost jer svaka varijabla u memoriji ima svoju hexadekadsku vrijednost koju sa pokazivačima možeš čitati ili koristiti za nešto... slično je i sa pomicanjem bitova
Naslov: Odg: [C++][Pitanje] Oko sortiranja brojeva
Poruka od: Bugi poslato April 13, 2014, 14:54:15 POSLE PODNE
Hvala vam lock :) P.S. pogledajte drugu temu hvala svima  :)