Skip to content
ExamplesEspañolWorkspace →

Factorial and Power

Functions that compute a factorial and a power.

Level
Intermediate
Concepts:
Input & output
Functions
Para
Open in Codoritmo

Run, change and debug this example in your browser.

What you'll learn

A Funcion takes parameters and returns the value of the variable written before <-. You can call it inside Escribir just like a built-in PSeInt function.

Code

factorial-power.psc · 25 lines
Funcion resultado <- Factorial(n)    Definir resultado, i Como Entero    resultado <- 1    Para i <- 2 Hasta n Hacer        resultado <- resultado * i    FinParaFinFuncionFuncion resultado <- Potencia(base, exponente)    Definir resultado Como Real    Definir i Como Entero    resultado <- 1    Para i <- 1 Hasta exponente Hacer        resultado <- resultado * base    FinParaFinFuncionAlgoritmo FactorialYPotencia    Definir n Como Entero    Escribir "Escribe un número:"    Leer n    Escribir n, "! = ", Factorial(n)    Escribir "2 elevado a ", n, " = ", Potencia(2, n)    Escribir "Comprobación con el operador ^: ", 2 ^ nFinAlgoritmo

Flowchart

Each block in the flowchart matches one instruction in the code.

Algoritmo FactorialYPotencia
Algoritmo FactorialYPotenciaAlgoritmo FactorialYPotenciaAlgoritmo FactorialYPotenciaDefinir n Como EnteroDefinir n Como EnteroEscribir "Escribe un número:"Escribir "Escribe un número:"Leer nLeer nEscribir n, "! = ", Factorial(n)Escribir n, "! = ",Factorial(n)Escribir "2 elevado a ", n, " = ", Potencia(2, n)Escribir "2 elevado a ", n, "= ", Potencia(2, n)Escribir "Comprobación con el operador ^: ", 2 ^ nEscribir "Comprobación con eloperador ^: ", 2 ^ nFinAlgoritmoFinAlgoritmo
Funcion Factorial
Funcion FactorialFuncion resultado <- Factorial(n)Funcion resultado <- Factorial(n)Definir resultado, i Como EnteroDefinir resultado, i ComoEnteroresultado <- 1resultado <- 1Para i <- 2 Hasta n HacerPara i <- 2 Hasta nresultado <- resultado * iresultado <- resultado * iFinFuncion (devuelve resultado)FinFuncion (devuelve resultado)
Funcion Potencia
Funcion PotenciaFuncion resultado <- Potencia(base, exponente)Funcion resultado <-Potencia(base, exponente)Definir resultado Como RealDefinir resultado Como RealDefinir i Como EnteroDefinir i Como Enteroresultado <- 1resultado <- 1Para i <- 1 Hasta exponente HacerPara i <- 1 Hasta exponenteresultado <- resultado * baseresultado <- resultado * baseFinFuncion (devuelve resultado)FinFuncion (devuelve resultado)

Sample run

This is what the program shows when it runs. The answers typed by the user are highlighted.

Escribe un número:User answer: 66! = 7202 elevado a 6 = 64Comprobación con el operador ^: 64

Challenge

Write a Sumatoria(n) function that adds the numbers from 1 to n.

Show hint

Copy the shape of Factorial, but start at 0 and add instead of multiplying.

Open in Codoritmo