Avatar
Peta
Člen
Avatar
Peta:

Ahoj, mohl by mi někdo poradit? Mám vytvořit pole o velikosti 10 s různými čísly, vypsat pole a potom mezi sebou vyměnit hodnoty na sousedních indexech a pole znovu vypsat.

 
Odpovědět 28.10.2015 19:49
Avatar
Nahoru Odpovědět 28.10.2015 19:53
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Novák
Tým ITnetwork
Avatar
Odpovídá na Peta
David Novák:

A v čem je konkrétně problém? Nevíš jak složit algoritmus nebo jak ho zapsat v C?

Můžu ti to udělat - je to asi tak na dvě minuty, ale jestli se to chceš naučit, tak by bylo dobré se zamyslet a trochu rozepsat, kde jsi narazil. Mohl bych tě pak trochu nasměrovat ;)

Nahoru Odpovědět 28.10.2015 19:56
Chyba je mezi klávesnicí a židlí.
Avatar
Peta
Člen
Avatar
Odpovídá na David Novák
Peta:

Nevím přesně, jak na to vyměnění hodnot.

 
Nahoru Odpovědět 28.10.2015 20:13
Avatar
David Novák
Tým ITnetwork
Avatar
Odpovídá na Peta
David Novák:

Na to se typicky používá nějaká pomocná proměnná.

Příklad: Chceš vyměnit hodnoty v a, b.

int a = 5;
int b = 2;

int pom;

// vymena
pom = a;
a = b;
b = pom;
Nahoru Odpovědět 28.10.2015 20:16
Chyba je mezi klávesnicí a židlí.
Avatar
Jozef
Člen
Avatar
Odpovídá na Peta
Jozef:

Je ti hádam jasné, že toto nebude fungovať:

pole[index] = pole[index + 1]
pole[index + 1] = pole[index]

Budeš potrebovať pomocnú premenné, napr. int temp;
Ulož si hodnotu prvého člena (pole[index]) poľa do pomocnej premennej, potom do tohto prvého člena priraď jeho suseda - pole[index + 1]. Aby si hodnoty vymenil, do suseda - pole[index + 1] - priraď to číslo, ktoré si si uložil do pomocnej premennej .

Nahoru Odpovědět  +1 28.10.2015 20:22
I'm not afraid to die on a treadmill
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 6 zpráv z 6.