Sacar el "factorial" de un numero con C++ ?

Cerrado
Message postés
2
Date d'inscription
martes, 13 de noviembre de 2012
Estatus
Miembro
Última intervención
martes, 13 de noviembre de 2012
-
 Elvergalindo -
Hola,
Buen Dia
Alguien me podria explicar, como podria realizar un programa para
sacar el "factorial" de un numero Usando El bucle "while"
Sin usar otros bucles "
Lenguaje: C++
................................................

Por ejemplo :
Quiero que el programa pida al usuario un numero entero cualquiera , ... y luego lo multiplique por cada numero que vaya antes de el numero introducido !

Ejemplo2:

Digamos que El numero introducido es : 5
Ahora quiero que lo multiplique asi: 5*4*3*2*1
y me de el resultado !

Les agradeceria mucho que contestaran !!

5 respuestas

Message postés
2
Date d'inscription
lunes, 26 de noviembre de 2012
Estatus
Miembro
Última intervención
lunes, 26 de noviembre de 2012
129
hola que tal este programa es muy basico aqui te dejo el codigo

#include<stdio.h>
#include<conio.h>
int main()
{
int fac=0;
printf("Ingresa numero para calcular el factorial ");
scanf("%d",&fac);
int temp=fac-1;
int r=fac;
while (temp>=1)
{
r=r*temp;
temp--;
}

printf("El factorial de %d es: %d ", fac,r);
getch();
}

si tienes alguna duda me avisas
Con for como seria??
en lo de while
como no le entierndo
gracias si me hiso de gran ayuda!! :D :D
y con un if como seria?
como se ria con do
Message postés
3
Date d'inscription
sábado, 21 de septiembre de 2013
Estatus
Miembro
Última intervención
sábado, 21 de septiembre de 2013
27
#include<stdio.h>

void main(){
int resultado=1;
int numero,factorial;
printf("Este programa calcula el factorial de un numero entero\n");
printf("Ingrese el numero: ");
scanf("%d",&numero);
factorial=numero;
while(factorial>1){
resultado=resultado*factorial;
factorial=factorial-1;
}
printf("El resultado de %d ! es: %d\n",numero,resultado);
}
graX :') me ah salvado :'D ?
#include <iostream>

using namespace std;


int main()
{
int numero,i,res=1;
cout<<"Ingresa un numero "<<endl;
cin>>numero;
for(i=1;i<=numero;i++)
{res=res*i;}
cout<<res;

return 0;
}
return 0 es para no ponerle system pause? (lo siento por la ignorancia, soy muy nueva en esto)
> cato
depurando el programa el limite es hasta el numero 34 de ahi en mas dan 0" todos,
y en algunos casos los da con signo negativo...
podrias aclar mi duda o ese problema?
Message postés
1
Date d'inscription
jueves, 3 de noviembre de 2016
Estatus
Miembro
Última intervención
jueves, 3 de noviembre de 2016
4
#include <iostream>
using namespace std;

int factorial(int num);

int main()
{
int n;

cout << "Introduzca un numero: ";
cin >> n;

if (n < 13)
cout << "\nEl factorial del numero " << n << " es: " << factorial(n);

else
cout << "\nEl numero es demasiado grande para calcular.";

}

int factorial (int num)
{
int i, k, factorial;
factorial = num;

if (num == 0 or num == 1)
factorial = 1;

else
{
for (i = (num - 1); i < num; i++)
{
for (k = 1; k < num; k++)
factorial = factorial * (num - k);
}
}

return factorial;
}
teniendo que cumplir ante un profe hdp que, solo por poder programar rápido, te jode la vida pidiendo que tu programita calcule factorial de 120 llegue a este código. espero les sirva, es en c muy básico.

#include<stdio.h>
#include<stdlib.h>

#define H double // gracias a 'double' podes calcular hasta factorial de 170

H factor (short); //prototipo

int main (void)
{
H n;

printf("\n\tprograma factorial\n");

printf("\ningrese el numero...\n");

scanf("%lf",&n);

printf("\nfactorial de 'n':\n");

n = factor(n); //llamada
printf("\n\t%g\n",n);



system("pause");

}


H factor (short n) //implementacion
{
H producto=1;
short i=0;

while ((n-i)>1)
{
producto = (H)producto * (n-i);//ah, acordate que la 'H' significa 'double',
//osea casteas(obligas a sertipo..),

i++;

}

return (producto);
};
me gusta mucho programacion y quisiera aprender gracias por resolver problemas
muy largo los asen
en c++ de python 2

n=int(raw_input("entero positivo:"))
x=1
for f in range (n):
x=x*(f+1)
print x
en c++ ? el scrip porfa para usarlo en zinga I
#include <iostream>
using namespace std;
int main(){
int num;
int fact=1;
cout<<"Ingrese numero"<<endl;
cin>>num;
for(int i=1;i<num+1;i++){
fact=i*fact;
}
cout<<fact;
return 0;

}
Message postés
2
Date d'inscription
viernes, 3 de febrero de 2017
Estatus
Miembro
Última intervención
viernes, 3 de febrero de 2017
> Chambi
Amigo necesito escribir un programa que calcule la suma de todos los numeros multiplos de 5 comprendidos entre dos enteros leidos por teclado.
por favor