• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ferpedes

[Resolvido][Dúvida] Imprimir no ecrã números com muitos dígitos.

3 mensagens neste tópico

Boas, estive aqui a fazer umas brincadeiras e deparei-me com um problema: ao imprimir números com grande número de dígitos, o compilador automaticamente utiliza expoentes para os representar.

A minha questão era saber se há alguma maneira de conseguir obter o número sem expoentes.

Antes de mais obrigado e cá vai o código:

#include <iostream>

using namespace std;

int main() {
unsigned long double total = 1; //double por ser mais preciso que float

for (int numero = 1; numero<=100; numero++){
	total=total * numero;
	cout<<numero<<"\n"; //Apenas para controlar se está tudo a correr bem
}
cout<<"\n\nO total e de: "<<total<<endl;

system("pause");
return 0;
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, o formato em que os números são impressos pode ser manipulado. O objecto cout tem métodos para formatar o output.

Link (inglês): IO Flags.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigado pela ajuda OldCoder. Afinal trata-se de uma coisa muito simples da qual já não me lembrava: fixed.

Para quem estiver interessado, aqui fica o código final:

#include <iostream>

using namespace std;

int main() {
        unsigned long double total = 1; //double por ser mais preciso que float

        for (int numero = 1; numero<=100; numero++){
                total=total * numero;
                cout<<numero<<"\n"; //Apenas para controlar se está tudo a correr bem
        }
        cout<<"\n\nO total e de: "<<fixed<<total<<endl;
       
        system("pause");
        return 0;
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora