Identificar teto de um número inteiro

4 respostas
JamesBond

Olá pessoal blz ?

Bom, é o seguinte…
Fiz um programa aqui e para terminá-lo só falta uma coisa, identificar o teto de um resultado em inteiro …
Por exemplo … o resultado gerado é 114 … e quero elevar para 120 …
ou 96 … elevo pra 100 … etc …

Alguém tem alguma idéia ?
abraços

4 Respostas

T

Você quer achar o menor múltiplo de 10 que seja maior ou igual ao número desejado ?

Então calcule (x + 9) / 10 * 10.

Exemplo:

x = 114
(x + 9) / 10 * 10 vai dar: 114 + 9 = 123; 123 / 10 = 12; 12 * 10 = 120.

JamesBond

Opa …valeu thingol …
deu certinho aqui :wink:
gostaria de saber … como vc conseguiu chegar a essa fórmula ?
abraços

T

Ora ora ora… É só você pensar um pouquinho.

Faça uma tabelinha do tipo "o que você tem -> o que você quer".

0 -> 0
1 -> 10
2 -> 10

9 -> 10
10 -> 10
11 -> 20

19 -> 20
20 -> 20

Se você simplesmente dividisse por 10 e multiplicasse por 10, teria algo como:
0 -> 0
1 -> 0
2 -> 0

9 -> 0
10 -> 10
11 -> 10

19 -> 10
20 -> 20

Se você somar alguma coisa antes (digamos 1), dividir e depois somar, então vai "deslocar" o resultado desejado… Veja o que ocorre se somarmos 1:
0 -> 0
1 -> 0
2 -> 0

8 -> 0
9 -> 10
10 -> 10
11 -> 10

18 -> 10
19 -> 20
20 -> 20

Para checar ao resultado desejado, você viu que vai precisar somar 9. Foi assim que cheguei à fórmula.

JamesBond

hummm …
entendi …
bem pensado …
vlw amigo!

Criado 16 de janeiro de 2009
Ultima resposta 16 de jan. de 2009
Respostas 4
Participantes 2