Está en la página 1de 47

INICIEMOS....

Programar computadores es maravilloso y divertido. Al hacerlo, pasamos de utilizar


juegos de computador elaborados por otras personas a ser creadores de nuestros
propios juegos, presentaciones, animaciones, etc.

Cuando utilizamos el entorno de programación Scratch, aprendemos a seleccionar,


crear, manejar e integrar textos, imágenes y grabaciones de audio. Además, al tiempo
que nos divertimos, podemos realizar actividades de programación de computadores
que nos ayuden a mejorar nuestra comprensión de diferentes temas de Matemáticas,
Ciencias Naturales, Ciencias Sociales, Lenguaje, etc.

Scratch es un entorno de programación desarrollado por


un grupo de investigadores del Instituto Tecnológico de
Massachusetts (MIT), una de las Universidades más
importantes del mundo, bajo la dirección del Dr. Mitchel
Resnick.

Scratch hace que la programación sea más


divertida para todo aquel que se enfrente por primera vez
a aprender a programar. Según sus creadores, fue
diseñado como medio de expresión para ayudar a niños
y jóvenes a expresar sus ideas de forma creativa, al
tiempo que desarrollan habilidades de pensamiento
Dr. Mitchel ResnickFoto: Brian Cairns lógico y de aprendizaje del Siglo
XXI.

Pero antes de iniciarnos de lleno en la programación de computadores, es indispensable


que previamente realicemos algunas actividades.

1.1 PASOS PARA REALIZAR TAREAS

En la naturaleza hay muchos procesos que puedes considerar como Algoritmos ya que
tienen procedimientos y reglas. Incluso, muchas veces no somos conscientes de ellos.

Por ejemplo, el proceso digestivo es un concepto de algoritmo con el que convivimos a


diario sin que nos haga falta una definición precisa de este proceso. El hecho de que
conozcamos cómo funciona el sistema digestivo, no implica que los alimentos que
consumimos nos alimenten más o menos.

La familiaridad de lo que sucede día a día nos impide ver muchos algoritmos que pasan
a nuestro alrededor. Procesos naturales como la gestación, las estaciones, la
circulación sanguínea, los ciclos planetarios, etc, son algoritmos naturales que
generalmente pasan desapercibidos.

Ejemplo
Lavarnos los dientes es un procedimiento que realizamos varias veces al día. Veamos
la forma de expresar este procedimiento como un Algoritmo:
1. Tomar la crema dental
2. Destapar la crema dental
3. Tomar el cepillo de dientes
4. Aplicar crema dental al cepillo
5. Tapar la crema dental
6. Abrir la llave del lavamanos
7. Remojar el cepillo con la crema dental
8. Cerrar la llave del lavamanos
9. Frotar los dientes con el cepillo
10. Abrir la llave del lavamanos
11. Enjuagarse la boca
12. Enjuagar el cepillo
13. Cerrar la llave del lavamanos
14. Secarse la cara y las manos con una toalla

Ejemplo
Veamos que algo tan común como los pasos para cambiar una bombilla (foco) se
pueden expresar en forma de Algoritmo:
1. Ubicar una escalera o un banco debajo de la bombilla
fundida
2. Tomar una bombilla nueva
3. Subir por la escalera o al banco
4. Girar la bombilla fundida hacia la izquierda hasta soltarla
5. Enroscar la bombilla nueva hacia la derecha en el plafón
hasta apretarla
6. Bajar de la escalera o del banco
7. Fin
1.2 ALGORITMO

Los Algoritmos permiten describir claramente una serie de


instrucciones que debe realizar el computador para lograr un
resultado previsible. Vale la pena recordar que un
procedimiento de computador consiste de una serie de
instrucciones muy precisas y escritas en un lenguaje de
programación que el computador entienda como lo es
Scratch.

En resumen, un Algoritmo es una serie ordenada de


instrucciones, pasos o procesos que llevan a la solución de un
determinado problema. Los hay tan sencillos y cotidianos
como seguir la receta del médico, abrir una puerta, lavarse
las manos, etc; hasta los que conducen a la solución de
problemas muy complejos.

1.3. Ejercicio
Discutamos en parejas el ejemplo de la bombilla y propongamos algunas mejoras.
Luego, un voluntario debe pasar al tablero y escribir el Algoritmo con la participación
de todos.

1. ________________________________________________________________

2. ________________________________________________________________

3. ________________________________________________________________

4. ________________________________________________________________

5. ________________________________________________________________

6. ________________________________________________________________

7. ________________________________________________________________

8. ________________________________________________________________

9. ________________________________________________________________

10._______________________________________________________________

11._______________________________________________________________
Describe, lo más detalladamente posible y en orden, los pasos a realizar para llevar a
cabo cada una de las siguientes tareas.

Comprar una revista Botar la basura

1. ________________________ 1. _______________________________________
_________________
2. _______________________________________
2. ________________________
3. _______________________________________
_________________
4. _______________________________________
3. ________________________
_________________ 5. _______________________________________
4. ________________________ 6. _______________________________________
_________________ 7. _______________________________________
5. ________________________ 8. _______________________________________
_________________
9. _______________________________________
6. ________________________
_________________ 10. ______________________________________

7. ________________________ 11. ______________________________________


_________________ 12. ______________________________________
8. ________________________
_________________
9. ________________________
_________________
10. ________________________
________________
11. ________________________
________________
12. ________________________
________________
Empacar un regalo Fritar un huevo en mantequilla

1. _______________________________________
1. _______________________________________
2. _______________________________________
2. _______________________________________
3. _______________________________________
3. _______________________________________
4. _______________________________________
4. _______________________________________
5. _______________________________________
5. _______________________________________
6. _______________________________________
6. _______________________________________
7. _______________________________________
7. _______________________________________
8. _______________________________________
8. _______________________________________
9. _______________________________________
9. _______________________________________
10. ______________________________________
10. ______________________________________
11. ______________________________________
11. ______________________________________
12. ______________________________________
12. ______________________________________

Construye un avión de papel paso a paso y en forma ordenada. Luego escribe en orden
los pasos, para explicarle a otra persona cómo elaborarlo.

1. _______________________________________________________________________
2. _______________________________________________________________________
3. _______________________________________________________________________
4. _______________________________________________________________________
5. _______________________________________________________________________
6. _______________________________________________________________________
7. _______________________________________________________________________
8. _______________________________________________________________________
9. _______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________

Reflexiona sobre el lenguaje que utilizas diariamente para comunicarte con tus padres,
hermanos, profesores y compañeros.

¿Utilizas un lenguaje preciso?


____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

¿Utilizas palabras corrientes?


____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

____________________________________________________________________
Ejercicio
A diferencia de los seres humanos que realizan actividades sin detenerse a pensar en
los pasos que deben seguir, los computadores son muy ordenados y necesitan que
quien los programan les diga cada uno de los pasos que deben realizar y el orden lógico
de ejecución.
Numera en orden lógico los pasos siguientes (para pescar):

___ El pez se traga el anzuelo.


___ Enrollar el sedal.
___ Tirar el sedal al agua.
___ Llevar el pescado a casa.
___ Quitar el Anzuelo de la boca del pescado.
___ Poner carnada al anzuelo.
___ Sacar el pescado del agua.

Ejercicio
Trae a la clase los siguientes elementos:
❑ Arroz, lentejas o maíz (medio puñado).

❑ Una banda de caucho.

❑ Un vaso plástico.

❑ Un trozo de papel resistente (15cm x 15cm aproximadamente).

Con los elementos anteriores elabora una “maraca”


siguiendo en orden secuencial estas instrucciones:
1. Recortar del papel resistente un trozo más grande
que la boca del vaso plástico.
2. Poner el papel sobre la boca del vaso el papel.
3. Fijar el papel al vaso con ayuda de la banda de
caucho.
4. Asegurarse que la boca del vaso quede sellada.
5. Introducir el arroz, las lentejas o el maíz en el vaso
(cada elemento produce una sonoridad diferente).

¿Qué sucedió? ¿Pudiste elaborar la maraca?


¿Qué cambiarias en el orden de las instrucciones?.
Ejercicio

En una hoja aparte, describe detalladamente los pasos que seguirías para lograr cada
una de las siguientes tareas: 1.4 Reto en Familia

1. Adquirir una revista


2. Empacar un regalo
3. Fritar un huevo en mantequilla
4. Hacer un avión con una hoja de papel
5. Hacer un barco con una hoja de papel
6. Botar la basura
7. Encender una vela
8. Tomar una fotografía
9. Explicar las reglas de un juego a un compañero
10. Elevar una cometa

NOTA: ejercicio adaptado de “La esencia de la lógica de programación” (Trejos, 1999).

¿Cuántos triángulos ves?

Pídele a tus padres y hermanos mayores que te ayuden


a resolver el siguiente acertijo: ).

¿Cuántos triángulos hay en esta figura?


Algoritmo

Características de un algoritmo

Las características fundamentales que debe cumplir todo algoritmo son:

▪ Un algoritmo debe ser preciso: tiene que indicar el orden de realización de cada paso.
▪ Un algoritmo debe estar definido: Si se sigue un algoritmo dos veces, se debe obtener
el mismo resultado cada vez.
▪ Un algoritmo debe ser finito: el algoritmo se debe terminar en algún momento; o sea,
debe tener un número finito de pasos.
▪ Un algoritmo debe ser legible: El texto que lo describe debe ser claro, tal que permita
entenderlo y leerlo fácilmente.
▪ Un algoritmo debe definir tres partes: Entrada, Proceso y Salida

Elementos para construir un algoritmo

Variable

Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el
transcurso de la ejecución del programa.
Una variable descrita o declarada de un tipo determinado, sólo podrá contener,
valores de ese tipo. Una variable declarada numérica entera, no podrá contener
números reales. Se utiliza cuando el dato que contiene sufrirá cambios o variará en la
medida que cambien los valores que maneje

Veamos un poco el concepto de lo que hemos explicado, y así sabremos para que sirve una
variable en programación (y su significado).
Primero hablaremos del identificador de una variable, que no deja de ser el nombre de la
variable que le ponemos.
Cuando hablamos de identificadores, no sólo nos referimos a las variables, sino también cuando
ponemos un nombre a una función o una clase.
Lo habitual es que haya una serie de restricciones. La mayoría de los lenguajes de
programación tienen estas condiciones:

▪ Debe de iniciar con una letra


▪ No debe de tener espacios intercalados
▪ Debe de tener un máximo de 8 letras un mínimo de una letra
▪ no puede ser una palabra reservada. Por ejemplo, if, for, while…
▪ No puede iniciar o contener intercalado carácter especial, como $,ñ.

Ejemplo de variables

Variables bien definidas

Partes de un algoritmo
Ejemplo Para elaborar un diagrama (Dfd o Scratch)

Elabore un Algoritmo que ingrese un número. Calcular la el doble de un número.

Planteamiento
Lo primero q debemos de ver es el texto del problema cuantos números debemos ingresar dos
números. El cálculo la suma de ambos números.
Algoritmo
1 variables a utilizar
n1,n2, r ( representa el numero ingresado y r el resultado de la
operación a utilizar)
2 Ingreso
‘ingrese un número ’, n1
‘ingrese otro número ’, n2
3 Proceso
R n1 +n2
4 Salida
‘La Suma es ‘,R
Diagrama de Scratch

Ten en cuenta lo siguiente: Utiliza la opción PREGUNTAR para pedir al usuario


del programa que debe de ingresar dos números y calcular la suma de los
números.

...
Crea una VARIABLE guardar el valor un numero en la primer variable luego debe
de ingresar otro número en otra variable para almacenar los variables de la
sumatoria. Elabora un programa que genere, línea por línea, la suma de dos
números Utiliza los bloques PREGUNTAR, FIJAR, DECIR y UNIR.

Problema Inesperado: ¿Qué debes hacer para que las


variables con sus valores actuales aparezcan en el escenario?
DIAGRAMAS DE FLUJO CON EL PROGRAMA Dfd.

DFD es un programa con herramientas gráficas que ayuda ha diseñar algoritmos expresados en diagramas de
flujo (DF).

Algoritmo.

Una posible definición de algoritmo es un conjunto de reglas que permiten obtener un resultado determinado y
parte de ciertas reglas definidas. Ha de tener las siguientes características: legible, correcto, modular, eficiente,
estructurado, no ambiguo y a ser posible se ha de desarrollar en el menor tiempo posible.

Características.

1. Finito: Posee principio y fin.


2. Objetivo: solo realiza la función para la que se creó y ninguna otra.
3. información de Entrada y de salida.
4. Fiable

INICIO DEL Dfd.

Al abrir el Dfd se ve en la pantalla la ventana de edición la cual consta de inicio y fin ya que todo algoritmo
debe ser finito.
Barra de herramientas.

Zoom.

Este submenú posee los comandos que manejan el tamaño de los objetos en pantalla y el tamaño con el
que pueden ser impresos.

Ejecución.

El bloque de permite poner en funcionamiento el algoritmo.

Ejecutar.

Este comando da paso a la ejecución del algoritmo. En caso de que un error sea encontrado, un
mensaje será desplegado indicando el tipo de error y el objeto en el que se presentó. Si el diagrama está
libre de errores, se ejecutará el algoritmo a partir del objeto Inicio.

Detener.

Este comando detiene la ejecución del algoritmo. Este comando estará disponible cuando la acción
actual sea diferente de Edición.

Pausar.

Este comando hace una pausa en la ejecución del algoritmo.


Objetos.

Nos permite seleccionar los distintos elementos (objetos) que vamos a introducir en los diagramas de flujo.

Salida.

El objeto Salida muestra valores por pantalla. Puede ser visualizada cualquier cantidad de valores utilizando un
objeto Salida. Al darle doble clic despliega un cuadro de diálogo que muestra el valor obtenido en cada una de
las expresiones en su respectivo orden.

El cuadro de diálogo para la edición del objeto contiene un espacio para ingresar una lista de expresiones
separadas por comas y entre comillas simples (‘). Debe existir por lo menos una expresión.

Lectura.

El objeto Lectura permite la entrada de valores constantes desde el teclado y se los asigna a campos
variables. Podrá ser leída cualquier cantidad de variables utilizando un objeto Lectura. Al ejecutarse, el
objeto despliega un cuadro de diálogo por cada variable presente en la lista, este cuadro de diálogo
espera que el usuario introduzca un valor constante que será asignado a la respectiva variable en caso
de ser un nombre debe ir entre comillas simples.
EJEMPLO.

En el siguiente ejemplo consta en que el usuario ingrese su edad y el le responderá cuantos años tiene se
usaran objetos como salidas y lectura.

Abrir el programa (Dfd) y agregamos una salida.


Damos doble clic y escribimos entre comillas simples (‘Ingrese su edad en números y presione el botón
enter’).

Ahora agregamos una lectura.


Damos doble clic y escribimos la variable edad sin comillas.

Agregamos una nueva salida.

Damos doble clic y escribimos la respuesta entre comillas simples. Pero la variable (edad) debe ir fuera de las
comillas y separada por comas. ('su edad es de ', edad,' años').
Ya terminado el algoritmo tendrá la siguiente forma en la pantalla.

Damos Clic en ejecutar


El primer objeto en ejecutarse será la de SALIDA, que mostrará en pantalla el siguiente mensaje:

Seguidamente la de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que
queramos darle a la variable edad (por ejemplo, 19):

Finalmente, la última SALIDA:


Cuando el algoritmo finaliza su ejecución y no tiene errores se muestra el siguiente mensaje:

Clic aquí para ver Videotutorial

Ejercicio.

Diseñar un nuevo algoritmo que pida al usuario su nombre y luego los salude.
Asignación.

Este objeto asigna valores a campos variables. Al ser ejecutado, puede realizar hasta tres asignaciones. Cada
asignación consta de un espacio para el campo variable situado siempre a la izquierda, el símbolo de asignación
y un espacio para la expresión situada siempre a la derecha. Esto indica que al campo variable se le asigna el
resultado de la evaluación de la expresión. Debe realizarse por lo menos una asignación.

Constantes y variables.

Tipo numérico.

Tipo carácter (entre comillas simples).

Tipo lógico (valores .V. y .F.).

Operadores aritméticos habituales (+, -, *, /, ^).


EJEMPLO.

Diseñaremos un algoritmo que pida dos valores A, B y C al usuario y calcule dos operaciones matemáticas como
la suma, y promedio.

Ingresamos una salida y le escribimos (‘Ingrese el valor A’).

Ingresamos un objeto de lectura y le escribimos la variable (valora).

In grese una nueva salida para el (valor B).


Ingrese una nueva entrada de lectura y nómbrela (valorb).

Ingrese una nueva salida para el (valor C).

Ingrese una nueva entrada de lectura y nómbrela (valorc).


Ahora que ya hemos hecho las salidas y las entradas insertamos una asignación y le damos doble clic.
Nombramos a la primera fila de la columna izquierda (suma), la que será nuestra primera operación matemática,
después en la primera fila de la columna derecha sumamos los nombres o variables que escribimos anteriormente
en los tres objetos de lectura (valora+valorb+valorc).

Para la segunda operación matemática de promedio simplemente llamamos a la segunda fila de la columna
izquierda (promedio), y en la segunda fila de la columna derecha realizamos la operación matemática del
promedio así: colocamos la asignación suma y la dividimos por el número de variables (suma/3).

Ingresamos una nueva salida para que nos muestre el resultado de la primera operación de la suma de las
tres variables. (‘la suma de los valores A,B,C es de’, suma).

Ingresamos una nueva salida para que nos muestre el resultado de la segunda operación del promedio de
las tres variables. (‘El promedio de los valores A,B,C es de’, promedio).
Ya terminado el algoritmo tendrá la siguiente forma en la pantalla.

Damos Clic en ejecutar

El primer objeto en ejecutarse será la de SALIDA, que mostrará en pantalla el siguiente mensaje.

Seguidamente la de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que
queramos darle a la variable A (por ejemplo, 5):

Luego se ejecuta el segundo objeto de salida.


El segundo objeto de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que
queramos darle a la variable B (por ejemplo, 4):

Luego se ejecuta el tercer objeto de salida.


El tercer objeto de de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que
queramos darle a la variable c (por ejemplo, 1):

El cuarto objeto de salida con la respuesta a la primera operación matemática de sumar los valores A, B, C
(5+4+1=10).

El quinto objeto de salida con la respuesta a la segunda operación matemática del promedio de valores A, B, C
(suma/3).

El cuadro de diálogo que nos muestra que el algoritmo no tiene errores.


Ejercicios

Diseñar un nuevo algoritmo que pida al usuario un número y que duplique su valor.

Decisión.

Este objeto selecciona el flujo a seguir de acuerdo al valor lógico de una condición. La condición debe ser
siempre una expresión que al ser evaluada de como resultado un valor de tipo de dato Lógico.

Ejemplo: <, >, =.

El objeto Decisión esta asociado a dos bloques de objetos ubicados a lado y lado de este, y un objeto Cierre
Decisión ubicado a continuación de ambos bloques. Si al evaluar la condición se obtiene el valor lógico .V., se
ejecuta el bloque rotulado con la palabra Si, en caso contrario se ejecuta el bloque rotulado con No. En ambos
casos la ejecución continúa en el objeto Cierre Decisión.

El cuadro de diálogo del objeto Decisión contiene espacio para la expresión que conforma la condición, y dos
casillas por medio de las cuales se puede especificar por cual lado continuara el flujo en caso de que la condición
sea verdadera.
EJEMPLO.

Diseñar y ejecutar un algoritmo que indique si un número a pedido por teclado es positivo o negativo.

colocamos un objeto de salida y escribimos (‘inserte un número).

Ahora colocamos un objeto de lectura con la variable (número).


Ahora colocamos una decisión y le damos doble clic.

Le escribimos que la variable número > 0 y le escogemos el lado para que la condición sea verdadera
(derecho).

Colocamos un objeto de salida en lado donde la condición sea verdadera


(derecho) y escribimos (‘El número que ingreso es positivo’).
También colocamos otro objeto de salida en el lado donde la condición sea falsa (izquierdo) y escribimos
(‘El número que ingreso es negativo’).
Damos Clic en ejecutar
Y lo hacemos de forma que la condición sea verdadera (número positivo).

Primer objeto de salida.

El objeto de entrada, nos muestra un cuadro de texto en el que introducimos el valor que queramos darle a la
variable número (por ejemplo, 7):

El objeto de salida que nos muestra cuando la condición es verdadera (positiva).


El cuadro de diálogo que nos muestra que el algoritmo no tiene errores.

Ahora lo hacemos de tal forma para que la condición sea falsa (número negativo).

En el objeto de entrada, nos muestra un cuadro de texto en el que introducimos el valor que queramos darle a
la variable número (por ejemplo, -3):
Ahora nos muestra el objeto de salida para cuando la condición es falsa (negativa).

El cuadro de diálogo que nos muestra que el algoritmo no tiene errores.

Ejercicio.

Diseñar y ejecutar un algoritmo que indique cuando la edad sea mayor a 18 que es mayor de edad.

A continuación, se muestra un ejemplo para ver combinadas las salidas, entradas, asignaciones y decisiones.

El algoritmo debe pedir el valor de dos notas la del parcial 1 que vale el 40% y el parcial 2 que vale el 60% de la
nota final, si el la nota final es mayor o igual a 70 el estudiante aprueba y si es menor el estudiante reprueba,
luego de decirnos esto debe mostrar la nota final.

Colocamos un objeto de salida y le escribimos (Ingrese la nota del primer parcial).


Ahora colocamos el primer objeto de entrada con la variable (nota1).
Colocamos un objeto de salida y le escribimos (Ingrese la nota del segundo parcial).

Ahora colocamos el segundo objeto de entrada con la variable (nota2).

Colocamos el primer objeto de asignación y nombraremos las tres filas de la siguiente manera:

1. Fila 1 (parcial1), su operación matemática será multiplicar el valor de la nota1 por en 40%.

2. Fila 2 (parcial2), su operación matemática será multiplicar el valor de la nota2 por en 60%.

3. Fila 3 (final), su operación matemática es la de sumar al asignación parcial1 y parcial2 para obtener
el promedio de la nota final.
Colocamos el primer objeto de decisión en el cual colocamos que si el resultado de la asignación (final) es
mayor o igual 2.96 la condición es verdadera.

Final>=70

Si el estudiante cumple la condición se ve la salida que nos dice (‘Felicidades usted aprobó la asignatura
con una nota de’, y la asignación final).

Si el estudiante no cumple la condición se ve la salida que nos dice (‘Lo sentimos usted réprobo la asignatura
con una nota de’, y la asignación final).
Luego colocamos un objeto de salida en el que nos despedimos (‘Buena suerte’).

Damos Clic en ejecutar

Y hacemos que la condición se cumpla (variable fina mayo o igual a 2.96).


Aparece el primer objeto de salida solicitando el valor de la nota del primer parcial.

Aparece la primera entrada en la cual colocamos el valor de la variable nota1 (por ejemplo 2.9).
Aparece el segundo objeto de salida solicitando el valor de la nota del segundo parcial.

Aparece la segunda entrada en la cual colocamos el valor de la variable nota2 (por ejemplo 3).
Aparece el tercer objeto de salida que nos muestra cuando se cumple la condición y se aprueba la asignatura.

Aparece el cuarto objeto de salida que nos muestra la despedida.


El cuadro de diálogo que nos muestra que el algoritmo no tiene errores.

Ahora lo hacemos cambiando los valores para que la condición no se cumpla.

Aparece la primera entrada en la cual colocamos el valor de la variable nota1 (por ejemplo 3)

Aparece el segundo objeto de salida solicitando el valor de la nota del segundo parcial.
Aparece la segunda entrada en la cual colocamos el valor de la variable nota2 (por ejemplo 2.9).

Aparece el tercer objeto de salida que nos muestra cuando no se cumple la condición y se reprueba la asignatura.

Aparece el cuarto objeto de salida que nos muestra la despedida.


El cuadro de diálogo que nos muestra que el algoritmo no tiene errores.

También podría gustarte