Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C - celociselne premenne a ich cifry

Dobry den rad by som vedel ako najlahsie sa da previest cast 10cifernej celociselnej premennej int povedzme prve 2 cifry chcem zobrat a ulozit ich do inej premennej int ... napadlo ma iba to cislo delit tolkokrat dokial sa nedostaneme k danej cifre teraz to je 2.cifra odpredu... modulom10 zistime cifru teda nejaky nasobok cisla 1 potom zobereme prvu teda nejaky nasobok cisla 10 a premennu vynasobime poctom ktory zistime z cifier napriklad tie 2cifry su 58 zobereme 8 potom cislo=1*danacifra(8) alebo proste +8 a potom + 10*danacifra(5) ... nejde to aj nejako lahsie nejakou funkciou alebo tak? Bol by som rad ked mi niekto poradi ako ten program optimalizovat :)

Předmět Autor Datum
Dělá se to tak, že se číslo převede na řetězec (string). Z toho stringu vezmeš první 2 čísla a násle…
Flash_Gordon 31.01.2015 11:29
Flash_Gordon
Alebo ak sa jedná iba o C: int dlouheCislo = 123456; int kratkeCislo; char str[10]; char new_str[3]…
Niko Bellic 31.01.2015 11:45
Niko Bellic
Dikes chlapi :) poslední
parker 31.01.2015 12:42
parker

Dělá se to tak, že se číslo převede na řetězec (string).
Z toho stringu vezmeš první 2 čísla a následně ten string převedeš do té druhé int proměnné.

Čiže ak sa jedná o C++:

int dlouheCislo = 123456;
std::string s = std::to_string(dlouheCislo); //"123456"
int krakeCislo = s.substr(2);  // 12

Zpět do poradny Odpovědět na původní otázku Nahoru