APRENDIENDO PROGRAMACION

12
Sesión 1 Fundamentos de programación 9 CONOCER LOS ALGORITMOS Aprendiendo INTRODUCCIÓN Pongamos que, un buen día, ante tus ojos, tienes una maravillosa máquina que la gente llama computadora. La miras con cautela, y lo primero que tus ojos observan, es que consta de varias partes. Uno de ellas es similar a tu televisor, a lo cual me pregunto ¿podré ver mi película favorita desde aquí?. Otra parte me recuerda a las máquinas de escribir de la década de los ochentas y me sigo preguntando ¿le podré mandar una carta a mi abuelita?; ¿y por dónde meto el papel?. Luego suelo ver una caja que si la abrimos encontraremos cables y unas plaquitas muy finas. Un consejo: no lo toques pues tienes al frente el cerebro de la máquina. Entonces, como eres una persona emprendedora, te preguntas, “¿y cómo hago para que se ponga mi película favorita?”, “, “¿podremos hacernos amigos?”. Esto último depende de ti, y sólo de ti. Porque, lo primero que tienes que tener pero que muy claro es que la máquina hará única y exclusivamente lo que tú le digas. Lo segundo, es saber que tu máquina tiene limitaciones y que está diseñada para unas tareas concretas. Lo tercero: tienes que aprender el lenguaje de la máquina. Entonces el procesador que está dentro de esa caja para realizar las tareas necesitas instrucciones en código binario, es decir que le digas “0” o “1”. ¿Ah entonces tengo que saber hablar en 0 y 1 si quiero tener algún tipo de relación con mi computadora?. “Qué difícil No?. Entonces llega el ser humano con su ingenio, y decide inventarse un lenguaje más sencillo con el que pudiera comunicarse con la máquina y nacen los lenguajes de programación. Estos lenguajes, como todo, hay que aprendérselos, pero tienen una ventaja, y es que hay varios puntos en común. Todos constan de unos determinados tipos de variables. Una variable es como una caja, donde ahora puedo meter un zapato y mañana un tomate. Ahora, yo puedo haber etiquetado mis cajas y decir “aquí sólo fruta”: será una variable de tipo FRUTA. O, “aquí sólo legumbres”: será una variable de tipo LEGUMBRE. Esto es interesante, porque en el momento en que yo vea FRUTA, ya sé que dentro no hay legumbres. Ahora sabemos Aprenderás A ser capaz de utilizar algoritmos y los diversos componentes de un programa, como las variables, tipos de datos, expresiones, el uso de operadores y operandos. El algoritmo es el conjunto de acciones o secuencias de operaciones ejecutadas en un determinado orden para resolver problema.

description

Este modulo te permitirá inicarte en el maravilloso mundo de la programación.

Transcript of APRENDIENDO PROGRAMACION

Page 1: APRENDIENDO PROGRAMACION

Sesión 1Fundamentos de programación

9

CONOCER LOS ALGORITMOS

Aprendiendo

INTRODUCCIÓNPongamos que, un buen día, ante tus ojos, tienes una maravillosa máquina que la gente llama computadora.

La miras con cautela, y lo primero que tus ojos observan, es que consta de varias partes. Uno de ellas es similar a tu televisor, a lo cual me pregunto ¿podré ver mi película favorita desde aquí?. Otra parte me recuerda a las máquinas de escribir de la década de los ochentas y me sigo preguntando ¿le podré mandar una carta a mi abuelita?; ¿y por dónde meto el papel?.

Luego suelo ver una caja que si la abrimos encontraremos cables y unas plaquitas muy fi nas. Un consejo: no lo toques pues tienes al frente el cerebro de la máquina.

Entonces, como eres una persona emprendedora, te preguntas, “¿y cómo hago para que se ponga mi película favorita?”, “, “¿podremos hacernos amigos?”. Esto último depende de ti, y sólo de ti. Porque, lo primero que tienes que tener pero que muy claro es que la máquina hará única y exclusivamente lo que tú le digas. Lo segundo, es saber que tu máquina tiene limitaciones y que está diseñada para unas tareas concretas. Lo tercero: tienes que aprender el lenguaje de la máquina.

Entonces el procesador que está dentro de esa caja para realizar las tareas necesitas instrucciones en código binario, es decir que le digas “0” o “1”. ¿Ah entonces tengo que saber hablar en 0 y 1 si quiero tener algún tipo de relación con mi computadora?. “Qué difícil No?. Entonces llega el ser humano con su ingenio, y decide inventarse un lenguaje más sencillo con el que pudiera comunicarse con la máquina y nacen los lenguajes de programación.

Estos lenguajes, como todo, hay que aprendérselos, pero tienen una ventaja, y es que hay varios puntos en común.

Todos constan de unos determinados tipos de variables. Una variable es como una caja, donde ahora puedo meter un zapato y mañana un tomate. Ahora, yo puedo haber etiquetado mis cajas y decir “aquí sólo fruta”: será una variable de tipo FRUTA. O, “aquí sólo legumbres”: será una variable de tipo LEGUMBRE. Esto es interesante, porque en el momento en que yo vea FRUTA, ya sé que dentro no hay legumbres.

Ahora sabemos

AprenderásA ser capaz de utilizar algoritmos y los diversos componentes de un programa, como las variables, tipos de datos, expresiones, el uso de operadores y operandos.

El algoritmo es el conjunto de acciones o secuencias de operaciones ejecutadas en un determinado orden para resolver problema.

Page 2: APRENDIENDO PROGRAMACION

Sesión 1 PROGRAMACIÓN 1

10

Vaya, esto se pone interesante. ¿Qué más cosas me permite hacer un lenguaje de programación? Pues me permite hacer operaciones conocidas por todos como sumar, restar, multiplicar y dividir. Los lenguajes de programación, cuentan todos en su haber con un juego de “instrucciones”. Una instrucción no es más que una orden que nosotros le damos a la máquina. Y es que, al fi n y al cabo, un PROGRAMA no es más que una secuencia de instrucciones (escritas en algún lenguaje de programación) pensado para RESOLVER algún tipo de PROBLEMA. Si no sabemos resolver este problema, no podremos escribir el programa.

A ti se te puede ocurrir una manera de resolverlo. A tu vecino, otra. Este MÉTODO con el que podrás resolver un problema, es lo que se llama ALGORITMO.

Por ejemplo, cuando quiero ver una película de video, podría hacer: 1. Elijo una película de las de mi colección.2. Compruebo SI TV y video están conectados a la red.3. SI la TV está apagada, la enciendo, SI NO, pues no. Y lo mismo con el video.4. Abro el estuche de la película. 5. Saco la película de su estuche.6. Introduzco la película en el video.7. Dejo el estuche sobre el video.8. SI la TV no está en el canal adecuado, la cambio, SI NO, pues no.9. Tomo el control remoto (el del TV y el del video).10. Me pongo cómodo.11. Pulso PLAY en el control de video.

¡Y a disfrutar de mi película! ¿Qué fácil no?

¿QUÉ ES ALGORITMO? La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX.

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específi co.

Generalmente los algoritmos se presentan a diario con las diversas vivencias de las personas, todo lo que nos rodea es siempre una secuencia de pasos que nos llevan a realizar nuestras labores en ocasiones ordenadamente.

En la vida cotidiana empleamos algoritmos en multitud de ocasiones para resolver diversos problemas, como por ejemplo para poner una lavadora (conjunto de instrucciones pegadas en la tapa de la máquina), para tocar música (partituras), para construir un aeroplano a escala (expresados en las instrucciones), para hacer trucos de magia (pasos para hacer el truco) o, incluso, para hacer recetas de cocina (pasos de la receta)...

El algoritmo nos da la solución genérica a un problema y lo podremos emplear todas las veces que se nos presente ese mismo problema: por ejemplo el algoritmo de la división es genérico e independiente de los números que tengamos que dividir.

Una vez descubierto un algoritmo para efectuar una tarea, la realización de ésta ya no requiere entender los principios en que se basa dicho algoritmo, pues el proceso se reduce a seguir las instrucciones del mismo. Por ejemplo, podemos hacer una división siguiendo el algoritmo sin entender porque funciona el algoritmo. La inteligencia requerida para llevar a cabo la tarea está codifi cada en el algoritmo.

Page 3: APRENDIENDO PROGRAMACION

Sesión 1Fundamentos de programación

11

Si queremos que una computadora efectúe una tarea, primero debemos descubrir un algoritmo para llevarla a cabo; programar el algoritmo en la máquina consiste en representar ese algoritmo de modo que se pueda comunicar a una máquina. En otras palabras, debemos transformar el algoritmo conceptual en un conjunto de instrucciones y representar estas últimas en un lenguaje sin ambigüedad.

Tipos de algoritmos

Existen dos tipos y son llamados así por su naturaleza: • Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras. • Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para defi nir los pasos

del proceso.

Lenguajes algorítmicos

Un lenguaje algorítmico es una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.

Tipos de lenguajes algorítmicos

• Gráfi cos: Es la representación gráfi ca de las operaciones que realiza un algoritmo (diagrama de fl ujo).

• No Gráfi cos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocodigo). INICIO Edad: Entero ESCRIBA “cual es tu edad?” Lea Edad SI Edad >=18 entonces ESCRIBA “Eres mayor de Edad” FINSI ESCRIBA “fi n del algoritmo” FIN

Page 4: APRENDIENDO PROGRAMACION

Sesión 1 PROGRAMACIÓN 1

12

LAS VARIABLES Y CONSTANTESTodo programa necesita de datos para que de esta forma se puedan realizar los requerimientos que el programa así lo exige. Por lo tanto es menester que se tengan que almacenar en la memoria principal del sistema y para esta acción se usan las variables.

Se llaman variables a los almacenes temporales en memoria, que se usan para guardar datos durante la ejecución de un proceso, donde los valores de los datos pueden ser cambiados en cualquier momento. Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual podamos identifi carla dentro de un algoritmo.

Características de las variables

Toda variable posee las siguientes características:1. Nombre que la identifi ca2. Dirección en la memoria3. Tipo de dato4. Tamaño5. Valor

Ejemplo: Supongamos que tenemos las siguientes variables:La primera variable tendrá por nombre cTexto y será de tipo Texto, el valor que tendrá será “Hola”.La segunda variable tendrá por nombre sValor y será de tipo Numérico, el valor que tendrá será 5.6.La tercera variable tendrá por nombre dFecha y será de tipo Fecha, el valor que tendrá será 01/03/2007.La cuarta variable tendrá por nombre vSexo y será de tipo Lógico, el valor que tendrá será True (Verdadero).

Las variables se crearían del siguiente modo:cTexto = “Hola”sValor = 5.6dFecha = #01/03/2006#vSexo = True

En la memoria se van creando y ocupando espacio en la misma, si el espacio se agotara, el sistema creará las variables en el disco en lo que se denomina memoria virtual.

Memoria Ram

Dfecha

cTexto 01/03/07

Hola sValor vSexo

5.6 True

Page 5: APRENDIENDO PROGRAMACION

Sesión 1Fundamentos de programación

13

Para cambiar el valor de una variable bastará asignarle un nuevo valor. Por ejemplo a la variable sValor se le puede asignar esta vez el valor de 4.8sValor = 4.8

Quedará de la siguiente manera:

Clasificación de las variables

a) Por su Contenido

Variable Numéricas: Son aquellas en las cuales se almacenan valores numéricos, positivos o negativos, es decir almacenan números del 0 al 9, signos (+ y -) y el punto decimal.

Ejemplo:

igv=0.19 pi=3.1416 costo=2500

Variables Lógicas: Son aquellas que sólo pueden tener dos valores (verdadero o falso), estos representan el resultado de una comparación entre otros datos.

Variables Alfanuméricas: Está formada por caracteres alfanuméricos (letras, números y caracteres especiales).

Ejemplo:

letra=’g’ apellido=’rigacci’ direccion=’Av. Libertad #190’

b) Por su Uso

Variables de Proceso: Variables que reciben el resultado de un proceso, fórmula o una operación matemática completa y que se usan normalmente dentro de un programa.

Ejemplo: total=a+b+c

Contadores: Se utilizan para llevar el control del número de ocasiones en que se realiza una operación o se cumple una condición. Los incrementos generalmente son de uno en uno.Ejemplo: num_alum=num_alum+1Donde el contador es la variable num_alum.

Memoria Ram

dfecha

cTexto 01/03/07

Hola sValor vSexo

4.8 True

Variables

Por su contenido

Por su uso

Numéricas

Lógicas

Alfanuméricas (texto)

De Proceso

Contadores

Acumuladores

Page 6: APRENDIENDO PROGRAMACION

Sesión 1 PROGRAMACIÓN 1

14

Acumuladores: Conocidos también como sumadores y que sirve para llevar la suma acumulativa de una serie de valores que se van leyendo o calculando progresivamente.Ejemplo: tot_gen= tot_gen +impoDonde el sumador es la variable tot_gen.

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. Ejemplo: pi = 3.1416

TIPOS DE DATOS Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como ‘b’, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.

Tipos de Datos Simples

a) Datos Numéricos: Permiten representar valores escalares de forma numérica, esto incluye a los números enteros y los reales. Este tipo de datos permiten realizar operaciones aritméticas comunes.

b) Datos Lógicos: Son aquellos que solo pueden tener dos valores (verdadero o falso) ya que representan el resultado de una comparación entre otros datos (numéricos o alfanuméricos).

c) Datos Alfanuméricos (Texto): Es una secuencia de caracteres alfanuméricos que permiten representar valores identifi cables de forma descriptiva, esto incluye nombres de personas, direcciones, etc. Es posible representar números como alfanuméricos, pero estos pierden su propiedad matemática, es decir no es posible hacer operaciones con ellos. Este tipo de datos se representan encerrados entre comillas.

LAS EXPRESIONES

Por Ejemplo: impo+impo*igv

Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas.

Tipos de datos

Simples

Estructurados (Defi nidos por

el usuario)

Numéricos

Lógicos

Alfanuméricos (texto)

Arreglos (Vectores, Matrices)

Registros

Archivos

Apuntadores

Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales.

Page 7: APRENDIENDO PROGRAMACION

Sesión 1Fundamentos de programación

15

Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifi can las expresiones en:A. Aritméticas B. Relacionales C. Lógicas

OPERADORES Y OPERANDOS

Operadores

Son elementos que relacionan de forma diferente, los valores de una o más variables y/o constantes. Es decir, los operadores nos permiten manipular valores.

Operadores Aritméticos: Los operadores aritméticos permiten la realización de operaciones matemáticas con los valores (variables y constantes).

Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el resultado es real.

Ejemplos:

Operadores Relacionales

A. Se utilizan para establecer una relación entre dos valores.B. Compara estos valores entre sí y esta comparación produce un resultado de certeza o

falsedad (verdadero o falso).C. Los operadores relacionales comparan valores del mismo tipo (numéricos o cadenas)D. Tienen el mismo nivel de prioridad en su evaluación.

Operadores Aritméticos

Potenciación ^

Multiplicación *

División /

División Entera Div

Modulo Mod

Suma +

Resta -

Expresión Resultado

7 / 2 3.5

12 mod 7 5

4 + 2 * 5 14

Tipos de Operadores

Aritméticos

Relacionales

Lógicos

Operando Operador Operando

Variable o Constante Valor o Variable

Page 8: APRENDIENDO PROGRAMACION

Sesión 1 PROGRAMACIÓN 1

16

E. Los operadores relacionales tiene menor prioridad que los aritméticos.

Ejemplo:

Operadores Lógicos: Estos operadores se utilizan para establecer relaciones entre valores lógicos.Estos valores pueden ser resultado de una expresión relacional.

Operador Or

Operando1 Operador Operando2 Resultado

T OR T T

T OR F T

F OR T T

F OR F F

Operadores Relacionales

> Mayor que

< Menor que

>= Mayor o igual que

<= Menor o igual que

<> Diferente

= Igual

Si a = 10 b = 20 c = 30

a+b>c Falso

a-b<c Verdadero

a-b=c Falso

a*b<>c Verdadero

Operadores Lógicos

And Y

Or O

Not Negación

Operador And

Operando1 Operador Operando2 Resultado

T AND T T

T AND F F

F AND T F

F AND F F

Page 9: APRENDIENDO PROGRAMACION

Sesión 1Fundamentos de programación

17

Ejemplos: a = 10 b = 12 c = 13 d =10

1) ((a > b)or(a < c)) and ((a = c) or (a > = b))

F T F F

T F

F

2) ((a > = b) or (a < d)) and ((a > = d) and (c > d))

F F T T F T

F

LOS IDENTIFICADORES

Ejemplo: Nombre Num_hrs Calif2

Ejemplo

Operando1 Operador Operando2 Resultado

(a < b) AND (b < c) T

(10<20) AND (20<30) T

Prioridad de los Operadores Lógicos

Prioridad de los Operadores en General

1 Not 1 ( )

2 And 2 ^

3 Or 3 *, /, Mod, Not

4 +, -, And

5 >, <, > =, < =, < >, =, Or

Operador Not

T F

F T

Los identifi cadores representan los datos de un programa (constantes, variables, tipos de datos). Un identifi cador es una secuencia de caracteres que sirve para identifi car una posición en la memoria de la computadora, que nos permite acceder a su contenido.

Page 10: APRENDIENDO PROGRAMACION

Sesión 1 PROGRAMACIÓN 1

18

Reglas para formar un identificador

1. Debe comenzar con una letra (A hasta la Z, mayúsculas o minúsculas) y no deben contener espacios en blanco.

2. Letras, dígitos y caracteres como la subraya ( ) están permitidos después del primer carácter.3. La longitud de identifi cadores se sugiere que tengan en promedio hasta 8 caracteres.

SÍMBOLOS USADOS EN LOS ALGORITMOS

Símbolo Signifi cado

Terminador: Signifi ca inicio o fi n del programa.

Proceso: Se usa para realizar procesos o formulas así como también para declarar variables o inicializar entornos.

Datos: Se usa para ingresar datos o simbolizar la presentación de los resultados de los procesos.

Conector: Permite unir el fl ujo de datos, entre los diferentes símbolos de un diagrama.

Condicional: Representa a una expresión lógica la que al ser evaluada devuelve un valor V (verdadero) o F (falso). Se tiene que usar con el símbolo Flecha para indicar la acción a realizar.

Proceso Predefi nido: Se utiliza para representar los subprogramas o módulos de programación.

Conector de página: Permite indicar la continuación de la lógica en otra página distinta a la actual.

Flecha: Permite dirigir la secuencia de la lógica el programa.

La tarea de escribir un programa o programar consiste en escribir detallada y minuciosamente las instrucciones que debe seguir una computadora para realizar una tarea. Estas instrucciones deben escribirse en un lenguaje que la computadora pueda entender, ya sea en forma directa o luego de una traducción realizada por un intérprete o un compilador, como se explica más adelante en este capítulo.

Page 11: APRENDIENDO PROGRAMACION

INSTITUCIÓN EDUCATIVA _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

FICHA DE TRABAJO N° _ _ _ _ Nombre y Apellidos: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Profesor(a): _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Nivel: Secundaria Sección: _ _ _ _ _ _ Fecha: _ _ _ _ _ _ _ _ _ _ _ _

_

SESIÓN 1

Comprensión tecnológica Mostrar constancia en el trabajoU� lizar - Comprender

Capacidad Ac� tudDestreza

Evaluándonos

1. Indicar escribir verdadero (V) o falso (F)

Y luego marcar la alternativa correcta

a) FVFFV b) FFVVF c) VVFFVd) VFVFV e) VVVVV

2. Relacione las siguientes columnas según crea conveniente en:

a) ID-IIA-IIIE-IVB-VC b) ID-IIC-IIIE-IVB-VA c) IE-IIC-IIID-IVB-VAd) IE-IIA-IIID-IVB-VC e) IA-IIE-IIIB-IVD-VC

3. Enumere las características que deben de tener las variables en un lenguaje de programación

A) Una de las grandes necesidades en el mundo actual es el procesamiento de grandes cantidades de datos.

( )

B) El diseño de soluciones a la medida de nuestros problemas, requiere como en otras disciplinas una metodología.

( )

C) A las soluciones de problemas creadas por computadora se les conoce como programas.

( )

D) Todo programa necesita de datos para que de esta forma se puedan realizar los requerimientos que el programa así lo exige.

( )

E) Toda variable posee un nombre que la identifi ca. ( )

I. Variable Numérica A) Sirve para llevar la suma acumulativa.

II. Variables Lógicas B) Se utilizan para llevar el control del número de ocasiones en que se realiza una operación.

III. Variables Alfanuméricas C) Son aquellas que solo pueden tener dos valores (verdadero o falso).

IV. Contadores D) Son aquellas en las cuales se almacenan valores numéricos.

V. Acumuladores E) Esta formada por caracteres alfanuméricos.

1.

2.

3.

4.

5.

Page 12: APRENDIENDO PROGRAMACION

4. Describa brevemente y dé un ejemplo de los tipos de operadores

A. Operadores

Ejemplo:

B. Operadores

Ejemplo:

C. Operadores

Ejemplo:

5. Escribir el nombre y uso de los principales símbolos utilizados en los algoritmos.

Símbolo Nombre y uso