NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.
Avatar
lukes90
Člen
Avatar
lukes90:15.1.2015 21:21

Chtěl bych se zeptat kde mám chybu.

#include <cstdlib>
#include <iostream>
#include <ctime>

using namespace std;

class prvky
{ public:
int cislo;
prvky * dalsi;
prvky(){
dalsi = NULL;
cislo = 0;
}
~prvky(){ delete dalsi;
}
prvky * misto(){
dalsi = new prvky;
return dalsi;
}

};

class seznam
{ public:
prvky zacatek;
prvky *konec;
seznam(){
zacatek = new prvky;
konec = zacatek;
}
~seznam(){
prvky
pomocny;

while (pomocny->dalsi != NULL)

{pomocny = zacatek;
zacatek = pomocny->dalsi;
delete pomocny;
}
}

bool pridej(int i)
{
konec->cislo=i;
konec = konec->misto();
}
void vypis(){
prvky* pomocny;
pomocny = zacatek;
while (pomocny->dalsi != NULL)

{
cout<<pomocny->cislo<<endl;
pomocny=pomocny->dalsi;
}

}

void srovnat(){
prvky* pomocny;
int a,b;

b=1;
while(b!=0){ pomocny = zacatek;
b=0;
while (pomocny->dalsi != NULL){
if
{ a=pomocny->cislo;
pomocny->cislo=pomocny->dalsi->cislo;
pomocny->dalsi->cislo=a;
b++;
}
pomocny= pomocny->dalsi;
}
}
}

void extrem(){
prvky* pomocny;
int a;
a=pomocny->cislo;
cout<<a;
while (pomocny->dalsi != NULL){
if((pomocny->cislo)>a)
{ a=pomocny->cislo;
}
pomocny= pomocny->dalsi;
}
cout<<endl<<"ma­ximum je "<<a<<endl;
}

};

int main(int argc, char *argv[])
{ int i;
seznam list;
cout << "zadej cislo (0 pro koncec)";
cin >>i;
while (i!=0)
{ list.pridej(i);
cin>>i;
}
cout<<"seznam byl naplnen"<<endl;

list.vypis();
cout<<"po srovnani"<<endl;
list.srovnat();
list.vypis();
list.extrem();

system("PAUSE");
return EXIT_SUCCESS;
}
při srovnání mi to tam hází nulu navíc. Prosím nevíte proč?

Editováno 15.1.2015 21:23
 
Odpovědět
15.1.2015 21:21
Avatar
lukes90
Člen
Avatar
Odpovídá na lukes90
lukes90:15.1.2015 23:04

Už jsem chybu našel :-).

 
Nahoru Odpovědět
15.1.2015 23:04
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.