PSEUDOCODIGO
// Procesos de Inicio
// Subalgoritmo 1
Función AREATERRENO
// Defino mis variables
// Area: A
Definir A Como Real
// Base: B
Definir B Como Real
// Altura: H
Definir H Como Real
// Ingreso de valores
Escribir 'Introduzca la Base:'
Leer B
Escribir 'Introduzca la Altura:'
Leer H
// PROCESO
A <- (B*H)
// Mostar resultado
Escribir 'El área del terreno rectangular es = ', A
FinFunción
// Subalgortimo 2
Función AREACIRCULAR
// Defino mis variables
// Area: A
Definir A Como Real
// Base: B
Definir r Como Real
// Ingreso de valores
Escribir 'Introduzca el radio de la rotonda:'
Leer r
// PROCESO
A <- (PI*r*r)
// Mostar resultado
Escribir 'El área de la rotonda es= ', A
FinFunción
// Subalgoritmo 3
Función AREAMAYOR
// Defino mis variables
// Terreno: A
Definir A Como Real
// Rotonda: B
Definir B Como Real
// Ingreso de valores
Escribir 'Introduzca el área del terreno:'
Leer A
Escribir 'Introduzca el área de la rotonda:'
Leer B
// PROCESO Y MUESTRA DE RESULTADOS
Si A>B Entonces
Escribir 'El terreno tiene un área mayor que la rotonda.'
FinSi
Si A<B Entonces
Escribir 'La rotonda tiene un área mayor que el terreno.'
FinSi
Si A=B Entonces
Escribir 'Ambas áreas son iguales.'
FinSi
FinFunción
// Subalgoritmo 4
Función PAROIMPAR
// Defino mis variables
// Cantidad de terrenos C1
Definir C1 Como Real
// Ingreso de valores
Escribir 'Introduzca la cantidad de terrenos:'
Leer C1
// PROCESO Y MUESTRA DE RESULTADOS
residuo <- C1 MOD 2
Si residuo=0 Entonces
Escribir 'La cantidad de terrenos es par'
SiNo
Escribir 'La cantidad de terrenos es impar'
FinSi
FinFunción
// Inicio
Algoritmo Menu
// Definición de variables
Definir OP Como Entero
// Ingreso de datos
Repetir
// mostrar menu
Limpiar Pantalla
Escribir 'Menú'
Escribir ' 1. Cálculo de área para terreno rectangular'
Escribir ' 2. Cálculo de área para terreno rotonda'
Escribir ' 3. Cálculo del área mayor'
Escribir ' 4. La cantidad de terrenos ocupados es par o impar'
Escribir ' 5. Salir'
// ingresar una opción
Escribir 'Elija una opción (1-5): '
Leer OP
// Proceso
Según OP Hacer
1:
AREATERRENO()
2:
AREACIRCULAR()
3:
AREAMAYOR()
4:
PAROIMPAR()
5:
Escribir 'Gracias'
De Otro Modo:
Escribir 'Opción no válida'
FinSegún
Escribir 'Presione enter para continuar'
Esperar Tecla
Hasta Que OP=5
// Mostrar resultados
Escribir 'Programa realizado por yyyyyy contactos al número xxxxxx'
FinAlgoritmo
1. Genere el pseudocodigo y el diagrama de flujo para sumar N números.
FOR - SUMAR N NUMEROS
//Inicio
//Procesos de Inicio
Algoritmo SumarNumeros
Definir N, i, numero, suma Como Entero
//Ingreso de datos
Escribir "Ingrese la cantidad de números a sumar:"
Leer N
suma <- 0
//Proceso
Para i <- 1 Hasta N Con Paso 1 Hacer
Escribir "Ingrese el número ", i, ":"
Leer numero
suma <- suma + numero
FinPara
//Resultados
Escribir "La suma total es: ", suma
//Fin
FinAlgoritmo
2. Genere el pseudocodigo y el diagrama de flujo para validar una
contraseña.
WHILE DO VALIDAR CONTRASEÑA
//Inicio
//Procesos de Inicio
Algoritmo ValidarContrasena
//Definir variables
Definir contrasena Como Cadena
Definir intento Como Cadena
//Ingreso de datos
contrasena <- "utb123"
Escribir "Ingrese la contraseña:"
Leer intento
//Proceso
Mientras intento <> contrasena Hacer
Escribir "Contraseña incorrecta. Intente nuevamente:"
Leer intento
FinMientras
Escribir "¡Acceso concedido!"
FinAlgoritmo
3. Genere el pseudocodigo y el diagrama de flujo para obtener un numero
aleatorio de 4 cifras
PROCESO PARA GENERAR NUMERO ALEATORIO DE 4 CIFRAS
Proceso NumeroAleatorio4Cifras
Definir numero Como Entero
// Generar número aleatorio entre 1000 y 9999
numero <- Aleatorio(1000, 9999)
Escribir "El número aleatorio de 4 cifras es:", numero
FinProceso
4. Utilice los programas 2 y 3 para generar un algoritmo de control similar a
CAPTCHA
CAPTCHA BASICO
Proceso NumeroAleatorio4Cifras
Definir numero Como Entero
// Generar número aleatorio entre 1000 y 9999
numero <- Aleatorio(1000, 9999)
Escribir "El número aleatorio de 4 cifras es:", numero
Definir contrasena Como entero
Definir intento Como entero
//Ingreso de datos
contrasena <- numero
Escribir "Ingrese el codigo:"
Leer intento
//Proceso
Mientras intento <> contrasena Hacer
Escribir "codigo incorrecto incorrecta. Intente nuevamente:"
Leer intento
FinMientras
Escribir "¡Acceso concedido!"
FinProceso
5. Genere el pseudocodigo y el diagrama de flujo para verificar que un
numero sea mayor que 10.
REPEAT UNTIL – INGRESE NUMERO MAYOR QUE 10
//Inicio
//Procesos de Inicio
Algoritmo Mayoracero
//Definir variables
Definir num Como Entero
//Ingreso de datos
//Proceso
Repetir
Escribir "Ingrese un número mayor que 10:"
Leer num
Hasta Que num > 10
Escribir “Numero valido“, num
FinAlgoritmo
6. Genere el pseudocodigo y el diagrama de flujo para obtener un
acumulador de suma
ACUMULADOR DE SUMA
Proceso AcumuladorSuma
Definir suma, i Como Entero
suma <- 0
Para i <- 1 Hasta 5 Con Paso 1
suma <- suma + i
Fin Para
Escribir "La suma es: ", suma
FinProceso
7. Genere el pseudocodigo y el diagrama de flujo para obtener la suma de los
cuadrados para los números del 1 al 4.
SUMATORIA
Proceso SumatoriaCuadrados
Definir suma, i Como Entero
suma <- 0
Para i <- 1 Hasta 4 Con Paso 1
suma <- suma + i^2
Fin Para
Escribir "La sumatoria de i^2 desde 1 hasta 4 es: ", suma
FinProceso
8. Genere el pseudocodigo y el diagrama de flujo para obtener la productoria
para los números del 1 al 4.
PRODUCTORIA
Proceso Productoria
Definir producto, i Como Entero
producto <- 1
Para i <- 1 Hasta 4 Con Paso 1
producto <- producto * i
Fin Para
Escribir "La productoria es: ", producto
FinProceso
9. Genere el pseudocodigo y el diagrama de flujo para adivinar un numero
aleatorio
Proceso AdivinarNumero
Definir numeroSecreto, intento, contador Como Entero
// Iniciar generador de aleatorios
numeroSecreto <- Aleatorio(1, 100)
contador <- 0
Escribir "He pensado un número entre 1 y 100. ¡Adivínalo!"
Repetir
Escribir "Ingresa tu intento: "
Leer intento
contador <- contador + 1
Si intento < numeroSecreto Entonces
Escribir "El número secreto es mayor."
Sino
Si intento > numeroSecreto Entonces
Escribir "El número secreto es menor."
Sino
Escribir "¡Felicidades! Adivinaste el número en ", contador, " intentos."
FinSi
FinSi
Hasta Que intento = numeroSecreto
FinProceso
1. Generar un pseudocodigo y un diagrama de flujo para verifica si el numero
de una tarjeta de bancaria es válida aplicando el algoritmo de Luhn.
VERIFICACION DE TARJETA DE DEBITO
Proceso ValidarTarjetaLuhn
Definir numtar, long, suma, i, digito, doble Como Entero
Definir caracter Como Caracter
suma <- 0
Escribir "Introduce el número de la tarjeta (sin espacios):"
Leer numeroTarjeta
long <- Longitud(numeroTarjeta)
Para i <- long Hasta 1 Con Paso -1
caracter <- SubCadena(numeroTarjeta, i, i)
digito <- ConvertirANumero(caracter)
Si (long - i) MOD 2 = 1 Entonces
doble <- digito * 2
Si doble > 9 Entonces
doble <- doble - 9
FinSi
suma <- suma + doble
Sino
suma <- suma + digito
FinSi
FinPara
Si suma MOD 10 = 0 Entonces
Escribir "La tarjeta es válida (pasa la verificación Luhn)."
Sino
Escribir "La tarjeta NO es válida."
FinSi
FinProceso
2. Generar un pseudocodigo y un diagrama de flujo para una serie aritmética.
Generación de una serie aritmética
Proceso SerieAritmetica
Definir i, termino Como Entero
termino <- 2
Escribir "Serie aritmética: comienza en 2, incrementa en 3"
Para i <- 1 Hasta 10 Con Paso 1
Escribir termino
termino <- termino + 3
FinPara
FinProceso
3. Realiza un programa que procese 2 lotes de números. Cada lote tiene
exactamente 4 números enteros. El programa debe:
• Leer los 4 números de cada lote
• Calcular la suma total del lote
• Mostrar la suma después de cada lote
Proceso SumaPorLotesBasico
Definir numero, suma, i, j Como Entero
Para i <- 1 Hasta 2 Con Paso 1
Escribir "Lote ", i
suma <- 0
Para j <- 1 Hasta 4 Con Paso 1
Escribir "Ingrese número ", j, ":"
Leer numero
suma <- suma + numero
FinPara
Escribir "La suma del lote ", i, " es: ", suma
Escribir "-------------------------"
FinPara
FinProceso
INGRESO Y SALIDA MANUAL
Proceso LeerMostrarVectorManual
Dimension numeros[5]
Definir numeros Como Entero
numeros[1] <- 3
numeros[2] <- 56
numeros[3] <- 6
numeros[4] <- 8
numeros[5] <- 23
Escribir "Los números ingresados son:"
Escribir "Numero 1: ", numeros[1]
Escribir "Numero 2: ", numeros[2]
Escribir "Numero 3: ", numeros[3]
Escribir "Numero 4: ", numeros[4]
Escribir "Numero 5: ", numeros[5]
FinProceso
INGRESO Y SALIDA AUTOMATICA
Proceso LeerMostrarVector
Proceso LeerMostrarVector
Dimension caracter[5]
Dimension numeros[5] //Definir caracter
Definir numeros Como Entero
Para i <- 1 Hasta 5 Con
Para i <- 1 Hasta 5 Con Paso 1 Paso 1
Escribir "Ingrese el número ", i, ":"
Escribir "Ingrese
Leer numeros[i] el caracter ", i, ":"
FinPara
Leer caracter[i]
FinPara
Escribir "Los números ingresados son:"
Para i <- 1 Hasta 5 Con Paso 1 Escribir "Los carcteres
ingresados son:"
Escribir "Posición ", i, ": ", numeros[i]
Para i <- 1 Hasta 5 Con
Paso 1
Escribir
FinPara
FinProceso
SUMA
Proceso SumaVector
Dimension datos[5]
Definir datos, suma, i Como Entero
suma <- 0
Para i <- 1 Hasta 5
Escribir "Ingrese un número:"
Leer datos[i]
suma <- suma + datos[i]
FinPara
Escribir "La suma total es: ", suma
FinProceso
En otros programas incia
desde 0 hacia adelante y no
desde el 1
PROMEDIO
Proceso PromedioVector
Dimension notas[5]
Definir notas, suma, promedio Como Real
Definir i Como Entero
suma <- 0
// Leer las 5 notas
Para i <- 1 Hasta 5
Escribir "Ingrese la nota ", i, ":"
Leer notas[i]
suma <- suma + notas[i]
FinPara
// Calcular promedio
promedio <- suma / 5
// Mostrar resultado
Escribir "El promedio de las notas es: ", promedio
FinProceso
INVERSION
Proceso InvertirVector
Dimension vector[5]
Definir vector Como Entero
Definir i Como Entero
// Ingreso de datos al vector
Para i <- 1 Hasta 5
Escribir "Ingrese el valor ", i, ":"
Leer vector[i]
FinPara
// Mostrar el vector invertido
Escribir "El vector invertido es:"
Para i <- 5 Hasta 1 Con Paso -1
Escribir vector[i]
FinPara
FinProceso
SUMA POLINOMIOS
Proceso SumaPolinomios
Dimension P[4]
Dimension Q[4]
Dimension S[4]
Definir P, Q, S Como Real
Definir i Como Entero
// Ingreso de coeficientes del primer polinomio
Escribir "Ingrese los coeficientes del primer polinomio (P):"
Para i <- 1 Hasta 4
Escribir "Coeficiente de x^", i, ":"
Leer P[i]
FinPara
// Ingreso de coeficientes del segundo polinomio
Escribir "Ingrese los coeficientes del segundo polinomio (Q):"
Para i <- 1 Hasta 4
Escribir "Coeficiente de x^", i, ":"
Leer Q[i]
FinPara
// Sumar coeficientes
Para i <- 1 Hasta 4
S[i] <- P[i] + Q[i]
FinPara
// Mostrar resultado
Escribir "El polinomio suma S(x) es:"
Para i <- 4 Hasta 1 Con Paso -1
Si i > 0 Entonces
Escribir Sin Saltar S[i], "x^", i, " + "
Sino
Escribir S[i]
FinSi
FinPara
FinProceso
BUSQUEDA DE VALOR
Proceso BusquedaVector
Dimension vector[5]
Definir vector, i, buscado Como Entero
Definir encontrado Como Logico
encontrado <- FALSO
// Llenar el vector
Para i <- 1 Hasta 5
Escribir "Ingrese el valor ", i, ":"
Leer vector[i]
FinPara
// Leer el número a buscar
Escribir "Ingrese el número a buscar:"
Leer buscado
// Buscar el número
Para i <- 1 Hasta 5
Si vector[i] = buscado Entonces
encontrado <- VERDADERO
Escribir "El número fue encontrado en la posición ", i
FinSi
FinPara
Si encontrado = FALSO Entonces
Escribir "El número no se encuentra en el vector."
FinSi
FinProceso
ORDENACION
Proceso OrdenarVectorBurbuja
Dimension vector[5]
Definir vector, i, j, aux Como Entero
// Ingreso de datos
Para i <- 1 Hasta 5
Escribir "Ingrese el valor ", i, ":"
Leer vector[i]
FinPara
// Método burbuja
Para i <- 1 Hasta 4
Para j <- 1 Hasta 5 - i
Si vector[j] > vector[j+1] Entonces
aux <- vector[j]
vector[j] <- vector[j+1]
vector[j+1] <- aux
FinSi
FinPara
FinPara
// Mostrar vector ordenado
Escribir "Vector ordenado de menor a mayor:"
Para i <- 1 Hasta 5
Escribir vector[i]
FinPara
FinProceso
Usa el metodo bubuja
Desde abajo es como lo utiliza
INTERCAMBIO
Proceso IntercambiarValoresVector
Dimension vector[5]
Definir vector, i, pos1, pos2, aux Como Entero
// Ingreso del vector
Para i <- 1 Hasta 5
Escribir "Ingrese el valor ", i, ":"
Leer vector[i]
FinPara
// Ingreso de posiciones a intercambiar
Escribir "Ingrese la primera posición a intercambiar (1 a 5):"
Leer pos1
Escribir "Ingrese la segunda posición a intercambiar (1 a 5):"
Leer pos2
// Validar posiciones
Si pos1 >= 1 Y pos1 <= 5 Y pos2 >= 1 Y pos2 <= 5 Entonces
aux <- vector[pos1]
vector[pos1] <- vector[pos2]
vector[pos2] <- aux
Escribir "Vector después del intercambio:"
Para i <- 1 Hasta 5
Escribir vector[i]
FinPara
Sino
Escribir "¡Posiciones inválidas!"
FinSi
FinProceso