Kako otkriti koliko znamenaka ima int varijabla?

poruka: 11
|
čitano: 1.740
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
11 godina
neaktivan
offline
Kako otkriti koliko znamenaka ima int varijabla?

Null

Poruka je uređivana zadnji put pet 19.8.2016 15:07 (KillGeek).
 
0 0 hvala 0
17 godina
offline
Kako otkriti koliko znamenaka ima int varijabla?

SizeOf(int)???

Rvat katolik!
 
0 3 hvala 0
13 godina
offline
Re: Kako otkriti koliko znamenaka ima int varijabl
KillGeek kaže...

Radi se o jeziku c++, znam da se nesto radi oko size funkcije. No neznam tocno kako to postaviti.

Pretpostavljam da misliš na signed int.

 

U memoriji zauzima 4 bajta, a opseg mu je od –2,147,483,648 do 2,147,483,647.

Kod unsigned int-a, nema negativnih brojeva i ide samo u plus, zauzima isto, a opseg je od 0 do 4,294,967,295.

Crk'o Marshall!
11 godina
neaktivan
offline
Re: Kako otkriti koliko znamenaka ima int varijabl

Null

Bojan Balinović
Poruka je uređivana zadnji put pet 19.8.2016 15:07 (KillGeek).
15 godina
neaktivan
offline
Kako otkriti koliko znamenaka ima int varijabla?

Konvertiraj u string ili polje znakova char, onda uzmeš duljinu polja.

 

http://www.norgems.com
 
1 0 hvala 0
11 godina
neaktivan
offline
Re: Kako otkriti koliko znamenaka ima int varijabl

Null

Bojan Balinović
Poruka je uređivana zadnji put pet 19.8.2016 15:07 (KillGeek).
17 godina
offline
Re: Kako otkriti koliko znamenaka ima int varijabl
KillGeek kaže...
woodgamesfx kaže...

Konvertiraj u string ili polje znakova char, onda uzmeš duljinu polja.

 

Dobra ideja, thanks{#}!!!!

Odbaci desnu znamenku kroz petlju, i tako sve dok broj ne postane 0, broj iteracija petlje je broj znamenki, vodi računa o tome da tako uništiš broj.

 

for(; broj>0; broj /= 10)

       brojac++;

17 godina
offline
Kako otkriti koliko znamenaka ima int varijabla?

Ajde, molio bi tog cijenjenog davača tda da mi objasni u čemu sam napravio grešku, iskreno, ja je ne vidim, pa bi volio da mi kaže da je i ja uočim.

 
1 0 hvala 0
16 godina
offline
Kako otkriti koliko znamenaka ima int varijabla?

TD je za eleganciju, inače je točno.

 
0 0 hvala 0
17 godina
offline
Re: Kako otkriti koliko znamenaka ima int varijabl
Punti kaže...

TD je za eleganciju, inače je točno.

aha, hvala na pojašnjenju, inače pisao sam diretno u editor, a ne preko IDE-a jer su samo dvije linije koda.

Poruka je uređivana zadnji put pet 20.12.2013 14:11 (Floki).
17 godina
neaktivan
offline
Re: Kako otkriti koliko znamenaka ima int varijabl

Ako su u pitanju 32-bitni integeri mozes napraviti ovako nesto:
#include <iostream>
#include <limits>

int numDigits(int x)
{
    if (x == std::numeric_limits<int>::min()) return 10;
    if (x < 0) return numDigits(-x);

    if (x >= 10000)
    {
        if (x >= 10000000)
        {
            if (x >= 100000000)
            {
                if (x >= 1000000000)
                    return 10;
                return 9;
            }
            return 8;
        }
        if (x >= 100000)
        {
            if (x >= 1000000)
                return 7;
            return 6;
        }
        return 5;
    }
    if (x >= 100)
    {
        if (x >= 1000)
            return 4;
        return 3;
    }
    if (x >= 10)
        return 2;
    return 1;
}

int main(void)
{
    int numOfDigits = numDigits(-2147483648);

    std::cout << numOfDigits << '\n';

    return 0;
}

 

Ako zelis i minus racunati kao znamenku, samo dodaj u ova prva dva if-a +1, dakle:

if (x == std::numeric_limits<int>::min()) return 10 + 1;
    if (x < 0) return numDigits(-x) + 1;

Perhaps today IS a good day to die. PREPARE FOR RAMMING SPEED!
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice