Planteamiento 1:
a manejar en el Pseudocodigo (a traves de PseInt), se le pide la solucion de la ecuacion cuadrtica:
para lo anterior solicitar al usuario los valores para b, a y c, dando como respuestas los valores obtenidos por x1 y x2
Obervacion: Si el valor de la expresino raiz 2 (cuadrado (b)-4* a * c) es negativo se producira un error, ya que la raiz
cuadrada de un numero negativo no esta definida.
Análisis del problema:
Entrada: Ingresar valores de: a, b y c
Proceso: Calcular raíz cuadrada.
Salida: Mostrar raíz cuadrada.
- Proceso ecuacion_cuadratica
- escribir "Ingrese los siguientes valores";
- leer a;
- leer b;
- leer c;
- x1 <- (b- rc(b^2)-rc(4*a*c))/(2*a);
- escribir "El valor de x1 es:",x1;
- x2 <- (b+ rc(b^2)-rc(4*a*c))/(2*a);
- escribir "El valor de x2 es:",x2;
- FinProceso
Planteamiento 2:
Solicite al usuario ingrese su nombre, carrera, grado no. de carnet, y las notas de cada una de las unidades del curso
de matematicas (4 unidades en total), almacenar los datos anteriores, y calcular el PROMEDIO obtenido mostrando en pantalla.
Ademas, Si el promedio es mayor o igual a 60 mostar el mensaje "Curso Ganado", sino mostrar el Mensaje "Curso Perdido".
Análisis del problema
Entrada: nombre, carrera, grado, numero de carnet, notas
Proceso: primera unidad + segunda unidad + tercera unidad + cuarta unidad / 4
Salida: Promedio
- Proceso promedio
- Escribir "ingrese su nombre";
- leer nombre;
- Escribir "ingrese carrera";
- Leer carrera;
- escribir "ingrese grado";
- leer grado;
- escribir "ingrese un no. de carnet";
- leer numero_de_carnet;
- escribir "ingrese las notas de matematicas";
- leer primera;
- leer segunda;
- leer tercera;
- leer cuarta;
- promedio = (primera+segunda+tercera+cuarta) / 4
- si promedio >= 60 entonces
- escribir "curso Perdido";
- sino
- Escribir "curso Ganado";
- FinSi
- FinProceso
Planteamiento 3:
Empleando la Estructura Condicional Si - entonces, detectar si un numero ingresado tiene o no parte fraccionaria. Observacion,
se le recomienda utilizar la funcion Trunc.
Análisis del problema:
Entrada: Ingresar numero
Proceso: Verificar si numero ingresa tiene parte fraccionaria.
Salida: Mostrar si es fracción o no.
- Proceso Fraccionaria
- Escribir "Ingrese un numero natural";
- leer num;
- res <- abs (num);
- Escribir "El numero absoluto del numero es:",res;
- si fraccion = verdadero Entonces
- escribir "Si tiene parte fraccionaria";
- sino
- escribir "No tiene parte Fraccionaria";
- Finsi
- FinProceso
Planteamiento 4:
Realizar el algoritmo que averigue si dados dos numeros introducidos por el teclado uno es divisor del otro.
Análisis del problema:
Entrada: Dos números enteros
Proceso: Comprobar si son divisibles
Salida: Mostrar si son divisibles
- Proceso Divisor
- Escribir "Ingrese un numero entero";
- Leer uno
- Escribir "Ingrese segundo numero entero";
- Leer segundo
- Numero <- uno Es Divisible Por segundo
- Si numero = numero Entonces
- Escribir "numero :" numero;
- Sino
- Escribir "No Divisible"
- FinSi
- FinProceso
Planteamiento 5:
Un angulo se considera agudo si es menor de 90 grados, obtuso si es mayor de 90 grados y recto si es igual a 90 grados. Utilizando esta información, escribir un algoritmo que acepte
un angulo en grados y visualice el tipo de angulo correspondiente a los grados introducidos. Adicional a ello, dibujar el angulo con asteriscos.
Análisis del problema:
Entrada: Angulo
proceso: calcular el angulo
salida: mostrar resultado del angulo
- Proceso Angulo
- Escribir "ingrese un angulo"
- leer angulo
- si angulo < 90 Entonces
- escribir "angulo agudo"
- Escribir " *"
- Escribir " *"
- Escribir " *"
- Escribir " *"
- escribir " *"
- Escribir " ***********"
- FinSi
- si angulo > 90 Entonces
- Escribir "angulo obtuso"
- Escribir " * "
- Escribir " * "
- Escribir " * "
- Escribir " * "
- escribir " *
- Escribir " ***********"
- FinSi
- si angulo = 90 Entonces
- Escribir "angulo recto"
- Escribir "*"
- Escribir "*"
- Escribir "*"
- Escribir "*"
- escribir "*"
- Escribir " ***********"
- FinSi
- FinProceso
Planteamiento 6:
Solicite al usuario ingrese su Nombre, Puesto y salario (almacene los datos anteriores). Despues compare si el Sueldo es
Mayor o igual a 3000 aumentarle 250, sino aumentele 75. Mostrar en pantalla cuanto terminara ganando con el aumento concedido.
Análisis del problema:
Entrada: nombre, puesto, salario mensual
proceso: salario + 250, + 75
Salida: Mostrar salario
Algoritmo:
- Proceso salario
- Escribir "Ingrese su nombre: "
- leer nombre
- escribir "Ingrese su puesto: "
- Leer puesto
- escribir "Ingrese su salario mensual: "
- Leer salario1
- si salario1 >= 3000 Entonces
- salario1 <- Salario1 + 250
- Sino
- salario1 <- salario1 + 75
- FinSi
- Escribir "Su salario total es: ",salario1
- FinProceso
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirHx7pUGMS49t8Uv-ddd1QA7GI4EsZ72AqVHHpVTBZMQ0lKf6hlDTqbdqS8OGCsba9ZAFW1vfp9eEcsDlwEgpKtRyGIVZzsWLbfab2vc7bid_TH3sM7lqVLF94OkB-vulINZwavniL12sd/s640/proceso+salario.jpg)
Planteamiento 7:
Solicite al usuario ingrese el Año acutal y el Año de su nacimiento (almacenarlos), luego calcular la edad de la persona segun los datos ingresados
(muestre la edad en pantalla). Ya obtenida la edad, comparela de la siguente manera: si la edad es mayor o igual a 18 mostar el mensaje "Mayor de edad", sino
mostar el mensaje "Menor de edad".
Analisis del problema
Entrada: Año actual, año de nacimiento
proceso: año actual - año de nacimiento
salida: menor o mayor de edad.
- Proceso edad
- escribir "ingrese anio actual"
- leer anio;
- escribir "ingrese año de nacimiento"
- leer nacimiento;
- Edad <- (anio - nacimiento);
- si edad <= 18 entonces
- escribir "menor de edad";
- sino
- Escribir "mayor de edad";
- FinSi
- FinProceso
Planteamiento 8:
Diseñar un programa que calcule el monto finala pagar, de un producto, conforme a un descuento. Por lo tanto el usuario debera ingresar lo siguiente:
El precio del producto (en quetzales)
cantidad del producto a llevar
el porcentaje que se le aplicara a la compra (%)
Con lo anterior, indicar el total a pagar, mostrando por separado el Total a pago, y el iva de la factura.
Análisis del problema:
Entrada: Precio, cantidad de producto, porcentaje de descuento
proceso: precio*cantidad*porcentaje/100, descuento*12/100
Salida: Mostrar el descuento
- Proceso descuento
- Escribir "Ingrese el precio";
- leer precio
- Escribir "Ingrese la cantidad de producto";
- leer cantidad
- escribir "Ingrese el porcentaje de descuento";
- leer porcentaje
- descuento <- (precio * cantidad) * (porcentaje / 100)
- escribir "total a pagar Q.", descuento
- iva <- (descuento * 12) / 100
- escribir "El IVA de la factura es: Q.", iva
- FinProceso
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinp548vmYMJRgNW60Y-0WDHDKVKOE1QSqKyJutekxysnO2NQzFM08FqlCSt_hTC1dKEaXd0lJIiXMZ8cVi5IQnHJaEkzo8PY6j1CaOwC-V36ByCNzxOWk1s4ra6Zxn3ZibYEWFmmYjxQ3C/s640/proceso+descuento.jpg)
Planteamiento 9:
Escribir un programa en el cual el usuario ingrese una cantidad determinada de centiemtros, y luego convertir dicho valor (realizar conversion) a su equivalente en :
1. milimetros 4. yardas 7. millas
2. pulgadas 5. metros
3. pies 6. kilometros
Análisis del problema
Entrada: medida
proceso: multiplicar cm*cantidad dada & dividirlo.
Salida: Resultado de la conversión
- Proceso medidas
- Escribir "ingrese una cantidad ";
- Leer medidas
- m<-(cm*10)/1
- plg<-(cm*1)/2.54
- pie<-(cm*1)/30.48
- yd<-(cm*1)/91
- mt<-(cm*1)/100
- km<-(cm*1)/100000
- mill<-(cm*1)/160900
- Escribir "milímetros:",cm
- Escribir "pulgadas:",cm
- Escribir "pies:",cm
- Escribir "yarda:",cm
- Escribir "metros:"cm
- Escribir "kilómetros:",cm
- Escribir "millas:",cm
- FinProceso
Planteamiento 10:
Diseñar un sencillo juego en que el usuario debe adivinar un numero aleatorio (funcion azar) generando por la computadora, dicho numero comprendido entre (1 a 20)
El usuario tendra 3 intentos de adivinar el numero, sino lo adivina, despues de los intentos, habra que mostrarle el numero correcto y si lo adivina, limpiar la pantalla y mostrarle
un mensaje de felicitacion, acompañado del numero correcto.
Analisis del problema:
Entrada: ingresar numero
Proceso: Adivinar numero
Salida: mostrar numero correcto.
1 Proceso Juego_Azar
2 intentos <-3
3 numero_secreto <- Azar (20)+1;
4 escribir "Adivine el numero de 1 a 20 :";
5 leer numero_ingresado;
6 mientras numero_secreto<>numero_ingresado & intentos>
7 si numero_secreto>numero_ingresado entonces
8 escribir "Muy bajo";
9 sino
10 Escribir "Muy alto";
11 Finsi
12 Escribir "Le quedan", intentos, " intentos:";
13 leer numero_ingresado;
14 intentos <- intentos-1;
15 FinMientras
16
17 Si intentos=0 Entonces
18 Escribir "El numero era: ", numero_secreto;
19 Sino
20 Escribir "Felicidades, Usted adivino en", 3 intentos
21 Finsi
22 FinProceso
Planteamiento 11:
Diseñar un programa que solicite el ingreso de 3 número enteros, posterior a ello, mostrar cual fue el mayor y
cual fue le menor. Por ejemplo 3 50 14, el número menor fue el 3 y el mayor el 50.
Análisis de problema
Entrada: ingresar 3 numeros enteros
Proceso: a <= b >= c
Salida: El numero mayor y numero menor
1 Proceso Mayor_y_Menor
2 Escribir "Ingrese tres numeros:"
3 Leer a,b,c
4 Si (a < b) y (a < c) Entonces
5 Escribir "El menor es: ",a;
6 Finsi
7 Si (b < a) y (b < c) Entonces
8 Escribir "El menor es: ",b;
9 Finsi
10 Si (c < a) y (c < b) Entonces
11 Escribir "El menor es: ",c;
12 Finsi
13 Si (a > b) y (a > c) Entonces
14 Escribir "El mayor es: ",a;
15 Finsi
16 Si (b > a) y (b > c) Entonces
17 Escribir "El mayor es: ",b;
18 Finsi
19 Si (c > a) y (c > b) Entonces
20 Escribir "El mayor es: ",c;
21 Finsi
22 FinProceso
Planteamiento 12:
Un sistema de ecuaciones lineales:
ax + by = c
dx + ey = f
se pueden resolver con las siguientes fórmulas:
x = (c*e - b*f) / (a*e - b*d)
y = (a*f - c*d) / (a*e - b*d)
Diseñar el programa que lea los coeficientes a, b, c, e, d, f y muestre los valores de X y de Y en la pantalla.
Análisis del problema
Entrada: ingresar ecuaciones
Proceso: Resolver ecuaciones
Salida: valores para X, Y
- Proceso calculo
- Escribir " ax + by = c"
- Escribir " dx + ey = f"
- Escribir ""
- Escribir "Ingrese un valor para a:"
- Leer a
- Escribir "Ingrese un valor para b:"
- Leer e
- Escribir "Ingrese un valor para c:"
- Leer c
- Escribir "Ingrese un valor para d:"
- Leer d
- Escribir "Ingrese un valor para e:"
- Leer e
- Escribir "Ingrese un valor para f:"
- Leer f
- x = (c*e - b*f) / (a*e - b*d)
- t = (a*f - c*d) / (a*e - b*d)
- Escribir "El valor de x es: ", x;
- Escribir "El valor de y es: ", t;
- FinProceso
Planteamiento 13:
Solicitar un número arábigo de 2 cifras ente el rango de 1 a 20 con el cual después de haber ingresado el
número, muestre en pantalla la siguiente unformación,
a) Sí el número es positivo o negativo.
b) Sí el número es par o impar.
c) El número escrito en letras (en español).
d) El número escrito en letras (en inglés).
e) El número escrito en su equivalencia en la numeración romana.
Emplear para la solución la estructura múltiple Según.
Análisis del problema:
Entrada: Ingresar numero arábigo de 2 cifras entre el rango de 1 a 20
Proceso: Analizar el numero & mostrar lo pedido.
Salida: Mostrar si numero es positivo o negativo, par o impar, letras (español), letras (ingles), su equivalencia a números romanos
Planteamiento 14:
Los empleados de una fábrica trabajan en dos turnos: diurno y nocturno. Y la fábrica necesita que diseñe el programa que puede calcular el jornal diario de acuerdo con los siguientes puntos:
1. La tarifa de las horas diurnas es de Q9.00
2. La tarifa de las horas nocturnas es de Q12.00
3. En caso de ser domingo, la tarifa se incrementará en Q3.00 en turno de diurno y Q4.00 en el turno nocturno.
El programa deberá leer lo siguiente:
¬ Nombre del trabajador (nombre_trab).
¬ El nombre del turno (diurno-nocturno).
¬ Horas trabajadas (ht).
¬ Día de la semana (1a 7) en donde 1 es lunes.
Análisis del problema:
Entrada: ingrese nombre, turno del trabajador, horas trabajadas & días trabajados.
Proceso: horas * días trabajados + implementar bono.
Salida: salario total.
1 Proceso ingreso
2 Escribir " Ingrese su nombre:"
3 Leer nombre
4 Escribir " Tipo de turno (diurno o nocturno):"
5 Leer tipo
6 Escribir " Dia de la semana (Siendo lunes el dia 1):"
7 Leer dia
8 Escribir " Horas trabajadas"
9 Leer horas
10 Escribir ""
11 Si tipo = "diurno" Entonces
12 pago = horas * 9
13 FinSi
14 Si tipo = "nocturno" Entonces
15 pago = horas * 12
16 Finsi
17 Si (dia = "7") y (tipo = "diurno") Entonces
18 pago = horas * 12
19 Finsi
20 Si (dia = "7") y (tipo = "nocturno") Entonces
21 pago = horas * 16
22 Finsi
23 Escribir nombre, ", su pago es de: Q.", pago;
24 FinProceso
Planteamiento 15:
Diseñar el algoritmo que solicite al usuatio, un número entero entre el rango de 1 a 100, y utilizando la
estructura Para (for) mostrar los números (hasta el limite del usuario) en forma ascendente y descendente.
Análisis del problema:
Entrada: ingrese numero.
Proceso: contar & acumular numero.
Salida: Mostrar números de forma ascendente & descendente.
2 Escribir "Ingrese un numero del 1 al 100:"
3 Leer n
4 Escribir "Ingrese un limite:"
5 Leer l
6 Escribir "Forma Ascendente:"
7 Para contador <- n + 1 hasta l Hacer
8 Escribir Sin Saltar contador, " "
9 Fin para
10 Escribir ""
11 Escribir ""
12 Escribir "Forma descendente:"
13 Para contador2 <- n - 1 hasta 1 Hacer
14 Escribir Sin Saltar contador2, " "
16 Fin Para
17 FinProceso
Planteamiento 16:
Mostrar en pantalla las treinta primeras potencias de 4, es decir, 4 elevado a 1, 4 elevado a 2, etc. Emplear la estructura repetitiva Para (for).
Análisis del problema:
Entrada: Ingresar potencias pedidas.
Proceso: elevar números
Salida: Mostrar potencias
1. Proceso potencias
2. Para x <- 1 hasta 30 hacer
3. Escribir "4 ^ ", x, " = ", 4 ^ x;
4. Fin Para
5. FinProceso
Diseñar el algoritmo para imprimir la suma de los números impares menores o iguales que N, donde n es un número natural entero, ingresado por el usuario.
Análisis del problema:
Entrada: ingrese números impares
Proceso: procesar numero, verificar si es entero.
Salida: Mostrar suma.
- Proceso plantiamiento
- n <- 0
- contador <- 0
- sumador <- 0
- mientras contador <= 12 Hacer
- contador<-contador + 2
- sumador <- sumador + 2
- FinMientras
- escribir " el valor de los numeros impares es:",sumador;
- FinProceso
Planteamiento 18:
Solicitar se ingrese un letra del abecedario, y cuando el programa encuentre cualquiera de las vocales (a, e, i, o, u) el programa de detendrá, y mostrara que vocal fue la que ingreso, sino se ingresa ninguna vocal el
programa debe de seguir funcionando. Emplear la estructura repetitiva Repetir (repeat).
Análisis del problema:
Entrada: ingrese una letra del abecedario
Proceso: Encontrar vocales a<-e<-i<-o<-u
Salida: Mostrar vocales
Análisis del problema:
Entrada: ingrese una letra del abecedario
Proceso: Encontrar vocales a<-e<-i<-o<-u
Salida: Mostrar vocales
- Proceso letra
- Repetir
- Limpiar Pantalla
- Escribir "Ingrese una letra:"
- Leer letra
- Hasta que (letra = "a") o (letra = "e") o (letra = "i") o (letra = "o") o (letra = "u")
- Escribir "Usted ingreso la letra : " ,letra;
- FinProceso
Planteamiento 19:
Escribir un algoritmo que permita escribir en plantalla la frase "¿Desea continuar?" S/N hasta que la respuesta
Planteamiento 20:
Solicite un número natural (n) entre 1 y 20 con el cual se a de mostrar en pantalla la Tabla de multiplicación, con
el formato siguiente:
n * 1 = respuesta
n * 2 = respuesta
.
.
n * 10 = respuesta
Emplear la estructura repetitiva Repetir (repeat).
1 Proceso Tabla_multiplicacion
2 Repetir
3
4 I<-0;
5 Escribir "Introduce un numero";
6 Leer Num;
7 Escribir " ";
8 Escribir "La tabla de multiplicar del ", Num, " es:";
9 Escribir " ";
10 Repetir
11 Escribir NUm, " * ",I," = ", Num*I
12 I<-I+1
13 Hasta Que I>10
14 Escribir " ";
15 Escribir "Quieres volver a comenzar, S/N";
16 Leer seguir;
17 Mientras seguir <>"n" y seguir <>"N" y seguir <>"s" y seguir <>"S" hacer
18 escribir "Ingresa S o N.";
19 Leer seguir;
20 FinMientras
21 Hasta Que seguir = "n" o seguir = "N"
22 Fin Proceso
1 Proceso Tabla_multiplicacion
2 Repetir
3
4 I<-0;
5 Escribir "Introduce un numero";
6 Leer Num;
7 Escribir " ";
8 Escribir "La tabla de multiplicar del ", Num, " es:";
9 Escribir " ";
10 Repetir
11 Escribir NUm, " * ",I," = ", Num*I
12 I<-I+1
13 Hasta Que I>10
14 Escribir " ";
15 Escribir "Quieres volver a comenzar, S/N";
16 Leer seguir;
17 Mientras seguir <>"n" y seguir <>"N" y seguir <>"s" y seguir <>"S" hacer
18 escribir "Ingresa S o N.";
19 Leer seguir;
20 FinMientras
21 Hasta Que seguir = "n" o seguir = "N"
22 Fin Proceso
Planteamiento 21:
Un número perfecto es un número entero, que es igual a la suma de todos los enteros positivos (excluido el
mismo) que son divisores del número, el primer número perfecto es 6, ya que los divisores de 6 son 1, 2, 3, y
1 + 2 + 3 = 6.
Escribir un programa que encuentre los primeros tres números perfectos.
1 Proceso numero_perfecto
2 Escribir "¿Quieres conocer tres numeros perfectos? (s/n)"
3 Leer res
4 Si (res = "s") o (res = "S") Entonces
5 pr1 = (2^2) * (2^3 - 1)
6 pr2 = (2^4) * (2^5 - 1)
7 pr3 = (2^6) * (2^7 - 1)
8 Escribir Sin Saltar pr1, " ,", pr2, " ,", pr3
9 Finsi
10 FinProceso
1 Proceso numero_perfecto
2 Escribir "¿Quieres conocer tres numeros perfectos? (s/n)"
3 Leer res
4 Si (res = "s") o (res = "S") Entonces
5 pr1 = (2^2) * (2^3 - 1)
6 pr2 = (2^4) * (2^5 - 1)
7 pr3 = (2^6) * (2^7 - 1)
8 Escribir Sin Saltar pr1, " ,", pr2, " ,", pr3
9 Finsi
10 FinProceso
Planteamiento 22:
Una temperatura Celsius (centigrados) C puede ser convertida a una temperatura equivalente F de acuerdo a la
siguiente fórmula:
F={9/5} c + 32
Escribir un Programa que lea la temperatura Celsius com número decimal y obtenga la temperatura
Planteamiento 23:
Utilizando los ciclos Para, Repetir y Mientras, muestre en pantalla los números del 1 al 100, Diseñar un menú
con cuatro opciones (una por ciclo), en donde el usuario, elige que ciclo que quiere utilizar. La cuarta opción es la
salida. Para la implementación del menú, utilise un ciclo adicional, para ello, el ciclo Mientras.
Análisis del problema:
Entrada: Números del 1 al 100
Proceso: Ciclo pedido & mostrar menú.
Salida: Mostrar ciclo
Análisis del problema:
Entrada: Números del 1 al 100
Proceso: Ciclo pedido & mostrar menú.
Salida: Mostrar ciclo
Planteamiento 24:
Construir un programa para obtener la hipotenusa y los ángulos de un triángulo rectángulo a partir de
las longitudes de los catetos. Diseñar el triángulo con asteriscos * para tener una mejor referencia del
programa.
Análisis del problema:
Entrada: Ángulos
Proceso: Calcular ángulos
Salida: mostrar ángulos
Planteamiento 25:
Escribir un programa que determine su un año es bisiesto si es múltiplo de 4 (por ejemplo,
1984). Los años múltiplos de 100 no son bisiestos, salvo si ellos son también múltiplos de 400 (2000 es
bisiesto, 1800 no lo es).
Análisis del problema:
Entrada: Ingresar año
Proceso: analizar año
Salida: mostrar si es bisiesto.
- Proceso sin_titulo
- Escribir 'es o no bisiesto';
- Escribir 'ingrese el año';
- Leer a;
- Si a mod 4=0 Entonces
- Si a mod 100=0 Entonces
- Si a mod 400=0 Entonces
- Escribir 'es bisiesto';
- Sino
- Escribir 'no es bisiesto';
- FinSi
- Sino
- Escribir 'si es bisiesto';
- FinSi
- Sino
- Escribir 'no es bisiesto';
- FinSi
- FinProceso
Planteamiento 26:
Solicitar al usuario ingrese un número arábigo entero de 4 dígitos el cual se deberá de descomponer en
unidades, decenas, centenas y unidades de millar para mostrar el número al revés.
EJEMPLO: 2348 ha de mostrar el programa 8432
Análisis del problema:
Entrada: Ingresar numero arábigo entero de 4 dígitos
Proceso: Descomponer en: unidades, decenas, centenas y unidades de millar
Salida: mostrar numero descompuesto.
Planteamiento 27:
a) Realizar el programa que muestre los números pares comprendidos entre el rango de 0 a 50. Emplear
el ciclo Para.
b) Luego muestre los impares comprendidos entre el rango de 50 a 100 con el ciclo Repetir.
Análisis del problema:
Entrada: Números de 0 a 50
Proceso: Ciclo de números
Salida: mostrar números impares entre 50 a 100
- Proceso Numeros
- acumulador = 49
- para x <- 0 hasta 50 con paso 2 hacer
- escribir sin saltar x, " , "
- FinPara
- escribir ""
- escribir ""
- repetir
- acumulador <- acumulador + 2
- escribir sin saltar acumulador, ", "
- hasta que acumulador = 00
- FinProceso
Planteamiento 28:
Solicitar al usuario ingrese un número entero entre 1 a 100, luego en pantalla se ha de mostrar el rango de números comprendidos por el número ingresado, además la sumatoria de la serie comprendida por los
números (suma sucesiva). Ejemplo : Si el usuario ingresara 10, en pantalla aparecerán los números:
1 2 3 4 5 6 7 8 9 10 y la suma sucesiva da: 55.
Análisis del problema:
Entrada: ingresar numero entero entre 1 a 100
Proceso: sumatoria de los números
Salida: Mostrar suma sucesiva de 1 a 100
- Proceso sumar_s
- escribir "ingrese valor de n"
- leer n;
- x<- 0;
- para i<- 1 hasta n Hacer
- escribir i, "+";
- x<- x + i;
- FinPara
- escribir "la respuesta es:",x;
- FinProceso
Planteamiento 29:
Un Número Primo es un entero que no tiene más divisores que el mismo y la unidad. Por ejemplo: 5 es primo
ya que sólo tiene como divisores 5 y 1, y 24 no es primo ya que tiene como divisores a 24, 1, 2 y 3. un Número
Compuesto es aquel número natural mayor que 1 si no es primo.
Los primeros números primos menores que 100 son:
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89,97.
Realizar el programa que indique si un número ingresado por el usuario es Primo o Compuesto
Análisis del problema
Entrada: Ingresar numero primo
Proceso: dividir numero primo
Salida: mostrar si es primo o compuesto
Planteamiento 30:
Análisis del problema
Entrada: Ingresar numero primo
Proceso: dividir numero primo
Salida: mostrar si es primo o compuesto
- Proceso primo
- escribir "ingrese un numero:";
- leer numero;
- si numero mod 5 = 0 Entonces
- Escribir "Numero es primo";
- Sino
- Escribir "numero es compuesto"
- Finsi
- Escribir "Ingrese un numero"
- Leer numero
- Si numero mod 5 = 0 entonces
- Escribir "numero es primo";
- Sino
- Escribir "numero es compuesto";
- Finsi
- FinProceso
Planteamiento 30:
Calcular el Factorial de un número leído desde el teclado, utilizar la sentencia Para (for). En donde:
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| n1 = n x (n-1) x (n-2) x...x 3 x 2 x 1 |
| |
| |
| es decir, |
| |
| |
| 5 = 5 x 4 x 3 x 2 x 1 = 120 |
| 4 = 4 x 3 x 2 x 1 = 24 |
| 3 = 3 x 2 x 1 = 6 |
| 2 = 2 x 1 = 2 |
| 1 = 1 = 1 |
| |
| para codificar estas operaciones basta pensar que |
| (n+1) / (n+1) x n x (n- 1) x (n- 2) x ... x 3 x 2 x1 |
| |
| |
| |
| |
| |
| |
| |
| |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
Análisis del problema:
Entrada: ingresar numero
Proceso: calcular formula
Salida: Mostrar resultado
- Proceso sin_titulo
- Escribir "ingrese un numero"
- leer n
- f<-1
- para x<-1 hasta n Hacer
- f<-f*x
- FinPara
- Escribir "el factorial del numero ingresado es " , f
- FinProceso
Planteamiento 31 (Para futuros ingenieros en sistemas):
El matematico italiano Leonardo Fibonacci propuso el sigueinte problema. Suponeindo que un par de conejos tiene un par de crias cada mes y cada nueva pareja se hace fertil a la edad de un mes, si se dispone de una pareja fertil y ninguno de los conejos muertos, ¿Cuantas parejas habra despues de un año? Mejorar el problema calculando el numero de meses necesarios para producir un numero dado de parejas de conejos.
El matematico italiano Leonardo Fibonacci propuso el sigueinte problema. Suponeindo que un par de conejos tiene un par de crias cada mes y cada nueva pareja se hace fertil a la edad de un mes, si se dispone de una pareja fertil y ninguno de los conejos muertos, ¿Cuantas parejas habra despues de un año? Mejorar el problema calculando el numero de meses necesarios para producir un numero dado de parejas de conejos.
No hay comentarios:
Publicar un comentario