Generování náhodných čísel+BubbleSort – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Generování náhodných čísel+BubbleSort – C / C++ – Fórum – Programujte.comGenerování náhodných čísel+BubbleSort – C / C++ – Fórum – Programujte.com

 

Laura920
Duch
3. 10. 2013   #1
-
0
-

Dobrý den,mám náhodná čísla a pak potřebuji seřadit (pomocí bublinkového řazení) čísla taková, která právě vypíše počítač. To všechno mám vypsané v programu, jenže seřazuje úplně jiná čísla než jsou vypsaná náhodná čísla. Stále nevím, v čem je chyba. Pro přesnější pochopení dávám sem program. Budu moc vděčná, když poradíte :)

#include <iostream>
using namespace std;
int main ()
{
int i,p[20],k,m;
int array[25],pom;

for (int i=0; i<20; i++)
{
zz:
p[i]=rand()%25+1;                  //generovani nahodnych cisel
m=p[i];                                    //zjistuje,zda se nevyskytuji stejna cisla
k=i;

for(k=0;k<i;k++)
{
if(m==p[k])
{
goto zz;}
}
cout<<"Cislo: "<<p[i]<<endl;
}

for (int i=0;i<20;i++)                   //bublinkove razeni
{
for (int j=0;j<20;j++)
{
if (array[j]<array[j+1])
{
pom=array[j];
array[j]=array[j+1];
array[j+1]=pom;
}
}
}
cout<<endl;
cout<<"Serazena cisla: "<<endl;
for (int i=0;i<20;i++)
{
cout<<array[i]<<endl;
}

system("pause");
return 0;
}

Připojen obrázek.

Nahlásit jako SPAM
IP: 90.178.169.–
3. 10. 2013   #2
-
0
-

náhodná čísla ukládáš do pole p, řadíš pole array. 

Použití příkazu goto je zbytečné. Jde to udělat cyklem (asi do - while).

hu

Nahlásit jako SPAM
IP: 188.95.60.–
Laura920
Duch
3. 10. 2013   #3
-
0
-

#2 hlucheucho
pokud chápu dobře, neměly by být 2 pole, takže místo array jsem dala pole p,ale výsledek pořád nevychází.zkusím to vyřešit i ten cyklus. ale jinak mockrát díky :)

Nahlásit jako SPAM
IP: 90.178.169.–
Petr
~ Anonymní uživatel
746 příspěvků
4. 10. 2013   #4
-
0
-

#3 Laura92
Tvůj kód upravený

#include <iostream>

using namespace std;

int main ()
{
    int i,p[20],k,m;
    int array[25],pom;

    for (int i=0; i<20; i++)
    {
        zz:
        p[i]=rand()%25+1;                  //generovani nahodnych cisel
        m=p[i];                                    //zjistuje,zda se nevyskytuji stejna cisla
        k=i;
        for(k=0;k<i;k++)
        {
            if(m==p[k])
            {
                goto zz;
            }
        }
        cout<<"Cislo: "<<p[i]<<endl;
    }
    for (int i=0;i<20;i++)                   //bublinkove razeni
    {
        for (int j=0;j<20;j++)
        {
            if (p[j]<p[j+1])
            {
                pom=p[j];
                p[j]=p[j+1];
                p[j+1]=pom;
            }
        }
    }
    cout<<endl;
    cout<<"Serazena cisla: "<<endl;
    for (int i=0;i<20;i++)
    {
        cout<<p[i]<<endl;
    }
    system("pause");
    return 0;
}

Nahlásit jako SPAM
IP: 8.20.181.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 24 hostů

Podobná vlákna

Generovani nahodnych cisel — založil jouda

Generovaní náhodných čísel v C — založil slaby_ucen46

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý