JavaScript - Programa JavaScript calcular factorial

 
Vista:
sin imagen de perfil
Val: 1
Ha disminuido su posición en 49 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Programa JavaScript calcular factorial

Publicado por Daniel (1 intervención) el 11/05/2020 02:05:21
Hola a todos, tengo que hacer un script que calcule el factorial de un número.
Aparte debe mostrar por consola toda la operación, por ejemplo si se introduce un 4:
1.Calculando Factorial de 4
2.Operación = 4x3x2x1
3.Factorial = 24

La parte del script que lo calcule ya lo tengo y funciona
Código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script>
var n1,n2;
    n1=parseInt(prompt("Introduce un número"));
    n2=1;
if(n1<0){
    while(n1<0){
        n1=parseInt(prompt("El valor del número introducido debe ser mayor que 0"));
    }
}
while (n1>1){
    n2=n1*n2;
    n1=n1-1;
}
 
document.write("El factorial es: "+n2);
</script>

La parte de la consola no sé como implementarlo.

Espero que alguien pueda ayudarme, un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 59
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Programa JavaScript calcular factorial

Publicado por luis (22 intervenciones) el 07/11/2020 01:17:35
Hola Daniel. El factorial de un número se puede resolver con una función sencilla empleando un bucle en modo "for".

He creado una página que ejecuta esta función. Por defecto aparece el número 10, pero puedes sustituirlo por cualquier otro. Debe ser un número entero. No he implementado el programa con ningún mecanismo de seguridad que condicione el contenido del campo, por lo que si colocas una letra o número con decimales te dará error y no aparecerá ninguna advertencia.

La función es ésta:

1
2
3
4
5
6
7
8
9
10
function factorial(){
numero1=1;
numero=eval(f1.numeroelegido.value);
 
for(i=1;i<=numero;i++)
 
numero1=numero1*i;
 
valor.innerHTML=numero1;
}

Se entiende que en el código de la página tiene que aparecer el identificador de "valor" donde aparece el resultado. Además tiene que haber una función que en este caso he llamado "f1" para poder utilizar una caja de texto (textbox) donde colocar el número que quieras.

El código completo queda así:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
 
<head>
<meta http-equiv="Content-Language" content="es">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Calculo de factorial de un número. Creado por Luis email luis.1966@yahoo.es</title>
</head><script language=javascript>
 
function factorial(){
numero1=1;
numero=eval(f1.numeroelegido.value);
 
for(i=1;i<=numero;i++)
 
numero1=numero1*i;
 
valor.innerHTML=numero1;
}
 
</script>
 
<body ><form name=f1>
 
<div style="position: absolute; width: 376px; height: 45px; z-index: 1; left: 143px; top: 73px" id="layer1">
	<table border="1" width="100%">
		<tr>
			<td width="39%">
			<p align="center"><font face="Arial">introducir número</font></td>
			<td width="57%">
			<p align="center">
			<font size="3">
			<input type="text" name="numeroelegido" size="4" value="10" style="font-size: 24pt; font-family: arial; text-align: center">
			<input type="button" value="calcular" name="B1" onclick='factorial()'></font></td>
		</tr>
		<tr>
			<td width="39%" align="center">
			<p align="center"><font face="Arial">resultado</font></td>
			<td width="57%" align="center">
			<b><font face="Arial" size="6" id=valor>.</font></b></td>
		</tr>
		</table>
</div>
</form>
</body>
 
</html>

Espero que te haya servido de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar