Páginas en este Blog

lunes, 31 de octubre de 2011

Algoritmo Cuantitativo. Ejercicios para resolver

En una publicación anterior, se definió a este tipo de algoritmo como aquel que nos permite solucionar un problema de naturaleza numérica. Ahora bien, resolvamos unos ejercicios de ejemplo para ver como se elabora un algoritmo de tipo cuantitativo.


Realizar un algoritmo que permita calcular la altura de un edificio. 


Para resolver el problema planteado, debemos analizar el enunciado que nos permitirá construir a posterior el algoritmo con la solución. Analicemos pues:
  1. Nos piden Calcular la altura de el edificio, en este sentido es necesario asignar a una variable el resultado que obtendremos de dicho cálculo. Nuestra variable será la letra “H”.
  2. Debemos determinar la cantidad de pisos que tiene el edificio en cuestión. Ya que desconocemos tal dato, asumiremos que se trata de un edificio con n pisos, y le asignaremos la variable “n”.
  3. Debemos determinar la altura de cada apartamento, suponiendo que existe un apartamento por piso. El valor correspondiente a la altura de un apartamento lo asignaremos a la variable “a”.
  4. El procedimiento para realizar el cálculo de la altura del edificio, nos es más que efectuar una operación aritmética, utilizando los operadores matemáticos vistos en clase y en entradas posteriores. La operación quedaría de la siguiente manera, H ← n*a. Donde:

    • n = a la cantidad de pisos del edificio
    • a = a la altura de cada apartamento, asumiendo que hay uno por piso
    • H = al resultado de la multiplicación de a*n
Agreguemos números a esta operación aritmética. Supongamos que el edificio posee 5 pisos, cada piso tiene una altura de 2.5 metros, conociendo esto, construyamos el algoritmo:

  1. Inicio ## Inicia la ejecución del programa.
  2. Suministrar cantidad de pisos ##  el usuario ingresa el dato solicitado.
  3. Leer "n" ##  se guarda el dato en la variable "n" 
  4. Suministrar altura de apartamento ##  el usuario ingresa el dato solicitado.
  5. Leer “a” ##  se guarda el dato en la variable "n".
  6. H ← n*a ##  se multiplica la cantidad de pisos por la altura del apartamento y se le asigna el resultado a la variable "H".
  7. Generar resultado 
  8. Imprimir H ## se emite el resultado en pantalla.
  9. Fin ## Finaliza la ejecución del programa.

Se entendio??? Simple verdad??? A ver hagamos otro ejercicio de ejemplo.



Realizar un algoritmo para calcular el área de un triángulo.

Análisis: algoritmo_área_de_un_triángulo.

  1. Calcular el área de un triángulo. Se le asignará a la variable “A”. 
  2. Determinar la base del triángulo. Se le asignará a la variable “b”. 
  3. Determinar la altura del triángulo. Se le asignará a la variable “h”. 
  4. Se raliza la operación aritmética A ← b*h/2, tomando en cuenta el siguiente artificio: 

"El área de un triángulo es igual al semiproducto entre la longitud de una base y la altura relativa a esta con la siguiente fórmula: 



A =\frac{b\cdot h}{2}

donde b es la base del triángulo y h es la altura correspondiente a la base. (se puede considerar cualquier lado como base".


Construcción del Algoritmo:
  1. Inicio ## Inicia la ejecución del programa.
  2. Suministrar cifra de altura
  3. Leer “h”
  4. Suministrar cifra de base 
  5. Leer“b”
  6. A ← b*h/2 ## Asignar a "A" el resultado de multiplicar las cifras de base y altura y luego dividir el resultado de la multiplicación entre 2.
  7. Generar resultado
  8. Imprimir "A"
  9. Fin ## Inicia la ejecución del programa.

Ejercicios.- 

Realice un algoritmo para cada caso que:

  1. Calcule el factorial (n!) de un número (n), sabiendo que:  
  2. n! = n × (n − 1)!
  3. Muestre por pantalla la edad leída de una persona.
  4. Muestre por pantalla el nombre leído de una persona o animal.

Operadores y tipos. Ejemplos prácticos

Los operadores son un conjunto de funciones que nos permiten realizar algo, como por ejemplo, realizar una comparación, un cálculo matemático, o una deducción lógica para tomar una decisión acertada. Por consiguiente los podemos clasificar en las siguientes categorías:


  1.  Operadores Aritméticos: son usados para realizar cálculos con las variables y constantes, estos son:
    • Suma (+) "Representado por el símbolo cruz"
    • Resta (-) "Representado por el símbolo guión"
    • Multiplo (*) "Representado por el símbolo asterisco"
    • División (/) "Representado por el símbolo barra"
  2. Operadores Relacionales: son empleados para establecer comparaciones entre las variables o constantes:
    • Mayor que (>)
    • Menor que (<)
    • Mayor o igual que (>=)
    • Menor o igual que (<=)
    • Igual que (=)
    • Diferente que (!=)
    • Ejemplos:
      • "Viejo" != "Joven"
      • 58 > 35
      • 2 = 2
      • 2 < 3
      • "hombre_adulto" >= "25 años"
  3. Operadores Lógicos: son empleados para combinar las operaciones relacionales:
    • And (Y)
    • Or (O)
    • Not (No)
    • Ejemplos:
      • Edad = 5 and Sexo = "masculino"

Definición de Variables y Constantes. Ejemplos prácticos

Una variable, es un espacio de memoria que es representado con una letra, o una palabra y que puede tomar diversos valores de un mismo tipo durante la ejecución de un programa informático. Por ejemplo, la edad. La palabra “edad” representa un espacio de memoria que va a guardar un valor de edad en determinado momento. En un primer momento se lee la edad de una persona de 18 años, y el valor de edad será entonces 18;luego al leer otra edad, por ejemplo 21 años, se borra el valor 18 que tiene actualmente y se sustituye por el nuevo valor 21. Así sucesivamente se repetirá esta acción con cada una de las lecturas que se hagan de la edad de un grupo de personas.


En cambio, una constante es un espacio de memoria que siempre va a tener un mismo valor. Este valor no va a cambiar durante la ejecución del programa informático. Ejemplos representativos de esto son: el valor de Pi(π)= 3,14159265; la gravedad de la tierra según sus polos G=9,8m/s^2; El valor actual de I.V.A.=12% (Caso Venezolano), etc.


Tipos de Variables y constantes

Las variables y constantes comparten un mismo tipo de dato o valor que debe ser el mismo en la ejecución de un programa. Para ellos, es necesario conocer cuáles son estos tipos de variables para hacer una definición de cada una de ellas antes de comenzar a utilizarlas:

  1. Entero: Representa un valor de tipo numérico entero, es decir, un numero natural comprendido desde el 0...9
  2. Real: Representa un valor de tipo numérico real, es decir, un numero negativo o fracciones decimales.
  3. Alfabético: Representa un carácter, en este aspecto se incluyen letras del alfabeto símbolos especiales, es decir, a,b,c...z;!,",#,$,%,&,?,¡,°
  4. Alfanumérico: Representado por la combinación de datos numéricos y alfabéticos, como por ejemplo una código postal, dirección fiscal, clave de correo electrónico, etc.
  5. Booleano. El tipo de datos booleano acepta dos sólo dos valores: Verdadero y falso.

Definición de problema, algoritmos y tipos de algoritmo

Comencemos por definir que es un problema, según Correa, G. (1998), "Desarrollo de algoritmos y sus aplicaciones en Basic, Pascal, Cobol y C.", se denomina problema a todo "...asunto o un conjunto de cuestiones que se plantean para ser resueltas. La naturaleza de los problemas varía con el ámbito o con el contexto donde están planteados; así, existen problemas matemáticos, químicos, filosóficos, etc.

En wikipedia, la enciclopedia libre, se obtiene una definición similar. Un problema "suele ser un asunto del que se espera una rápida y efectiva solución.

Por tanto, en lo que compete a la clase de lógica de programación, consideraremos problema a todo asunto que pueda ser resuelto usando una serie de pasos estructurados que de manera lógica será ejecutados uno a uno, para resolver el problema planteado, a esto se le denomina algoritmo, que no es más que una serie de reglas que a posterior serán introducidas en un computador, para que ejecute la solución al problema planteado.

Pero estudiemos otras definiciones sobre el algortimo. Según Cerquera, Y. (2001)"ALGORITMICA PARA PROGRAMACION" define el término como: "el conjunto de instrucciones que conducen a la solución de un problema determinado. Dichas instrucciones deben tener una secuencia lógica para poder llegar a la solución real."

Por consiguiente, un algoritmo es una secuencia de instrucciones o reglas, ordenadas y finitas que nos permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Por lo tanto, nos compete en este curso, comprender la importancia del algoritmo como base de la programación, y por tanto aprender a resolver problemas con el uso del algoritmo.


Tipos de algoritmo

Muchas veces a la mitad de un trabajo, se nos presenta un problema que amerita una pronta solución, es allí cuando es necesario expresarlo de manera formal, algo entendible para cualquiera que pueda utilizarlo para solucionar alguna situación similar. Por ejemplo, un modelo basado en una sintaxis gramatical, puede servir para resolver un problema de tipo simbólico o de textos, a estos los denominaremos algoritmos cualitativo, ya que en sus pasos o instrucciones no están involucrados cálculos numéricos. En este tipo de algoritmo, se incluyen los procedimiento para preparar una receta de comida o tan sencillo como enumerar los pasos para freír un huevo, utilizar una guía telefónica, realizar una llamada desde nuestro teléfono móvil, cambiar un neumático, etc.

Entre tanto, un modelo matemático, permite solucionar un problema de naturaleza numérica, a estos los denominaremos algoritmos de tipo cuantitativo, como por ejemplo: encontrar la solución al factorial de un numero, una ecuación de segundo grado, determinar el área de un triangulo, etc.

Por consiguiente, en este punto se hace necesario diferenciar los tipos de algoritmo que podemos emplear en las distintos maneras en las que se nos puede presentar un problema.


---

Sino te ha quedado claro que es un algoritmo y para que sirve, observa el siguiente vídeo, para reforzar tu conocimiento:







Por calichilo


Repasemos lo antes visto, realizando los siguiente ejercicios, que deberás entregar en la clase siguiente:

1. Realizar un algoritmo, para cambiar un neumático desinflado

2. Realizar un algoritmo para realizar un puré de papas con aderezo y mayonesa.


---

Nota: Recuerda usar las siguientes convenciones, para la resolución de los problemas planteados:
  • Emplear oraciones en lenguaje natural, donde cada una se refiere a una actividad general o específica. 
  • Utilizar un lenguaje común, sin palabras rebuscadas. 
  • Evitar errores gramaticales, abreviaciones y puntuaciones.

La Lógica. Definición y aplicación practica

Un algoritmo no es mas que la realización de pasos o sentencias compuestas de instrucciones o reglas preestablecidas, ordenadas, y finitas, que permiten realizar una actividad a través de pasos sucesivos en un orden lógico, que conllevan a la resolución de un problema planteado. Como por ejemplo problemas de orden matemático o de flujo de información.


En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los procedimientos plasmados en manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón, para realizar una determinada tarea en un proceso de producción, donde se debe hacer paso a paso cada procedimiento para obtener un resultado determinado.

Hasta aquí vamos bien; pero, formulate las siguientes preguntas:

  1. ¿Vale la pena estudiar, aprender y desarrollar la lógica? 
  2. ¿Que importancia tiene para mi el conocer y aprender a desarrollar la lógica en la informática?
Para ayudarlos a responder tales interrogantes, les coloco el siguiente vídeo, para que atiendan a la necesidad de pensar con lógica a la hora de crear un programa informatico, cosa que también podemos adaptar a nuestro que hacer diario.







Como pudieron apreciar en el vídeo, el hecho de tener una computadora y un sistema que automatice un procedimiento, ("Registro de clientes"), no es la maravilla del mundo sino ha sido programado usando una lógica abstracta, es decir, una forma de desarrollar una solución no solo a un determinado problema, sino aun numero infinito de problemas, donde esta solución que propones, se adapte a cada uno de esos problemas que puedan surgir a futuro.


En el vídeo se aprecia a un empleado frustrado, que no entiende las funciones y las alternativas que le ofrece el programa informático, ya que tiene una lógica incomprensible por el usuario final. Hagamos entonces algunos ejercicios para fortalecer la lógica que cada uno de ustedes posee resolviendo los siguientes acertijos:








Acertijo 1.



Un pastor tiene que pasar un lobo, una cabra y una lechuga a la otra orilla de un río, dispone de una barca en la que solo caben el y una de las otras tres cosas. Si el lobo se queda solo con la cabra se la come, si la cabra se queda sola con la lechuga se la come, ¿cómo debe hacerlo?.

Acertijo 2.

Un hombre esta al principio de un largo pasillo que tiene tres interruptores, al final hay una habitación con la puerta cerrada. Uno de estos tres interruptores enciende la luz de esa habitación, que esta inicialmente apagada.
¿Cómo lo hizo para conocer que interruptor enciende la luz recorriendo una sola vez el trayecto del pasillo?
Pista: El hombre tiene una linterna.

Acertijo 3.

Tenemos doce monedas aparentemente iguales, pero una de ellas tiene un peso ligeramente superior. Usando una balanza de platillos y con solo tres pesadas encontrar la moneda diferente.

Nota: Si no das con la solución a estos acertijos, déjame un comentario y te enviaré la solución. Pero antes inténtalo.


P.D.: Para acceder al cuadro de comentario, haz clic en el titulo de esta entrada o aquí y ve al final de la página para comentar.

jueves, 9 de junio de 2011

Las TIC en la Educación.

Las Tecnologías de la Información y la Comunicación, han llegado a ser uno de los pilares básicos de la sociedad y hoy es necesario proporcionar al ciudadano una educación que tenga que cuenta esta realidad. Las posibilidades educativas de las TIC han de ser consideradas en dos aspectos: su conocimiento y su uso.



El primer aspecto es consecuencia directa de la cultura de la sociedad actual. No se puede entender el mundo de hoy sin un mínimo de cultura informática. Es preciso entender cómo se genera, cómo se almacena, cómo se transforma, cómo se transmite y cómo se accede a la información en sus múltiples manifestaciones (textos, imágenes, sonidos); si no se quiere estar al margen de las corrientes culturales, hay que intentar participar en la generación de esa cultura, la cual se presenta en dos facetas:

Integrando esta nueva cultura en la Educación, contemplándola en todos los niveles de la Enseñanza, usando con mucha frecuencia a las TIC para lograr de manera libre, espontánea y permanentemente, una formación a lo largo de toda la vida.



El segundo aspecto, aunque también muy estrechamente relacionado con el primero, es más técnico. Se deben usar las TIC para aprender y para enseñar, es decir el aprendizaje de cualquier materia o habilidad se puede facilitar mediante las TIC y en particular, mediante Internet, aplicando las técnicas adecuadas. Este segundo aspecto tiene que ver muy ajustadamente con la Informática Educativa.


No es fácil practicar una enseñanza de las TIC que resuelva todos los problemas que se presentan, pero hay que tratar de desarrollar sistemas de enseñanza que relacionen los distintos aspectos de la Informática y de la transmisión de información, siendo al mismo tiempo lo más constructivos que sea posible desde el punto de vista metodológico.

Llegar a hacer bien este cometido es muy difícil. Requiere un gran esfuerzo de cada profesor implicado y un trabajo importante de planificación y coordinación del equipo de profesores. Aunque es un trabajo muy motivador, surgen tareas por doquier, tales como la preparación de materiales adecuados para el alumno, porque no suele haber textos ni productos educativos adecuados para este tipo de enseñanzas.

De cualquier forma, es fundamental para introducir la informática en la escuela, la sensibilización e iniciación de los profesores en la informática, sobre todo cuando se quiere introducir por áreas (como contenido curricular y como medio didáctico). Por lo tanto, los programas dirigidos a la formación de los profesores en el uso educativo de las Nuevas Tecnologías de la Información y Comunicación deben proponerse como objetivos:

  • Contribuir a la actualización del Sistema Educativo que una sociedad fuertemente influida por las nuevas tecnologías demanda.
  • Facilitar a los profesores la adquisición de bases teóricas y destrezas operativas que les permitan integrar, en su práctica docente, los medios didácticos en general y los basados en nuevas tecnologías en particular.
  • Adquirir una visión global sobre la integración de las nuevas tecnologías en el currículum, analizando las modificaciones que sufren sus diferentes elementos: contenidos, metodología, evaluación, etc.
  • Capacitar a los profesores para reflexionar sobre su propia práctica, evaluando el papel y la contribución de estos medios al proceso de enseñanza-aprendizaje.Finalmente, considero que hay que buscar las oportunidades de ayuda o de mejora en la Educación explorando las posibilidades educativas de las TIC sobre el terreno; es decir, en todos los entornos y circunstancias que la realidad presenta.



Fuente: http://educatics.blogspot.com/
Tema: Las TICS en los procesos de Enseñanza y Aprendizaje
Autor: María Eugénia

Fuente de los vídeos: 

Educación y nuevas tecnologías http://www.youtube.com/watch?v=DbHhxd9WJKc&feature=fvwrel