viernes, 10 de agosto de 2007

Practica II

PRACTICA N° 2
02MA ARREGLOS UNIDIMENSIONALES
  1. Escribir un algoritmo para ingresar 5 nombres de personas, guardarlos en un arreglo y finalmente ordenarlos alfabéticamente.
  2. En un arreglo se guardan los siguientes nombres: A[0]="CESAR", A[1]="JUAN", A[2]="LUIS",A[3]="ANA",A[4]="KARINA",A[5]="CARLOS". Escribir un algoritmo para buscar un nombre que se ingresa por teclado en el arreglo y mostrar el indice correspondiente al nombre buscado.

viernes, 3 de agosto de 2007

PRACTICA I - 02MA

PRACTICA N° 1

02MA
ARREGLOS UNIDIMENSIONALES

  1. Escribir un algoritmo para guardar en un arreglo todos los números impares de 3 cifras. Luego sumar aquellos cuya última cifra sea 3 ó 5.
  2. Escribir un algoritmo para guardar en un arreglo todos los números menores que 200 pero mayores que 100 cuya suma de dígitos sea 7. Luego mostrar dichos números

miércoles, 1 de agosto de 2007

EJERCICIOS CAPITULO II

  1. Escribir un algoritmo para saber si un número es para o impar.
  2. Un algoritmo para conocer cual de tres números ingresados es el mayor
  3. Un algoritmo para ordenar de manor a mayor tres números ingresados
  4. Un algoritmo para saber si un número es multiplo de otro. Sugerencia un número es multiplo de otro si divide exactamente a otro.
  5. Escribir un algoritmo para saber si un alumno es mayor de edad es decir mayor de 18 años. Debe ingresar su edad
  6. Escribir un algoritmo para dividir dos números. Si el divisor es igual a cero debe indicar que no es posible dicha división, caso contrario mostrar el resultado de dicha división.
  7. Escribir un algoritmo para saber si un número es positivo o no.
  8. Dado un número de 5 dígitos. Contar cuantos dígitos pares tiene dicho número.
  9. Ingresar 5 números. Luego sumar sólo los números impares.
  10. Escribir un algoritmo para Ingresar tres números luego verificar si el primero es divisor de la suma de los otros dos. Un número es divisor de otro si divide exactamente al número.
  11. Escribir un algoritmo para ordenar alfabéticamente tres nombres ingresados por teclado. En Java debe usar compareTo
  12. Escribir un algoritmo para saber la edad de una persona sabiendo el año, el mes y el dia en que nació. Considerar si el alumno cumplio o no cumplio años.
  13. Escribir un algoritmo para mostrar en letras el dia de la semana conociendo el número de dia. Considerar el Domingo como 1.
  14. Escribir un algoritmo para saber en que etapa de la vida se encuentra una persona dada su edad.
  • Infancia : Esta edad es desde que el niño nace hasta los 4 años inclusive.
  • Niñez: Comienza desde los 5 hasta que cumple los 10 años.
  • Pubertad: Empieza despues de los 10 años hasta los 14 años.
  • Adolescencia: Comienza despues de los 14 años hasta los 21 años inclusive.
  • Adultez: Está edad comienza a los 22 años y termina a los 55 años.
  • Vejez: Esta etapa empieza a los 55 años y termina a los 70 años.
  • Ancianidad: Esta etapa empieza a los 71 años.

lunes, 11 de junio de 2007

EJERCICIOS CAPITULO I

ASIGNACION-OPERADORES-INGRESO Y SALIDA DE DATOS
  1. Escribir un algoritmo para calcular el vuelto que se tiene que recibir cuando se paga por un servicio: Debe ingresar el costo del servicio y el monto del dinero con la que se paga.
  2. Escribir un algoritmo para resolver una ecuación de la forma ax+bx=c se debe leer a, b y c.
  3. Escribir un algoritmo para calcular cuanto le falta a un número para ser igual a otro ingresado.
  4. Un algoritmo para calcular el cociente y el residuo de la división de dos números.
  5. Escribir un algoritmo que convierta segundos a horas y minutos. Debe ingresar el número de segundos.
  6. Escribir un algoritmo para saber cuantas horas exactas hay en una cantidad de minutos ingresados
  7. Escribir un algoritmo para indicar cuanto le falta a un número cualquiera para ser multiplo de 17.
  8. Escribir un algoritmo para evaluar la siguiente función: F(x)=X²+3X+7. Para cualquier valor de X ingresado.
  9. Escribir un algoritmo para sumar todos los dígitos de un número cualquiera(Máximo 5 cifras).
  10. Un algoritmo para resolver una ecuación simultanea de la forma:
    ax+by=c
    dx+ey=f
  11. Escribir un algoritmo para convertir centímetros a pulgadas (1 pulgada=2.52cm)
  12. Un algoritmo para calcular el área de un triángulo. Sugerencia usar la fórmula de heron
  13. Un algoritmo para obtener el promedio del primer dígito con el último de un número de 5 dígitos ingresado.
  14. Un algoritmo para saber cúanto se le tiene que sumar a un número cualquiera para que termine en 5.
  15. Dado el número inicial y final de una progreción aritmética de números consecutivos. Calcular la suma de toda la progreción. Sugerencia: suma=(a+u)*n/2, donde a es el primer término, u es el ultimo término y n es el número de términos.
  16. Escribir un algoritmo para convertir la temperatura de grados centígrados a grados farenheit. Sugerencia: (F-32)/9=C/5. Donde F es el valor en Grados Farenheit y C el valor en grados centígrados.
  17. se necesita repartir una cierta cantidad de panes entre una cantidad de niños en partes iguales. Escribir un algoritmo para saber a como le toca a cada uno y cuántos panes sobran.
  18. Escribir un algoritmo para saber cuantas docenas hay en una determinada cantidad.
  19. Escribir un algoritmo para calcular cuánto cuesta un producto incluido IGV. Sugerencia se debe leer el costo del producto sin IGV.
  20. Escribir un algoritmo para saber cuanto costaria un producto sin IGV. Se lee el costo del producto incluido IGV.
  21. Dado el numerador y denominador de una fracción, luego el numerador y denominador de otra. Escribir un algoritmo para sumara dichas fracciones(no es necesario simplificar).
  22. Dado el valor de la suma de dos números y el valor de la diferencia. Escribir un algoritmo para saber que números son.
  23. Escribir un algoritmo para calcular la medida de la hipotenusa de un triángulo rectángulo. Sugerencia debe leer la medida de los dos catetos y utilizar el teorema de pitagoras.
  24. Escribir un algoritmo para saber a como tengo que vendeer un producto para ganar el 30%. Sugerencia se debe leer el precio de compra.
  25. Escriba un algoritmo para adivinar el pensamiento. Debe leer el resultado de: Multiplicar el número pensado por 5, sumarle 12 y el resultado multiplicar por 8. La salida debe ser el número pensado.
  26. Adivina el pensamiento mas general. Debe pedir que multiplique el número pensado por un valor cualquiera que se ingrese, luego sumarle por otro ingresado para multiplicar el resultado por otro que tambien se ingresa. Finlamente debe pendir cual es su resultado para calcular el numero pensado.
  27. Un algoritmo para saber que número debemos agregar al numerador de una fracción para que dicha fracción se convierta en un entero.
  28. Dos vehículos separados una distancia determinada van al encuentro uno del otro con velocidades respectivas. Escribir un algoritmo para calcular en cuanto tiempo se encuentran dichos vehículos. Sugerencia: Leer distancia de separacion, velocidades
  29. Dos vehículos separados una distancia determinada van en la misma direccion, si el que va atras va con mayor velocidad. Escribir un algoritmo para calcular en cuanto tiempo lo alcanza al que va adelante. Sugerencia: Leer distancia de separacion, velocidades
  30. Un hombre hace un trabajo en una cantidad de dias, otro en otra. Escribir un algoritmo para saber en cuanto tiempo lo acaban si se juntan para realizar el mismo trabajo.
  31. Escribir un algoritmo para Invertir el orden de sus cifras un número cualquiera (máximo de 5 dígitos).
  32. Escribir un algoritmo para calcular la edad exacta en dias de un persona sabiendo que cada año tiene 12 meses y cada mes 30 dias.
  33. Un algoritmo para calcular cuanto le falta a la suma de digitos de un número para ser multiplo de 9.


miércoles, 6 de junio de 2007

La pregunta de los 30 puntos

Leer un número impar y formar un cuadrado mágico con el orden ingresado. Ejemplo si leemos 5 el cuadrado mágico sera de orden 5x5.
¿Que es un cuadrado mágico?. Es aquel cuadrado de un orden determinado donde se colocan números consecutivos a partir de 1 de tal forma que la suma de las diagonales, las filas y las columnas sean iguales.

Ejercicios con Funciones

Escribir una funcion para saber el nivel de un estudiane de acuerdo a su nota
Si la nota es menor que 6, debe mostrar "Muy Malo"
Si la nota esta entre 6 y 10 inclusive mostrar "Malo"
Si esta entre 11 y 14 mostrar "Regular"
Si esta entre 15 y 18 mostrar "Bueno"
Si es mayor que 18 mostrar "Muy bueno".
Luego usar esta función para mostrar en que nivel se encuentra una nota ingresada

lunes, 4 de junio de 2007

La pregunta de los 50 puntos

Un puzzle de números es un arreglo de la forma como muestra la figura. El algoritmo que tiene que desarrollar es todos los pasos que se debe hacer para ordenar dichos números. Solo se puede mover los números a la posición donde esta el cero y sólamente el vecino del cero.

Arreglos unidimensionales

Alumno: Profesor Leguía ¿Para que sirven los arreglos unidimensionales?
Profesor: Antes de responder a su pregunta dígame ¿Cuantas variables necesita para guardar 10 datos?
Alumno: Simple profe 10 variables por supuesto.
Profesor: Muy bien. Que pasaría si necesita 1000 datos para trabajar. ¿Usaría 1000 variables?
Alumno: Si uso 1000 variables usaría más de 1000 líneas de código sólo para almacenar dichos datos. Entones creo que tendría problemas.
Profesor: Claro que si. Existe otra forma de almacenar muchos datos utilizando una sola variable esos son las famosas variables de tipo Arreglos o Arrays.
Ejemplo:
Si quisiera guardar los 5 primeros número que terminan en 3 dentro de un arreglo de nombre A tal como se muestra en la figura

Las letras rojas indican la posición para definir claramente los datos a utilizar. En java dicha posición va entre corchetes además el orden de las posiciones parte de 0. Es decir:

Primer dato ==> posición 0
Segundo dato==>posición 1
Tercer dato==> posición 2
Cuarto dato==> posición 3
Quinto dato==> posición 4

Sabiendo esto vamos a guardar en el Arreglo A los datos vistos anteriormente

A [0]=3;
A[1]=13;
A[2]=23;
A[3]=33;
A[4]=43;

Inclusive podemos hacer operaciones por ejemplo si quisiera sumar todos los números y guardarlos en una variable cualquiera por ejemplo suma.

Suma= A [0]+A[1]+A[2]+A[3]+A[4];

Alumno: Profesor, todo esta bien pero sigue usando varias instrucciones para asignar cada dato. ¿Como haría para ya no usar varias veces como en el caso anterior?
Profesor: Justamente allí radica la utilidad de un arreglo, Para esto tendríamos que aprovechar las estructuras cíclicas de preferencia la estructura PARA o FOR
Por ejemplo para leer 100 datos y guardarlos en un arreglo de nombre misDatos

For(i=1;i<=10;i++){
LEER(misDatos[i])
}
Alumno: En Java como sería profesor.
Profesor: En Java para poder usar un arreglo lo primero que se tiene que hacer es declarar dicho arreglo como cualquier variable con la diferencia que este va entre corchetes, por ejemplo vamos a declarar un arreglo de tipo entero de nombre A

int A[];

Alumno: Eso es todo profesor.
Profesor: No Joven eso no es todo, hay algo muy importante que se tiene que tomar en cuenta. Se le tiene que indicar el tamaño máximo que puede almacenar dicha variable.
Imaginemos nosotros que en este arreglo vamos a almacenar 10 datos:

A=new int[10];

Eso es todo alumno A partir de acá ya podemos trabajar con arreglos.

Ejemplos Resueltos en JAVA

1.- Escribir un programa para leer 10 números y guardarlos en un arreglo

int A[] //Declaramos el arreglo
A=new int[10] //Instanciamos el arreglo
for(i=0;i<10;i++){
A[i]=Integer.parseInt(JOptionPane.showInputDialog(“A[”+i+”]”)); }

2.- Escribir un programa para guardar en un arreglo todos los números múltiplos de 6 menores que 100. Luego mostrar dichos números.;

//Leyendo los datos

int
A[] //Declaramos el arreglo
A=new int[10] //Instanciamos el arreglo
int k=0;
for(i=0;i<100;i=i+6){
A[k]=i;
k=k+1;
}
//Escribiendo los datos

for(i=0;i< k;i++){
System.out.println(A[i]);
}

3.- Escribir un algoritmo para escribir en un arreglo todos los números de 3 digitos cuya suma de cifras es 13. Luego sumar y contar todos los números pares que cumplen esa condición

miércoles, 30 de mayo de 2007

Ejercicios de Evaluación

  1. Escribir ul agoritmo para realizar la siguiente suma: 1/5+1/7+1/9+......1/31
  2. Escribir un algoritmo para realizar la siguiente suma: 5/7+7/10+9/13+...+23/34
  3. Escribir un algoritmo para mostrar 20 primeros números de la serie de Fibonaci: 1, 1, 2, 3, 5,... Cada término es la suma de los dos anteriores.
  4. Guardar en una arreglo 100 números aleatorios diferentes menores que 1000. Luego sumar aquellos donde al menos un dígito es par.
  5. Guardar 100 datos aleatorios menores que 500 en un arreglo bidimensional de 10x10 y sumar los téminos de la diagonal cuyos valores terminen en el dígito 5.
  6. Guardar en un arreglo los 20 primeros números pares multiplos de 3 y mostrar dicho arreglo.
  7. Realizar la siguiente suma: 100+97+94+91+...(50 térrminos)
  8. Guardar en un arreglo unidimensional los 10 primeros números primos. Luego indicar la suma de todos los dígitos.
  9. Guardar en una arreglo los nombres de 5 alumnos. En otro arreglo las notas correspondientes. Luego indicar a quien corresponde la nota máxima y mínima
  10. Contar cuantos números de 3 cifras hay cuya suma de digitos sea par
  11. Escribir un algoritmo para saber cuanto le falta a un número para ser cuadrado perfecto. Luego Guardar en una arreglo los 10 primeros cuadrados perfectos
  12. Escribir una algoritmo para indicar cuantos números existen de 4 digitos que son inpares, multiplos de 7 y que terminen en 7.

martes, 29 de mayo de 2007

ALGORITMOS SENCILLITOS DE ARREGLOS BIDIMENSIONALES

  1. Leer 8 datos y guardarlos en un arreglo Bidimensional de 2x4. Luego mostrarlos.
  2. Guardar en un arreglo de 5x3 los primeros 15 números impares, luego calcular la suma de dichos números
  3. Guardar en un arreglo bidimensional de 5x6 los 30 primeros números multiplos de 7. Luego calcular la suma de todos los números de la fila 3.
  4. Escribir un algoritmo para calcular la suma de la diagonal del arreglo Si :
    A[0][0]=3, A[0][1]=5, A[0][2]=4,
    A[1][0]=9, A[1][1]=1, A[1][2]=3,
    A[2][0]=12, A[2][1]=3, A[2][2]=15.
  5. Llenar en un arreglo bidimensional de 6x6 los primeros números pares que sean multiplos de 3. Luego sumar los términos de la columna 4.

miércoles, 23 de mayo de 2007

EJERCICIOS CON ARREGLOS UNIDIMENSIONALES

  1. Escribir un algoritmo para leer 10 números, guardarlos en un arreglo. Luego imprimir los valores que tengan raiz cuadrada exacta.
  2. Escribir un algoritmo para guardar en un arreglo 20 números enteros aleatorios menores que 100. Luego obtener el promedio de todos los números cuya suma de digitos sea 8.
  3. Tengo el siguiente arreglo: A[0]=12, A[1]=24, A[2]=8,
    A[3]=13, A[4]=7, A[5]=5, A[6]=17, A[7]=6.
    Calcular la suma de todos los valores impares.
  4. Leer 5 números, guardarlos en un arreglo y calcular: El promedio de dichos números. La suma de dichos números, cuantos números impares existen, cuantos números pares, cuantos multiplos de 5.
  5. Tengo el siguiente arreglo de números enteros: A[0]=23, A[1]=16, A[2]=15, A[3]=12, A[4]=17, A[5]=25, A[6]=24, A[7]=32. Insertar en la posicion 4 el número 24 . Luego mostrar todo el areglo.
  6. Guardar 16 notas aleatorias entre 0 y 20 en un arreglo, luego escribir un programa para Inidicar cuantos aprobados hay, cuantos desaprobados y el promedio de todas las notas.
  7. Escribir un algoritmo para leer dos arreglos unidimensionales de 5 elementos cada una y Calcular el producto escalar de ambos. El producto escalar es la suma del producto de términos que tienen la misma ubicación.
    Ejemplo: A[0]*B[0]+A[1]*B[1]+A[2]*B[2]+.....+A[n]*B[n].
  8. Escribir un algoritmo para leer dos arreglos unidimensionales de 6 elementos cada una y calcular el producto vectorial de ambos. El producto vectorial es otro arreglo unidimensional cuyos componentes vienen a ser el producto de terminos de la misma ubicación.
    Ejemplo: R[0]=A[0]*B[0], R[1]=A[1]*B[1], R[2]=A[2]*B[2], etc.
  9. En un arreglo se guardan los nombres y apellidos de 5 alumnos, en otro arreglo las notas del curso de Matemática y en otro las notas del curso de Fisica . Escribir el algoritmo para calcular el promedio de notas por alumno y mostrar los nombres de los alumno con su respectiva nota promedio. Para saber a quien pertenece cada nota se debe guiar por el subindice.
  10. Escribir un algoritmo para guardar en un arreglo 5 nombres, en otro arreglo el correo correspondiente, luego crear un buscador de correo es decir si ingreso el nombre me tiene que mostrar en la salida el correo correspondiente.
  11. Escribir un algoritmo para guardar en un arreglo 20 número aleatorios entre 0 y 100. luego obtener el número mayor y el número menor.
  12. Escribir un algoritmo para leer 10 números, luego obtener otro ordenado de mayor a menor para mostrar en la salida (no utilice métodos de ordenamiento, utilice su propio criterio.)
  13. Escribir un Algoritmo que lea 20 valores y los almacene en un arreglo ‘A’, 20 valores y los almacene en un arreglo ‘B’ y que genere un arreglo ‘C’, dado por la suma del primer valor de ‘A’ mas el último de ‘B’; el segundo valor de ‘C’ será el segundo de ‘A’ mas el penúltimo de ‘B’; y así sucesivamente. Finalmente deberán imprimirse los tres arreglos.
  14. Escribir un programa que lea 5 valores, y los almacene en un arreglo. Una vez almacenados los recorra una posición hacia arriba quedando el primero en el último, el segundo en el primero, el tercero en el segundo, y así sucesivamente. El programa terminará cuando se lea un número igual a cero que no se procesará.

miércoles, 16 de mayo de 2007

Ejercicios ALGORITMOS

NIVEL 1

  1. Utilizando WHILE escribir un algoritmo para mostrar todos los números impares menores que 100.
  2. un algoritmo para realizar la siguiente suma: 3+6+9+.....+33
  3. Un algoritmo para realizar la siguiente suma: 2/3+3/4+4/5+5/6+.....+20/21
  4. Un algoritmo para realizar la siguiente suma:3*3+4*4+5*5+6*6+......+10*10

NIVEL 2

  1. Escribir un algoritmo para contar el número de dígitos de un número cualquiera
  2. Un algoritmo para saber cuantos dígitos impares tiene un número cualquiera
  3. Un algoritmo para invertir el oden de sus cifras de un número cualquiera
  4. Un algoritmo para sumar los digitos de un número
  5. Un algoritmo para mostrar todos los divisores de un número
  6. Algoritmo para realizar la siguiente suma: 4-5+6-7+8-9.........50 sumandos

ALGORITMOS DIVERSOS

  1. Escribir un algoritmo para calcular cuantos número existen menores que 10000 cuya suma de digitos es 12
  2. Escribir un algoritmo para sumar los digitos pares y los digitos impares de un número ingresado.
  3. Escribir un algoritmo para sumar los digitos de lugar par y los digitos de lugar impar de un número ingresado.
  4. Indicar con un algoritmo cuantas fracciones hay en la siguiente serie: 25/8,27/11,29/14,......97/116
  5. Escribir un algoritmo para leer un nombre y me muestre en la salida el nombre escrito al reves.
    Sugerencia: Puede usar las siguientes propiedades de cadena para JAVA:
    cad.length() : Obtiene la longitud de la cadena
    cad.charAt(indice) : Extrae el caracter correspondiente al indice. El indice parte de cero
    cad.substring(ini, fin) : Extrae una parte de la cadena desde el indice ini al indice fin
    Donde cad es una variable de tipo String
  6. Escribir un algoritmo para Leer el apellido paterno, el apellido materno y el nombre de una persona con mayuscula o minuscula o la combinacion de ambos de tal forma que en la salida me muestre con mayuscula la letra inicial de cada apellido y nombre y el resto con minuscula.
    Sugerencia: Puede usar las siguientes propiedades de cadena para JAVA:
    cad.toUpperCase() : Convierte a mayusculas la cadena.
    cad.toLowerCase() : Convierte a minusculas la cadena.
  7. El mismo algoritmo anterior pero ahora se lee el nombre completo de una sola vez
  8. Escribir un algoritmo para mostrar 20 numeros aleatorios entre 20 y 50.
    Sugerencia: Usar el siguiente método de la clase Math para los números aleatorios:
    Math.random() : Número aleatorio en decimal entre 0 y 1.
  9. Calcular la siguiente suma hasta n=20. el símbolo “!” es para indicar el factorial de un número. Ejm. !5=5*4*3*2*1. Considerar !0=1.
    e=1/!0+1/!1+1/!2+1/!3+.......1/!n
  10. Realizar la siguiente suma: 1/0.1+2/0.02+3/0.03+4/0.04
  11. Escribir un algoritmo para sumar fracciones. La fracción resultante debe quedar simplificado.

UTILIZANDO ARREGLOS

  1. Las claves de respuesta de 5 preguntas están guardadas en un arreglo : A[0]="A";
    A[1]="C";
    A[2]="A";
    A[3]="B";
    A[4]="A" y la respuesta que proviene de la lectora óptica en otro arreglo: Res[0]="7001ACDEE";
    Res[1]="7002CDCBE";
    Res[2]="7003ABDBC";
    Res[3]="7004A DBE";
    Res[4]="7005ACCBE";
    Res[5]="7006BBD B";
    Res[6]="7007ABBDE";
    Res[7]="7008ACBDE";
    Res[8]="7009 BBBE",
    Res[9]="7010ACCDE".
    Donde los 4 primeros caracteres representa el código del alumno, los caracteres restantes las marcas de los alumnos en forma ordenada. Escribir un programa para calificar y mostrar el código y la nota correspondiente de todos los alumnos Respuesta correcta vale 10 puntos, Respuesta incorrecta -2 puntos y Respuesta no contestada 0 puntos.

viernes, 11 de mayo de 2007

Datos, Tipo de datos y Operadores

Alumno: Profe, yo escuche que los programas manipulan datos y sin datos un programa no funciona. Que es eso?
Profesor: Cuando realizamos la suma de dos números, lo que estamos haciendo es sumar dos datos a partir del cual se puede obtener información. Por lo tanto dato es un hecho o valor del cual se puede obtener información. Sin datos no podriamos hacer practicamente nada.

Tipo de datos

Datos de tipo númerico

  • Entero: Sin punto decimal ejemplo: 125, 234, etc
  • Decimal: Con punto decimal ejemplo: 234.23, 32.25, etc

Datos de tipo caracter: Estos datos los representamos entre comilla
  • Caracteres alfabéticos: ejemplo: "a", "b", "c", "d", etc.
  • Caracteres numéricos: ejemplo: "0", "1", "2", "3", "4", "5", "6", "7", "8", "9".
  • Caracteres espcialies: ejemplo: "$", "/", "#", "@", etc.
Lo más común es usar un conjunto de caracteres como dato por ejemplo el nombre de una persona esto se conoce como cadena o String y se representa entre comillas por ejemplo:
"Lima", "Peru", "123245", "1+2", "abc123".

Alumno: Profe ¿la cadena "123245" no es en realidad un número?
Profesor: No, esta entre comillas por lo tanto es una cadena de caracteres numéricos y se debe considerar como tal. En otras palabras no es lo mismo el número 123245 que la cadena "123245".

viernes, 13 de abril de 2007

Algoritmos - Introducción

Alumno: Profe Ud. nos indicó que las computadoras realizan operaciones a grandes velocidades pero ¿Como le indicamos a un computador que es lo que tiene que hacer?
Profesor:Antes de contestar esa pregunta me puede decir ¿Como le indicaría a su compañero que realice algun trabajo por ud?
Alumno: Tendría que preparar un documento con instrucciones precisas.
Profesor: De igual forma Joven se tiene que preparar un documento para indicarle al computador lo que tiene que realizar. Ese documento se le conoce como ALGORITMO.
Alumno: La receta de cocina también es un documento de instrucciones para realizar una tarea. Entonces por lo que Ud. ha dicho Será tambien un ALGORITMO.
Profesor: Claro que si. Un ALGORITMO es una secuencia de pasos ordenados, finíto y bien definido que nos permiten realizar una tarea o resolver un problema. Entendemos por finito que tenga un limitado número de pasos; definido implica que si se sigue el mismo proceso más de una vez llegaremos al mismo resultado, por lo tanto una receta de cocina lo es .
Alumnos: Específicamente profesor. ¿Como escribo un ALGORITMO?.
Profesor: Existen diferentes formas de escribir un ALGORITMO :
Por ejemplo vamos a escribir un ALGORITMO para sumar dos números de tres formas diferentes
  1. Lenguaje natural: Tal como nos expresamos los humanos
  2. Diagrama de flujo: Utilizando gráficos normalizados
  3. Pseudocódigo: Utilizando palabras reservadas

Alumno: ¿Como escribo un ALGORITMO para que la computadora me pueda entender?
Profesor: La computadora directamente no entiende un ALGORITMO. Sólo puede entender un lenguaje de ceros(0) y unos(1) conocido como lenguaje de máquina. Existen programas que convierten un ALGORITMO a lenguaje de máquina conocidos como intérpretes que traduce instrucción por instrucción por ejemplo el Basic y otros conocidos como compiladores que traduce todo el ALGORITMO en conjunto por ejemplo C++, Pascal, etc. Cada uno tiene sus propias reglas y sintaxis conocido como Lenguaje de programación.
Alumno: Entonces ¿tendría que aprender las reglas y sintaxis de cada lenguaje para aprender a programar?.
Profesor: Claro que no. Si la lógica es la misma para todos los casos, entonces sería mucho más conveniente usar codigo que lo podamos entender con facilidad conocido como PSEUDOCÓDIGO para escribir nuestros ALGORITMOS ya que es la que se asemeja más a un Lenguaje de programación y se limitaría simplemente a trascribir de acuerdo a las reglas y sintaxis del lenguaje escogido.
Alumno: ¿Por que no escribo directamente en un lenguaje de programación y me ahorro el trabajo de escribir previamente el ALGORITMO en PSEUDOCÓDIGO?.
Profesor: Puede ser factible. En todo caso tendría que usar un Lenguaje simple que tenga todas las condiciones para transformar a cualquier Lenguaje sin dificultad. Sin embargo es mucho más sencillo usar PSEUDOCÓDIGO por que usa palabras reservadas en nuestro propio lenguaje y eso lo entendemos mejor, enfocandonos en la parte lógica del problema.