Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tempter

Fatorial e Binário

Recommended Posts

Pessoal , você sabem me dizer como posso fazer para estes meus codigos funcionarem com valores altos ? eles estão funcionando bem mas quando tento com valor acima de 10000 por exemplo já tenho problemas :/

 

Já tentei LONG e etc mais ainda não sei trabalhar com isso...s e alguem puder ajudar.

 

 

Este calcula o fatorial de um número

/*====== FATORIAL =======*/#include <conio.h>#include <stdio.h>int fatorial (int numero);void main(){	int numero=0;	clrscr();	printf("Digite um numero = ");	scanf("%d",& numero);	printf("\nO fatorial e igual a %d", fatorial(numero));	getch();}int fatorial (int numero){	int contador, fator;	fator = numero;	for (contador = 1; contador < numero; contador++)  {  fator = fator * contador; }	return (fator);}

 

Este diz quantos digitos tem o número digitado.

/*====== QUANTIDADE DE DIGITOS =======*/#include <conio.h>#include <stdio.h>int tamanho (int numero);int main(){	int numero;	clrscr();	printf("Digite um numero inteiro = ");	scanf("%d",& numero);	printf("\nO tamanho deste numero e %d", tamanho(numero));	getch();	return (0);}int tamanho (int numero){    int i, tam=0;	for (i = 0; numero > 0; i++)	{        tam++;        numero = numero/10;	}	return (tam);}

Obs: se alguem tiver uma forma melhor de fazer o que estou fazendo com qualquer um dos dois eu agradeço.

 

 

OBS: COLOQUEI O TITULO ERRADO, É FATORIAL E CONTAGEM DE DIGITOS. DESCULPEM.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa cara funcionou, legal :) brigadão memso.

 

o de fatorial ficou assim ó

#include <conio.h>#include <stdio.h>double fatorial (double numero);void main(){	double numero=0;	clrscr();	printf("Digite um numero = ");	scanf("%lf",& numero);	printf("\nO fatorial e igual a %.0lf", fatorial(numero));	getch();}double fatorial (double numero){	double contador, fator;	fator = numero;	for (contador = 1; contador < numero; contador++)  {  fator = fator * contador; }	return (fator);}

é lagl usar Double em todas as variáveis assim ? ou seria melhor usar só na saida ?

 

 

 

 

Já no outro caso, o de contar quantas casas tem o númer digitado deu errado... pois com o mesmo código que eu postei antes, só mudando INT pra DOUBLE dá erro na hora de contar as casas, na divisão que eu fiz... você saberia me dizer uma possível solução ?

 

 

Aliás, este DOUBLE é pra números de qualquer tamanho de grandeza ? pois com ele então eu poderia fazer cálculos físicos de milhares de casas nos números ?

 

Valeu mesmo pela ajuda.

Abraços e boa tarde

Compartilhar este post


Link para o post
Compartilhar em outros sites

o double é bem gigantetem também o long doublee por ai vai...

Compartilhar este post


Link para o post
Compartilhar em outros sites

a proposito tu que fez o site do within ?pow curto bastante a banda..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Putz cara valeu memso, ajudou muito suas explicações :) Sobre o site, fui eu sim quem fez hehe... aliás, estou meio parado com ele pois to passando tudo pra php. logo tem coisas novs :D abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.