1. Escriba un algoritmo que pida el ingreso por teclado de dos números enteros y que muestre por pantalla la suma, resta, producto y división de los mismos.
Solución
inicio
//Declarando variables a usar
var entero A var entero B var entero suma var entero resta var entero producto var entero division escribir("Ingrese un numero: ") //Solicitando ingreso de datos por teclado leer(A) //Leyendo el primer número desde el teclado escribir("Ingrese un numero: ") //Solicitando ingreso de datos por teclado leer(B) // Leyendo el segundo número desde el teclado // Realizando operaciones suma = A +B resta = A - B producto = A*B division = A/B //mostrando resultados escribir("La suma es: ") escribir(suma) escribir("La resta es: ") escribir(resta) escribir("El producto es:") escribir(producto) escribir("La division es: ") escribir(division) fin
2. Escriba un algoritmo que muestre por pantalla un menú y que solicite el ingreso por teclado de una opción del mismo; cuando se haya elegido dicha opción le indique al usuario su elección.
Solución:
inicio //Declarando las variables var entero opcion //Mostrando el menú escribir("1. Opción 1") escribir("2. Opción 2") escribir("3. Opción 3") escribir("4. Salir") escribir("Ingrese una opción: ") //Solicitando el ingreso de datos por teclado leer(opcion) //Leyendo la opción ingresada por teclado segun_sea (opcion) caso 1: //opción 1 escribir("Usted ha elegido la opción 1") interrumpir caso 2: //opción 2 escribir("Usted ha elegido la opción 2") interrumpir caso 3: //opción 3 escribir("Usted ha elegido la opción 3") interrumpir caso 4: //opción 4 escribir("Usted ha elegido la opción Salir") interrumpir otros: //Si no coincide con los casos anteriores escribir("Opcion no válida") interrumpir fin_segun fin
En este algoritmo se utilizó una estructura de selección que nos permite relacionar un conjunto de acciones al valor de la variable dada como parámetro, este menú está constituido de 4 opciones (opción 1, opción 2, opción 3 y salir), las cuales están definidas en cada caso; además cuando se ingresa un valor que nocoincide con los casos definidos, se realizan las acciones descritas en «otros«.
3. Escriba un algoritmo que repita una cadena de caracteres un número de veces dado.
Solución:
Existen muchas formas de realizar esto:
inicio //declarando variables var cadena cadena1 var entero veces var entero contador escribir("Ingrese una cadena de caracteres") leer(cadena1) escribir("Ingrese el número de veces que desea que se repita la cadena") leer(veces) contador = 0 //Inicializando el contador mientras(contador < veces ) //Repitiendo mientras el contador sea menor que el número escribir(cadena1) //de veces contador++//incrementando el contador fin_mientras fin Otra forma inicio //declarando variables var cadena cadena1 var entero veces var entero contador escribir("Ingrese una cadena de caracteres") leer(cadena1) escribir("Ingrese el número de veces que desea que se repita la cadena") leer(veces) /*La estructura "para" asigna el un valor al contador, evalúa una condición y si esta se cumple, se realizan las acciones indicadas, luego se incrementa el contador */ para contador=0 hasta contador<veces contador++ escribir(cadena1) fin_para fin
Muchos lenguajes de programación necesitan que se declaren variables y definan constantes antes de usarlas.
En nuestro pseudocódigo vamos a declarar las variables de la siguiente forma:
var tipoDato nombreVariable
Ejemplos:
var entero nota
var caracter letra
var real costo
Hay que definir las constantes también:
definir nombre valor
Ejemplos:
definir PI 3.14
definir RADIO 3
definir JUGADORES 5
¿Por qué las variables y constantes deben ser declaradas y siempre al inicio ?
Para ilustrarlo mejor voy a poner un ejemplo sencillo: si nos contratan para construir una pared, el cliente SIEMPRE pregunta – ¿Y que necesita para construirla? -, en ese momento como buenos obreros debemos pensar en los recursos que usaremos para realizar nuestro tabajo (bloques, cemento, arena, herramientas, etc); no sería bueno que mientras construimos nuestra pared pidamos al cliente que compre más material porque no lo habíamos incluido en nuestra lista (el cliente se enfadaría y con mucha razón), y tampoco usamos cosas que no tenemos. Antes de desarrollar nuestro algoritmo, debemos calcular las cosas que necesitamos y entre ellas están las variables y constantes que usaremos.
Ejemplos:
1.- Nos piden que desarrollemos un programa que dado el radio calcule el perímetro de un círculo.
Solución:
El perímetro de un círculo es igual a 2*PI *radio, y como todos conocemos el valor de PI es 3.14
El algoritmo a usar será el siguiente:
inicio
// Definiendo las Constantes
definir PI 3.14
// Declarando las Variables
var real radio
var real perimetro
escribir(«Ingrese el radio del círculo«) //Solicitando el ingreso de el radio
leer(radio) //leyendo datos desde el teclado
perimetro = 2*PI*radio //Calculando el perímetro
escribir(«El perímetro es: «) //Mostrando un mensaje indicando que se mostrará el resultado
escribir(perimetro) //Mostrando el resultado
fin
2.- Nos piden que desarrollemos un programa que proporcionándole el la longitud de un lado calcule el volúmen de un cubo.
Solución:
El volúmen de un cubo es igual al lado al cubo lo que es equivalente a lado*lado*lado.
El algoritmo a usar será el siguiente:
inicio
// Declarando las Variables
var real lado
var real volumen
escribir(«Ingrese la longitud del lado del cubo«) //Solicitando el ingreso de datos
leer(lado) //leyendo datos desde el teclado
volumen = lado*lado*lado //Calculando el volúmen
escribir(«El volúmen es: «) //Mostrando un mensaje indicando que se mostrará el resultado
escribir(volumen) //Mostrando el resultado
fin
Los comentarios son áreas del código que el desarrollador inserta para hacerlo más inteligible pero que el compilador no tomará en cuenta al momento de generar código de máquina, dando la libertad al desarrollador de escribir lo que quiera en las áreas del código establecidas como comentarios.
Usaremos el símbolo “//” (doble slash) para establecer áreas de comentarios, todo lo que se escriba después de este símbolo en la línea no será tomado en cuenta al momento de compilar nuestro código fuente. También podemos escribir comentarios entre los símbolos “/*” y “*/” con el fin de usar varias líneas para los mismos.
Ejemplos:
/* Este algoritmo pide un número y muestra en pantalla la mitad
Autor: Leo
Fecha de creación: 8/01/2009 */
inicio
escribir(“Ingrese un número”) //solicitando ingreso por teclado
leer(A) //leyendo datos ingresados por teclado
escribir(A/2) //mostrando la mitad del número ingresado
fin
Los comentarios son muy útiles para los desarrolladores ya que en a veces hay que revisar código escrito por otras personas y generalmente es dificultoso entender lo que pensó aquella persona al momento de escribir la instrucción, además se puede especificar datos importantes como autor, fecha de creación, licencia y términos de uso, etc.
Los operadores son símbolos que nos permiten realizar diferentes operaciones en un programa tales como suma, resta, división, etc.
Operadores aritméticos
En una división de enteros siempre obtenemos un cociente entero y un residuo entero, el operador resto realiza la división y devuelve el residuo de la misma. Si el resultado de a%b es igual a cero, entonces a es múltiplo de b.
Ejemplos:
28 % 6 -> el resto de 28 dividido para 6 es 4
23 % 10 -> el resto de 23 dividido para 10 es 3
30 % 3 -> el resto de 30 dividido para 3 es cero
Operadores de asignación
Un operador de asignación es aquel que modifica el valor de una variable.
Igualdad =
Este operador asigna el valor de una expresión a una variable, es decir, reemplaza el valor almacenado en la variable por otro.
Ejemplos:
S = 19 -> Cambia el valor de S a 19
A = 30 + 15 -> Realiza la operación “30+15” y asigna el resultado a “A”
Q = S + A -> Realiza la operación “S + A” y asigna el resultado a “Q”
A = A + 1 -> Realiza la operación “A+1” y asigna el resultado a “A”
Operadores incrementales
Aumenta en uno el valor de una variable.
Ejemplos:
S++ -> Le suma uno al valor de S
Disminuye en uno el valor de una variable.
Ejemplos:
S— -> Le resta uno al valor de S
Operadores Relacionales
Son aquellos operadores binarios que relacionan una expresión a un valor lógico verdadero o falso.
Ejemplos:
A == 10
B >= 15
D%10 != 0
Operadores lógicos
Son aquellos operadores binarios que permiten combinar resultados de otras expresiones relacionales.
Ejemplos:
A<2&&X!=0 si A es menor que 2 y X es diferente que 0, entonces la expresión es verdadera
B>3||Q>0 si B es mayor que 3 o Q es mayor que 0, entonces la expresión es veradera
!(C>X) si C es mayor que X, entonces la expresión es falsa ya que el operador NOT invierte el valor de la expresión.
Pseudocódigo
El pseudocódigo es una herramienta de programación en que las palabras se escriben de manera similar en un idioma local (generalmente en inglés) que facilitan tanto la escritura como la lectura de programas.
En este curso vamos a usar un pseudocódigo que nos permita familiarizarnos con otros lenguajes de programación, además manejaremos instrucciones en español y de tipos de control secuencial, de selección y de repetición.
Instrucciones a utilizar:
inicio –> Indica el inicio de un algoritmo.
fin –> Indica el final de un algoritmo.
Estructuras secuenciales:
Son aquellas en las que una instrucción sigue a otra en secuencia hasta el final del proceso.
Estructuras selectivas
Las estructuras selectivas evalúan una condición y de acuerdo al resultado de la misma efectúa una acción u otra.
Estructuras repetitivas
Las estructuras repetitivas realizan acciones un número de veces determinado por condiciones o asignado por el desarrollador.