Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Jak z liczby 99 zrobić liczbę 099?

Ostatnio zmodyfikowano 2012-02-11 19:33
Autor Wiadomość
Trix
Temat założony przez niniejszego użytkownika
Jak z liczby 99 zrobić liczbę 099?
» 2012-02-11 11:34:41
Napisałem mały programik rysujący mapę 3d.
Niestety mam problem z liczbami określającymi Wysokość punktu :)

Załóżmy, że mam do zapisania (do pliku) liczbę 99, 55, 43 itp.
Lecz chcę by 1 liczba miała 3 cyfry, jak dodać do 99 to 0 tak by powstała liczba 099?
P-50498
xevuel
» 2012-02-11 11:48:13
Rozumiem że 099 chcesz przedstawić jako tekst? Bo jak jako liczbę, to komputerowi nie zrobi to różnicy czy jest zapisane tak czy tak. Użyj funkcji » standard Citoa i » standard Cstrcat.
P-50499
Gronek8624
» 2012-02-11 11:54:50
Pierwszy pomysł jaki mi wpadł do głowy to
int dajesz na stringa (Swys)
sprawdzasz wielkość jak ma int
C/C++
if( wys <= 99 )
{
    if( wys <= 9 )
    {
        zapis = "00";
        zapis =+ Swys;
    } else
    {
        zapis = "0";
        zapis =+ Swys;
    }
}
//i tu dajesz zapis do głównego buffor-a zapisu :)
Nie wiem nie sprawdzałem ale powinno działać :)
P-50500
Trix
Temat założony przez niniejszego użytkownika
» 2012-02-11 12:29:03
A jeszcze takie pytanko, bo nigdy nie rzutowałem int do stringa.
Napisałem takie coś:
C/C++
ostringstream ss;

fstream plik( "map01.txt", ios::out );
if( plik.good() )
{
    for( int i = 1; i <= 10; i++ )
    {
        for( int g = 1; g <= 10; g++ )
        {
            int u = rand() % 9 + 1;
           
           
            ss << u;
            string str = ss.str();
           
            plik << " " << str;
           
           
            plik.flush();
        }
        plik << "\n";
    }
    plik.close();

Lecz podany kod robi takie coś:
1 wylosowana liczba : 2
2 -||- : 5
3 -||- : 1

I zapisuje do pliku takie dane:
 2 25 251,
a ja chcę by tak zapisywało:
 2 5 1


EDIT:
Jak wyczyścić ss??
P-50501
malan
» 2012-02-11 12:32:37
Metoda ios::clear: ios::clear (cplusplus.com).
P-50503
pekfos
» 2012-02-11 13:28:05
Metoda ostringstream::str(). ios::clear() tylko czyści flagi. Zawartości nie.
P-50513
Trix
Temat założony przez niniejszego użytkownika
» 2012-02-11 18:56:49
Ok, poradziłem sobie :)
P-50548
malan
» 2012-02-11 19:33:36
Cieszymy się, że sobie poradziłeś, ale mógłbyś się podzielić tym rozwiązaniem dla potomnych :)
P-50556
« 1 »
  Strona 1 z 1