Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[C++] Problem z poleceniem


pakobear

Rekomendowane odpowiedzi

Opublikowano

Mam problem chcę zrobić polecenie swap ale w pętli i krótko żeby mi sortował to od początku najpierw 0 podem od 1 od 2 od 3 itd.. Ma ktoś pomysł co zmienić w tym kodzie ?

 

 

 

#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

 

int znajdz(int por,int tab[])

{

int n=por;

int tmp=tab[por];

for (int i=por ; i < 10; i++)

{

if (tab<tmp)

{

tmp=tab;

n=i;

}

}

return n;

cout<<endl;

}

int main ()

{

srand (time(NULL));

int i;

int n;

int pom;

cout<<"Witam w programie Lotto"<<endl;

cout<<"****wynik przypadkowych liczb****"<<endl;

 

int t[10];

for(i=0 ;i<10 ;i++)

{

 

t=rand()0;

cout<<t;

cout.width(5);

}

cout<<endl;

cout<<"wyczytuje najmniejsza..."<<endl;

cout<<endl;

cout<<endl;

cout << "Liczba indeksu: "<<znajdz (0 ,t);

n=znajdz (0 ,t);

swap (t[0],t[n]);

n=znajdz (1 ,t);

swap (t[1],t[n]);

n=znajdz (2 ,t);

swap (t[2],t[n]);

n=znajdz (3 ,t);

swap (t[3],t[n]);

n=znajdz (4 ,t);

swap (t[4],t[n]);

n=znajdz (5 ,t);

swap (t[5],t[n]);

n=znajdz (6 ,t);

swap (t[6],t[n]);

n=znajdz (7 ,t);

swap (t[7],t[n]);

n=znajdz (8 ,t);

swap (t[8],t[n]);

n=znajdz (9 ,t);

swap (t[9],t[n]);

cout<<endl;

for (int i=0; i < 10; i++)

{

for(i=0 ;i<10 ;i++)

{

cout<<t;

cout.width(5);

}

}

 

cout<<endl;

 

 

cout<<endl;

system ("pause");

return 0;

}[/size]

Opublikowano

ten kod jest bez sensu. Spróbuj to napisać jeszcze raz od zera. Tu jest mnóstwo błędów i niezrozumiałych operacji.

Przemyśl to na spokojnie.

Opublikowano

Daj to w code bo to czarno na białym jest nieczytelne.

 

Te bloki ze znajdź to nie mogą być też w pętli?

 

Wystarczą dwie pętle zagnieżdżone, a w środku pętla sprawdzająca większość i mniejszość wartości. Sortowanie bąbelkowe, poczytaj w google :).


Pomagam w projektach dotyczących programowania (C++/C/Java/C#/inne). Jak masz jakiś problem, napisz do mnie, wspólnie poszukamy rozwiązania ;).

Opublikowano

Ma sortować on najmniejszej do największej Tym swap-em. Nie kmnie za bardzo o co Ci chodzi encoreeFTW jak możesz to jakoś na przykładzie lub zapisać to z tą funkcją. Bo jak mówiłem dopiero się uczę i nie wiem do końca o co chodzi.

Weteran
Opublikowano
for(int i = 0; i < 10 - 1; ++i)
{
n = znajdz(i,t);
swap(t[i],t[n]);
}

i zrób coś z tym:

 

for (int i=0; i < 10; i++)
{
for(i=0 ;i<10 ;i++)
{
cout<<t[i];
cout.width(5);
}
}
 

bo to bezsensu.

Opublikowano

@up

http://stackoverflow.com/questions/10428336/insertion-sort-better-than-bubble-sort

insertion sort jest dużo prostsze w implementacji (2 linijki?) a zarazem szybsze niż bubble sort

 

btw. insertion sort jest ogólnie jednym z najlepszych (jak nie najlepszym) algorytmem do sortowania małych ilości danych.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...