• No se han encontrado resultados

INTRODUCCIÓNYCONCEPTOS-ALGORITMOS

N/A
N/A
Protected

Academic year: 2020

Share "INTRODUCCIÓNYCONCEPTOS-ALGORITMOS"

Copied!
58
0
0

Texto completo

(1)

ALGORITMOS

CONCEPTOS BÁSICOS

(2)

CONCEPTOS BÁSICOS

Un algoritmo es un método para resolver

paso a paso un problema.

(3)

CONCEPTOS BÁSICOS

El término (Algoritmo) se popularizó con

el advenimiento de la era informática.

Se hizo necesaria la solución de

problemas paso a paso..

Todo esto para utilizar la computadora

(4)

CONCEPTOS BÁSICOS

El lenguaje utilizado en los algoritmos se

asemeja al nuestro y a su vez se aproxima al

lenguaje de programación.

En nuestro lenguaje se estructuran los

(5)

CONCEPTOS BÁSICOS

Introducción a los Algoritmos

El ser humano está permanentemente resolviendo

problemas:

Cuando vamos a pagar servicios. (banco con menos gente, o la

atención sea más rápida)

Cuando vamos al médico (encontrar desocupado al médico de

nuestra confianza)

(6)

CONCEPTOS BÁSICOS

Introducción a los Algoritmos

A medida que vayamos encontrando

(7)

CONCEPTOS BÁSICOS

Concepto de Algoritmo

(8)

CONCEPTOS BÁSICOS

Ejemplos de Algoritmo

Realizar una llamada desde un teléfono

publico.

Preparar una tortilla de huevo.

Problemas de tipo matemático como:

(9)

CONCEPTOS BÁSICOS

Ejemplo: Algoritmo para cambiar un bombillo fundido

1. Inicio

2. Colocar la escalera debajo del bombillo fundido.

3. Elegir un bombillo nuevo de una potencia adecuada.

4. Subir por la escalera hasta alcanzar el bombillo fundido.

5. Girar el bombillo fundido hacia la izquierda hasta que esté suelto.

6. Ubicar el bombillo nuevo en el mismo lugar.

7. Darle la vuelta hacia la derecha hasta que quede ajustado.

8. Bajar de la escalera.

9. Fin

(10)

CONCEPTOS BÁSICOS

Características de un algoritmo

Ser preciso

poseer una serie de pasos

definidos claramente y en orden lógico.

Estar bien definido

después de

suministrar un conjunto de datos idénticos

se deben obtener los mismos resultados.

(11)

CONCEPTOS BÁSICOS

Tipos de Algoritmos

Algoritmos cualitativos

son todos aquellos

pasos o instrucciones (descritos por medio de

palabras y variables) ordenados y lógicos que

nos llevan a la realización de una actividad o

tarea o a la solución de un problema --

generalmente no involucran cálculos numéricos.

(12)

CONCEPTOS BÁSICOS

Ejemplo: (algoritmo cualitativo)

Un cliente realiza un pedido en una

fábrica. La fábrica examina en su banco de

datos la ficha del cliente:

si

el cliente es

solvente entonces la empresa acepta el

pedido, en caso contrario, lo rechaza.

El algoritmo correspondiente es el

(13)

CONCEPTOS BÁSICOS

El algoritmo para una de las soluciones es:

1. Inicio

2. Leer el pedido

3. Examinar ficha del cliente

4. Si el cliente es solvente aceptar pedido,

en caso contrario rechazar pedido.

(14)

CONCEPTOS BÁSICOS

Tipos de Algoritmos

Algoritmos cuantitativos

son una serie de pasos

o instrucciones ordenados y lógicos que nos llevan a

la solución de un problema o a la obtención de una

respuesta;

normalmente

involucran

cálculos

numéricos de manera explícita.

Ejemplo:

Hallar el valor de la variable Y sabiendo

que

Y = X² + X – 3

(15)

CONCEPTOS BÁSICOS

Ejercicio:

Algoritmo para resolver la siguiente ecuación

matemática:

F = M * 7 – X

Una de las soluciones es:

1. Inicio

2. Debemos conocer o asignarle un valor a M.

3. Debemos conocer o asignarle un valor a X.

4. Realizar las operaciones M * 7 y al resultado restarle el valor

de X, luego guardar el valor resultante en la variable F o sea F =

M * 7 – X

(16)

Ejercicios de refuerzo

Escribir los algoritmos para:

Preparar un arroz blanco

Hallar el valor de Y sabiendo que:

(17)

2. Variable

En primer lugar se debe entender cómo se almacena la

información y los datos en las memorias.

En el siguiente gráfico observamos que contiene

información sobre cada uno de los estudiantes de la

universidad:

ARCHIVO DATOS

CAMPOS

(18)

2. Variable

Podemos ver que la información se almacena como un

ARCHIVO

que se identifica con un nombre (para este

ejemplo

DATOS

)

El archivo está dividido en una serie de partes

llamadas

REGISTROS

(para nuestro caso es donde se

guarda la información correspondiente a un

estudiante)

A su vez, cada registro se subdivide en partes menores

a las que se denominan

CAMPOS

(que es donde

realmente se almacena la información del estudiante)

También debemos notar que los campos tienen unos

(19)

2. Variable

En el ejemplo encontramos tres variables:

COD, NOM,

SEM

, que han sido definidas para guardar el código, el

nombre y el semestre, respectivamente, de cada uno

de los alumnos.

Ya podemos suponer que aunque se utilicen las

(20)

2. Variable

La variable se asigna básicamente con los

siguientes propósitos:

Almacenar o dejar la información en el campo.

Visualizar, mirar o accesar aquello que se

encuentra en el campo.

Entonces,

qué es

una

variable

?

(21)

2.1 Partes de una variable

Consta básicamente de

dos partes

:

Nombre

Valor o contenido

Ejemplo: COD = 5500022

(22)

2.1 Partes de una variable

Qué es entonces el

nombre

de una

variable

?

Respuesta:

es el conjunto de caracteres: letras,

números y caracteres especiales aceptados, con los

cuales se identifica el contenido de un campo en un

momento determinado.

Qué es el

valor o contenido

de una

variable

?

(23)

2.2 Normas para definir variables

Son normas que se sugiere seguir para la asignación de

nombres de variables, estas son:

En lo posible el nombre debe comenzar por una letra.

El nombre debe ser mnemotécnico (o sea que esté

relacionado con su contenido).

El nombre no debe exceder de 8 caracteres.

No deben existir espacios entre las letras del nombre.

No debe poseer caracteres especiales, excepto los

(24)

2.2 Normas para definir variables

Ejemplo de variables correctamente definidas

(nombres):

TOT

CODIGO

codigo

COD

Cod

men100f nombre

NOMBRE

NOM

(25)

2.3 Normas para la asignación del contenido a

una variable

Si el

contenido

es un carácter o una cadena

de caracteres, éste debe asignarse entre

comillas

sencillas o dobles, según sea el

lenguaje que se está utilizando.

Las variables no tienen restricciones en

(26)

2.3 Normas para la asignación del contenido a

una variable

Ejemplos:

TOT = 235438

Sueldo = 500000

cod = 5500012

S1_X = -87.5

C = ‘$’

CARACT = ‘9C’

R = ‘*’

(27)

Ejercicios

De los siguientes ejercicios, cuáles son correctos, cuáles

incorrectos y porque?

1. $1C = -34

2. RM10P = ‘HOLA’

3. 12TOT1 = 2349

4. 1 tot = ‘234’

5. Tot1 = 378000

6. nom = ‘carlos julio’

7. R$ = 25700

8. R1 = 230876

9. R1_jkl = El libro es para principiantes

10.234 = P

(28)

3. TIPOS DE DATOS

Los más utilizados son:

3.1 Datos Numéricos

. Dentro de estos tenemos los

enteros y los reales.

a. Los enteros

(integer) son números que pueden

estar precedidos del signo + o del signo – y no

tienen parte decimal. Ejm: -24, 35, 281, 9, -1.

b. Los reales

(real) pueden estar precedidos del

(29)

3. TIPOS DE DATOS

3.2 Datos alfanuméricos

. Son datos cuyo contenido puede ser

un carácter o una cadena o sucesión de caracteres.

Inicialmente recordemos lo que es un caracter:

a. Caracter

(character = caracter): es cualquier letra (

A

a la

Z

o

a

a la

z

), número (0 al 9) o signo(#, $, - , %, etc. ). Ejm:

‘a’, ‘8’, ‘%’, ‘-’, etc.

Características:

Para que sea dato de tipo carácter debe estar formado por

solo uno de ellos.

Se debe delimitar o encerrar entre comillas, normalmente

(30)

3. TIPOS DE DATOS

b. Cadena de caracteres (string):

es decir, una sucesión

de caracteres:

Ejemplos:

‘HOLA CÓMO ESTÁS?’

‘Cra. 7 No. 54-35’

‘ABC’

‘726’

Características:

Para que sea dato de tipo cadena de caracteres

debe estar formado por dos o más de ellos.

Se debe delimitar o encerrar entre comillas,

(31)

3. TIPOS DE DATOS

3.3 Datos Lógicos o booleanos (boolean).

Son

datos que solo pueden tomar dos valores

(verdadero [

true

] o falso [

false

]).

Ejemplo:

Pregunta si

A > B

?; si el valor de A es mayor

(32)

3. TIPOS DE DATOS

Existen otros tipos de datos como:

3.4 Datos tipo subserie

Sucesión de caracteres, conocidos como datos

subserie. Ejm: ‘a’..’f’

Significa que la subserie de caracteres comienza

en a y termina en f.

3.5 Datos tipo enumerado

3.6 Datos tipo ordinal

(33)

4. CONSTANTE

‘Recordar el concepto de variable’

Constante

es el nombre que se le da a un campo en

una memoria cuyo contenido no cambia o varía a

través de un proceso.

Ejemplos:

C = 27

Sim = ‘*’

R1X = -34.789

Si el contenido no cambia, así pasemos muchas veces por

ellas, serán constantes.

El nombre de las constantes se asignan teniendo en cuenta las mismas normas para la

(34)

5. Expresión Aritmética o Algebraica

Es el conjunto de variables y/o constantes

unidas por operadores aritméticos.

Ejemplos:

1. Y = X³ + X² + 6

2. TOTAL = SB + HEX - DES

Variable

Variable

Constante

Var. o Const.

Var. o Const.

(35)

6. Operador

El

operador

se define como: símbolo o palabra

que permite formular operaciones, establecer

relaciones y hacer comparaciones de tipo

lógico y matemático.

También podemos decir que el operador

es un

símbolo

o palabra que significa que se ha de

(36)

6.1 Tipos de operadores

Existen tres tipos de operadores:

Operadores aritméticos.

Operadores de relación (relacionales).

Operadores Lógicos

6.1.1 Operadores aritméticos

. Se utilizan para

(37)

6.1 Tipos de operadores

OPERADOR

DESCRIPCIÓN

+

Suma o adición

-

Resta o sustracción

*

Multiplicación

/

División

** , ^

Exponenciación o

potenciación

div

División entera

mod

Módulo o residuo

(38)

6.1 Tipos de operadores

Los operadores se utilizan de igual forma que en

matemáticas y debemos acostumbrarnos a

utilizarlos como se indican aquí ya que de es forma

los reconocen todos los sistemas automatizados.

Por ejemplo:

X.Y

debemos escribirlo como

X*Y

.

Nota:

Tener en cuenta como se codifican los

operadores aritméticos en determinados lenguajes

o paquetes.

Por ejemplo

: el operador de exponenciación utilizado

(39)

Jerarquía de Operaciones:

La jerarquía para los operadores aritméticos se

da en el siguiente orden:

1. Operador exponencial: (** , ^)

2. Operadores de multiplicación y división: (* , / )

3. Operadores de suma y resta: ( + , - )

4. Operaciones de división entera y residuo:

(div , mod)

Nota: Si los operadores están en el mismo nivel de

jerarquía, las operaciones se realizan de

(40)

Uso de paréntesis:

Cuando una expresión aritmética posee

paréntesis, se deben tener en cuenta los

siguientes parámetros:

El computador ejecuta primero las operaciones

que estén dentro del paréntesis ().

Si existen varios pares de paréntesis, comienza

a realizar las operaciones por el más interno

hasta llegar al externo.

Dentro de cada paréntesis se sigue la jerarquía

(41)

6.1 Tipos de operadores

6.1.2 Operadores lógicos:

Se utilizan para crear las

expresiones lógicas o booleanas.

Una expresión lógica o booleana es una expresión que

solo pude tomar uno de dos valores, falso (

false

)

o

verdadero (

true

).

OPERADOR

DESCRIPCIÓN

AND

Para indicar Y

(Debe cumplir las dos condiciones)

OR

Para indicar O

(Debe cumplir una de las dos condiciones)

NOT

Para indicar NO (Negar)

(42)

6.1 Tipos de operadores

Ejemplo:

Pregunta si (A + B) AND (E + F) son mayores que M.

Para que sea verdadera debe cumplir las dos (2) condiciones:

La primera que (A + B) sea mayor que M.

La segunda que (E + F) sea también mayor que el valor de

M.

La jerarquía de estos operadores viene establecida así:

1. El operador NOT

2. El operador AND

3. El operador OR

Nota:

Los operadores lógicos se ejecutan de izquierda a derecha

(43)

6.1 Tipos de operadores

6.1.3 Operadores de relación.

También se utilizan para crear

expresiones lógicas o booleanas y para formular los

interrogantes o preguntas, y son los siguientes:

OPERADOR

DESCRIPCIÓN

>

Indica mayor que

<

Indica menor que

=

Indica igual a

> =

Indica mayor o igual a

< =

Indica menor o igual a

< >

Indica diferente, distinto o no igual

(44)

Ejemplo de operadores

Pregunta si

R + K > = F

. Nos está preguntando si la suma de

R + K

es mayor o igual al valor de F. Vemos que puede tomar cualquiera

de los dos (2) caminos que nos proporcionan las expresiones

lógicas (falso y verdadero); si cumple la condición (ser > = F)

tomará el camino de verdadero, de lo contrario se irá por falso.

Nota:

Se pueden utilizar en conjunto los tres (3) tipos de operadores

para crear expresiones complejas.

Los paréntesis se pueden utilizar y tienen prioridad sobre

cualquier operación.

(45)

Ejemplo de expresión compleja:

Pregunta: si ( X

+

Y )

AND

( W

T )

> =

TOT entonces….

Op. Arit.

Op. Lóg.

Op. Arit.

(46)

7. Diagramación

Es el arte de diseñar diagramas con pasos

lógicos y que lleven a la solución gráfica de

un problema.

En la diagramación encontramos varios tipos

de diseños, por ejemplo: están los

diagramas

de transición

, los

diagramas de bloques

, los

(47)

7.1 Diagrama de flujo

(48)

7.1.1 Simbología utilizada en los diagramas de flujo

REPRESENTACIÓN DEL

SÍMBOLO EXPLICACIÓN DEL SÍMBOLO

Símbolo utilizado para marcar el inicio y el fin del diagrama de flujo.

Símbolo utilizado para asignar los datos de entrada. Indica lectura.

Normalmente se usa para asignar datos de entrada por teclado.

Símbolo utilizado para representar un proceso. Dentro de él podemos expresar asignaciones, operaciones aritméticas, etc.

(49)

7.1.1 Simbología utilizada en los diagramas de flujo

REPRESENTACIÓN DEL

SÍMBOLO EXPLICACIÓN DEL SÍMBOLO

Símbolo para representar una iteración o repetición controlada. En su interior se deja indicado el número de repeticiones a ejecutar. Símbolo para representar una decisión múltiple. Dentro del símbolo encontramos un selector o variable de selección, que permite seguir por uno de los caminos alternativos dependiendo del valor del selector.

Símbolo utilizado para representar la información de una salida o resultado. Indica impresión o escritura en papel.

(50)

7.1.1 Simbología utilizada en los diagramas de flujo

REPRESENTACIÓN DEL

SÍMBOLO EXPLICACIÓN DEL SÍMBOLO

Símbolo utilizado para indicar almacenamiento o lectura de acceso secuencial. Especialmente se utiliza para indicar almacenamiento o lectura en cinta magnética.

Símbolo utilizado para indicar impresión en pantalla.

Símbolo utilizado para representar almacenamiento o lectura de datos en diskette.

(51)

7.1.1 Simbología utilizada en los diagramas de flujo

REPRESENTACIÓN DEL

SÍMBOLO EXPLICACIÓN DEL SÍMBOLO

Símbolo utilizado para indicar conexión dentro de una misma página. Se sugiere colocarle un número en forma ascendente. Se conoce con el nombre de conector en la misma página.

Símbolo utilizado para indicar conexión entre páginas diferentes. Se sugiere colocarle una letra en mayúscula en forma ascendente. Se conoce como conector en otra página.

Nota:

(52)

Ejemplo de conectores:

D =

‘CONTINUAR?’

A D

TOT

2

1 Inicio

F

F < 8

TOT =F+3 TOT =F-2

1

2

(53)

Ejemplo de conectores:

Podemos observar que el conector 1 está indicando

continuación del diagrama y el conector 2 indica que si

la condición se cumple debe devolverse al comienzo del

diagrama;

Si la condición no se cumple debe continuar en lapágina

siguiente; allí el diagrama debe comenzar con el

conector en otra página

igual al que posee el caracter A

indicando continuación de la página anterior.

El uso de conectores es funcional y muy útil cuando los

(54)

7.2 Pasos en la construcción de un diagrama de flujo

RESULTADO (S) INICIO

LACTURA (S)

PROCESO (S)

FIN

(55)

7.3 Normas para la construcción de diagramas

Para la construcción de diagramas de flujo se deben

tener en cuanta las siguientes normas:

a. Todo diagrama de flujo debe tener un

inicio

y un

fin

.

b. Las líneas utilizadas para indicar la dirección de flujo

del diagrama son rectas, verticales y horizontales (no

deben ser inclinadas ni cruzadas).

c. Todas las líneas utilizadas para indicar la dirección de

flujo del diagrama deben estar conectadas.

(56)

7.3 Normas para la construcción de diagramas

e. La notación utilizada en el diagrama debe ser

independiente

del lenguaje de programación.

f. Si el diagrama de flujo requiere de más de una

hoja para su construcción debemos utilizar los

conectores

adecuados y enumerar las páginas

consecutivamente.

g. No puede salir más de una línea de un mismo

símbolo, excepto del bloque de decisión.

h. En

programación estructurada

cada diagrama y

(57)

Ejemplo

Z, X, B, A INICIO

A, B, X, Z

FIN

Construya un diagrama de flujo que lea el valor de las variables A, B, X, Z que representan números enteros y escríbalos en orden inverso:

Se leen los datos o valores.

Se imprimen o escriben en orden inverso.

(58)

BIBLIOGRAFÍA

CARO PINEDA, Silvina. Lógica de Programación y Algoritmos. Centro

de Investigaciones para el Desarrollo “CIPADE”. Tunja. 2003

Llorens Largo, Faraón.

Programación: formalización: de algoritmos

matemáticos, análisis y reutilización.

España: Digitalia - Universidad

de

Alicante,

2009.

p

2.

Referencias

Documento similar

A partir de los resultados de este análisis en los que la entrevistadora es la protagonista frente a los entrevistados, la información política veraz, que se supone que

- Fase Visual: Color rojo cereza. Puede presentar un pequeño precipitado de sales tartáricas o de polifenoles polimerizados. - Fase Olfativa: Aroma limpio y complejo, donde destaca

Esta corriente dentro de la arquitectura, registra al Diseño como herramienta fundamental para mejorar la sustentabilidad en el hábitat.. Es más abarcativa que la corriente

Pero cuando vio a Mar sacar el fuego de bajo su ala, voló de vuelta a su tribu a contarles lo que había visto.... Justo antes de que el sol saliera, Tatkanna se despertó y comenzó

o esperar la resolución expresa&#34; (artículo 94 de la Ley de procedimiento administrativo). Luego si opta por esperar la resolución expresa, todo queda supeditado a que se

- Un curso formativo para los técnicos de laboratorio de la UPV sobre la prevención de los residuos en los laboratorios, que se llevará a cabo los días 23, 24, 25, 26 y 27

El interesado podrá acudir ante el señor Personero Municipal o a la Defensoría del Pueblo para que se le colabore en la elaboración de su demanda o petición, así como en los

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en