Pages

miércoles, 30 de enero de 2013

Calcular el factorial de un numero solucion iterativa Codigo en C#

Problema
Diseñar un algoritmo que permita calcular el factorial de un número. Utilice las estructuras repetitivas (Repetir Hasta).

Solución
  • Entrada: 5
  • Salida: 120
Codigo Fuente en C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Main
{
    class Program
    {
        static void Main(string[] args)
        {
             int i,fact=1,num;
        Console.WriteLine("Ingresa un numero");
        num = Convert.ToInt16(Console.ReadLine());
        for(i=1;i<num+1;i++){
            fact=fact*i;
        }
        Console.WriteLine(fact);
        Console.ReadLine();
        }
    }
}

6 comentarios:

fer chunga dijo...

esa mierda esta mal

Anónimo dijo...

el problema esta bien solo es una manera diferente de hacerlo prueba antes de criticar el codigo esta bien

Anónimo dijo...

Amigo el código si está bien, pero eso es una solución recursiva no iterativa!

Joseph Zemeckis dijo...

Si funciona, muchas gracias por el aporte, el detalle es que no funciona para cantidades muy grandes ni siquiera usando long, sino que se debe usarse BigInteger.


Anónimo dijo...

Gracias, me ayudó mucho

Yoel Pumar dijo...

private static void Main(string[] args)
{

int n, factorial = 0;
string y1 = null;

do
{
Console.WriteLine("Enter the number to find the factorial: ");
n = Convert.ToInt32(Console.ReadLine());

if (n < 0)
{
Console.WriteLine("The number does not factorial because it is less than zero. ");
}
if (n >= 0)
{
factorial = 1;
if (n > 0)
{
do
{
factorial = factorial * n;
n = n - 1;
} while (n > 1);
}
Console.WriteLine("The factorial of is: " + factorial + ".");
}
Console.WriteLine("To continue press " + "y" + ".");
Console.WriteLine("To exit press a letter.");
y1 = Console.ReadLine();
} while (y1 == "Y" || y1 == "y");
Console.WriteLine("End.");
Console.ReadLine();
}

Asi lo entenderan mejor

Publicar un comentario en la entrada