Elaborado por: Lic. Janneth Antonieta Lazarte Pérez. janlazarte@usalesiana.edu.bo.

Post on 25-Jan-2016

232 views 0 download

Transcript of Elaborado por: Lic. Janneth Antonieta Lazarte Pérez. janlazarte@usalesiana.edu.bo.

Elaborado por: Lic. Janneth Antonieta Lazarte Pérez.janlazarte@usalesiana.edu.bo

Computadora Dato Tipos de datos Identificadores Variables, Constantes Operadores, Expresiones Ejercicios

Una computadora es una máquina electrónica digital capaz de procesar información y producir datos de salida para lo cual requiere de ciertos datos de entrada, esta compuesta por dos elementos fundamentales:

Software. Hardware

Hardware: es la parte físicade la computadora, esaquello que podemos ver ytocar Software: es la parte lógicade la computadora

Dispositivos de entrada/salida

Memoria Auxiliar

CPU

Unidad Aritmética-lógica

Unidad de Control

Memoria Principal

Numéricos (enteros, reales)

Simples Alfanuméricos (string)

Lógicos (verdad o falso)

Tipos de

Datos Arreglos (Vectores, Matrices)

Estructurados Registros

Archivos

Apuntadores

Los datos son los objetos de información sobre los que actúa un programa.

Un dato puede ser un simple carácter como 'a', un valor entero tal como 35, un número real tal como 2.345 o una cadena tal como "algoritmia". 

Todos los datos tienen un tipo asociado con ellos

Identificador: es un nombre que puede darse a una variable, a una constante y en general a cualquier elemento de un programa que necesite nombrarse, sirve para identificar una posición en la memoria de la computadora.

Ejemplo NombreNum_hrsCalif2

Una Variable es una localización en la memoria principal que almacena un dato que puede cambiar a lo largo de la ejecución del programa. Una variable tiene asociada dos cosas fundamentales: un identificador y un tipo de dato

Ejemplo variable enteraVariable real

Edad 27

Descuento 23.57

Se denominan constantes a todos aquellos valores que no cambian durante la ejecución de un programa.

Constantes enteras 12, 20300, 15, etc.Constantes reales 3.1416, 2345.456, etc.Constantes de carácter 'a', 'B', ';', '<', '+', etc.Constantes de cadena "Hola", “programación", etc.Constantes lógicas verdadero, falso

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

a+(b + 3)/c

Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en:

Aritméticas Relaciónales Lógicas

Los Operandos son valores constantes o variables

Los Operadores son elementos que relacionan de forma diferente los valores de una o mas variables y/o constantes. Es decir, los operadores nos permiten manipular valores

Operador Significado

+ Suma- Resta

* Multiplicación

/ División

ModResiduo de división entera

^ Exponenciación

Operador

Significado> mayor

>=mayor o igual que

< menor<=

menor o igual que

igual a<> diferente de

Operador Significado

no (not) negación

y (and) conjunción

o (or) disyunción

Operadores Aritméticos Operadores Relacionales

Operadores Lógicos

Tablas de Verdad de los operadores Not, And, Or

Operador Prioridad

( ) No es operador

^ Exponenciación

*, /, Mod Div Multiplicación División Residuo

+, - Suma Resta

>,>=,<,<=,,<>

Mayor, mayor o igual, menor, menor o igual, igual a, diferente de

not, and, or Negación, conjunción, disyunción

p qp and

qV V V

V F F

F V F

F F F

p q p or q

V V V

V F V

F V V

F F F

p not p

V F

F V

Expresar las siguientes condiciones como expresiones lógicas:

a) B es mayor que 2.b) M es menor ó igual que 5 pero mayor que 25.c) P es igual a 6 ó mayor que Q.d) N es menor que 50.e) M es mayor que A, B y C.f) Z esta en el intervalo de 4 a 100.g) T es igual a 2, 3 ó 4.

Evaluar las siguientes expresiones:

4 + 5 * (10 - 6) / 2 + 3 ^ 4 =

8 + 3 * (25 - (2 + 4)) =

Sea: a = 10, b = 12, c = 13, d =10

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

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

not (a = c) and (c > b) =

a.  B > 2 b.  ( M <= 5 ) y ( M > 25 ) c.  ( P = 6 ) o ( P > Q ) d.  N < 50 e.  ( M > A ) y ( M > B ) y ( M > C ) f.  ( Z >= 4 ) y ( Z <= 100 ) g. ( T = 2 ) o ( T = 3 ) o ( T= 4)

= 95 = 65

= F = F = V

Evaluar las siguientes expresiones:

La instrucción de asignación se utiliza para asignar valores a variables o, lo que es igual, cambiar el valor almacenado en la posición de memoria de una variable.

La operación de asignación se denota con el símbolo

El formato de la instrucción de asignación es: A 5 significa que a la variable A se le asigna el valor 5

1. Cuales son los valores de A,B y C después de la ejecución de las siguientes operaciones?

A 3 B 4 C A + 2 * 8 C C + B B C - A A B * C

• programaprograma

F1: Fase de Resolución del ProblemaF2: Fase de Implementación en la Computadora

-Herramientas

de Programación

Análisis del Problema

Verificación Manual del Algoritmo

Diseño delAlgoritmo

Resolución del

Problema

- Definición del Problema

- Datos de Entrada- Datos de Salida

- Hacer para- Hacer mientras- Repetir hasta

- DFD-

Pseudocódigo

- Chapin

El objetivo de esta fase es ayudar al programador a comprender la naturaleza del problema, para lo cual éste requiere el máximo de su imaginación y creatividad. Para esto se debe identificar claramente que tipo de información se necesita producir, y luego aquellos elementos dados en el problema que pueden ser útiles para obtener la solución.

  Ejemplo: Leer dos números y calcular su suma.  Análisis del Problema

 Variables de entrada A : número real B : número real

 Variables de salida S : suma de los números A y B, número real

En la etapa de Análisis se determina QUE hará el programa, mientras que en la etapa de Diseño se determina COMO hará el programa la tarea solicitada.

 

Un Algoritmo es un conjunto ordenado y finito de pasos o instrucciones que conducen a la solución de un problema

Características de un Algoritmo Preciso – indicar el orden de realización Definido – no debe permitir dobles interpretaciones, no ambiguo Finito – debe tener un número finito de instrucciones, terminar General – soportar la mayoría de las variantes Efectivo – ser capaz de resolver el problema planteado

Tipos de AlgoritmosCualitativosCuantitativos

Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras.

Ejemplo: Algoritmo para cocinar un huevo duro. Inicio

P1. Llenar la olla con aguaP2. Encender el fuego de la cocinaP3. Poner la olla al fuegoP4. Esperar hasta que hierva el aguaP5. Introducir el huevo en la ollaP6. Esperar 10 minutosP7. Apagar el fuegoP8. Vaciar el aguaP9. Sacar el huevo de la olla

Fin

Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos.

Ejemplo: Algoritmo para sumar dos números.

InicioP1. Leer (A,B)P2. C A + BP3. Escribir ( C )

Fin

Las herramientas utilizadas comúnmente para diseñar algoritmos son:

◦ Diagramas de Flujo

◦ Pseudocódigo

◦ Diagrama Estructurado (Nassi-Schneiderman)

Es la representación grafica de un algoritmo

Esta representación grafica se da cuando varios símbolos se relacionan entre si mediante líneas que indican el orden en que se deben ejecutar los procesos

Proceso

VF

Leer

Proceso

Proceso

Escribir

Fin

Decisión

Inicio

Representa el INICIO “C” y el FINAL “fin” del de un programa

Representa la ENTRADA/SALIDA de datos desde o hacia cualquier periférico de entrada o salida

Representa PROCESO, se utiliza para realizar cualquier tipo de operación que pueda originar cambios de valores en las variables, pueden ser operaciones aritméticas, de transferencia, etc.

Representa DECISION, se utiliza para indicar operaciones lógicas o de comparación entre datos, dependiendo del resultado cual de los caminos alternativos a seguir.

CONECTOR, se utiliza para enlazar dos partes cualesquiera de un diagrama de flujo en la misma página

CONECTOR, se utiliza para enlazar dos partes cualesquiera de un diagrama de flujo en diferentes páginas.

LINEAS DE FLUJO, indican el sentido de ejecución de las operaciones. (flujo de la información)

LINEA CONECTORA, se utiliza para unir dos símbolos

Se utiliza para realizar llamadas a subprogramas

IMPRESORA, se utiliza para enviar datos a la impresora

PANTALLA, se utiliza para mostrar los resultados por pantalla

Símbolo utilizado para representar una decisión múltiple.

Dependiendo del valor de la expresión se sigue una de las ramas o caminos alternativos.

v1 v2 vn

Expresión óExpresión ó VariableVariable

Acción 1Acción 1 Acción 2Acción 2 Acción NAcción N

Usar solamente líneas de flujo horizontales y/o verticales.

Evitar el cruce de líneas Usar conectores solo cuando sea necesario. No deben quedar líneas de flujo sin conectar Se deben trazar los símbolos de manera que se

puedan leer de arriba hacia abajo y de izquierda a derecha.

Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un problema determinado

Mezcla de lenguaje de programación y español (o ingles o cualquier otro idioma) que se emplea, dentro de la programación estructurada, para realizar el diseño de un programa

EspañolInicioFinLeerEscrbirSi-entonces-sinoDesdeMientrasRepetir – hasta

InglesBeginEndReadWriteIf - Then- ElseForWhileRepeat-Until

Identación

Si (x < 5) Entonces y n *x

Sino y n/5

Fin-si

Sin Identación

Si (x < 5) Entonces y n *x Sinoy n/5 Fin-si

El diagrama estructurado N-S también conocido como diagrama de chapín es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas.

Las acciones sucesivas se pueden escribir en cajas sucesivas y como en los diagramas de flujo

Estructura secuencial

Estructura Condicional

Si – Entonces – Sino

(If –Then-Else)

Estructura

Según sea

(Case)

Condición V

Acciones

F

Acciones

Expresión

Accio

nes

23

4Otros

Accio

nes

Accio

nes

Acciones

Acciones

1

Estructura desde (For)Desde <contador>

Acciones

Vi a Vf (Paso p)

Mientras <condición>

Acciones

Repetir hasta <cond>

Acciones

Estructura Mientras (While)

Estructura Repetir – Hasta (Repeat - Until)

Programación Estructurada es un conjunto de técnicas para desarrollar programas fáciles de escribir, verificar, leer y mantener

Razones por las que se utiliza la programación estructurada

◦ Permite una fácil comprensión del programa◦ Permite ahorrar el número de instrucciones del programa◦ Permite una fácil modificación de las instrucciones del programa◦ Permite un fácil mantenimiento del programa

Estas estructuras se clasifican de acuerdo con su complejidad en:

- Asignación- Entrada- Salida

- Simples (If-Then)

- Dobles (If-Then-Else)- Múltiples (Case)

- Para/Desde (For)

- Mientras (While)

- Repetir Hasta (Repeat- Until)

Secuenciales

Cíclicas oRepetitivas

Condicionales

EstructuraAlgorítmicas

La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia

Una estructura secuencial se representa de la siguiente forma:

Inicio

Accion1 Accion2 . . AccionN

Fin

CondiciónCondición

Ejecuta una determinada acción cuando se cumple una determinada condición. La selección if – then (si – entonces) evalúa la condición y si es verdadera ejecuta la acción o las acciones de lo contrario no hará nada

 

Acción AAcción A

Acción BAcción B

sisi (Condición) (Condición) entoncesentonces Acción AAcción A Acción BAcción Bfin_sifin_si

VVFF

CondiciónCondición

Permite elegir entre dos opciones posibles en función del cumplimiento o no de una determinada condición. Si la condición es verdadera, se ejecuta la acción A -o conjunto de acciones- y si es falsa, se ejecuta la acción 1 –o conjunto de acciones.

 

Acción AAcción A

Acción BAcción B

SiSi (Condición) (Condición) EntoncesEntonces Acción AAcción A Acción BAcción B SinoSino Acción 1Acción 1 Acción 2Acción 2fin_sifin_si

Acción 1Acción 1

Acción 2Acción 2

VVFF

CondiciónCondición

Permite elegir entre dos opciones posibles en función del cumplimiento o no de una determinada condición. Si la condición es verdadera, se ejecuta la acción A -o conjunto de acciones- y si es falsa, se ejecuta la acción 1 –o conjunto de acciones.

 

Acción AAcción A

Acción BAcción B

SiSi (Condición) (Condición) EntoncesEntonces Acción AAcción A Acción BAcción B SinoSino Acción 1Acción 1 Acción 2Acción 2fin_sifin_si

Acción 1Acción 1

Acción 2Acción 2

VVFF

VariableVariable

La estructura de selección múltiple evaluará una expresión que podrá tomar n valores distintos 1, 2, 3, 4, …..n. Según que elija uno de estos valores en la condición, se realizará una de las n acciones.

 

……………….. Acción NAcción NAcción 1Acción 1 Acción 2Acción 2= op1= op1 = op2= op2 = op N= op N

según_seasegún_sea variable variable hacerhacer op1: acción1op1: acción1 op2: acción2op2: acción2 .. .. opn: acción Nopn: acción N sinosino: acciónX: acciónXfin_segúnfin_según

  

  

PseudocódigoPseudocódigo   InicioInicio

Leer A, BLeer A, BLeer swLeer swsegún_seasegún_sea sw sw hacerhacer1: c 1: c A + B A + B Mostrar cMostrar c2: c 2: c A – B A – B Mostrar cMostrar c3: c 3: c A * B A * B Mostrar cMostrar c4: 4: sisi B <> 0 B <> 0 entoncesentonces

C C A / B A / BMostrar CMostrar C

si_nosi_no Mostrar “b debe ser Mostrar “b debe ser distinto de cero”distinto de cero” fin_sifin_sisi_nosi_no: Mostrar “valor : Mostrar “valor ingresado debe estar ingresado debe estar entre 1 y 4”entre 1 y 4”fin_segúnfin_según

FinFin

i

var var vi , vf, inc vi , vf, inc

AccionesAcciones

Para Para var var vi vi hastahasta vf [inc/dec] valor vf [inc/dec] valor hacerhaceracción1acción1acción2acción2

fin_parafin_para

EjemploEjemplo Mostrar los N primeros números naturales. Mostrar los N primeros números naturales.  Diagrama de FlujoDiagrama de Flujo

PseudocódigoPseudocódigo  InicioInicio

Leer NLeer Nparapara i i 1 1 hastahasta N N hacerhacer

Mostrar iMostrar ifin_parafin_para

FinFin

Símbolo utilizado para representar una estructura repetitiva.

Mientras la condición se cumpla realizar las acciones

CONDICIÓNCONDICIÓN

AccionesAcciones

i

CondiciónCondición

Acción AAcción A

Acción BAcción B

VV

FF

VV

FF

Ejemplo Mostrar los N primeros números naturales.

PseudocódigoPseudocódigo  InicioInicio

Leer NLeer Ni i 1 1mientrasmientras i <= N i <= N hacerhacer

Mostrar iMostrar ii i i + 1 i + 1

fin_mientrasfin_mientrasFinFin

Símbolo utilizado para representar una estructura repetitiva.

Repetir las acciones hasta que la condición se cumpla

CONDICIÓNCONDICIÓN

AccionesAcciones

CondiciónCondición

Acción AAcción A

Acción BAcción B

VV

FF

FF

VV

Ejemplo Mostrar los N primeros números naturales.

PseudocódigoPseudocódigo  InicioInicio

repetirrepetirLeer NLeer N

hasta_quehasta_que (N > 0) (N > 0)i i 1 1repetirrepetir

Mostrar iMostrar ii i i + 1 i + 1

hasta_quehasta_que (i > N) (i > N)FinFin