Вы находитесь на странице: 1из 20

Trabajo

ALGORITMOS

Cartilla 1

HECTOR DAVILA

2017

_____________________________________________________________________ 1
Trabajo

TABLA DE CONTENIDO

RESOLUCIN DE PROBLEMS
CONSTRUCCIN DE PROGRAMS
HERRAMIENTAS DE PROGRAMACIN
LOS DATOS Y LAS OPERACIONES BASICAS
DATOS
CONSTANTES
VARIABLES
OPERACIONES ARITMTICAS
EXPRESIONES LGICAS
INSTRUCCIN DE ASIGNACIN
ENTRADA Y SALIDA
CONCEPTO DE PROGRAMA
TIPOS DE INSTRUCCIONES
ELEMENTOS BSICOS EN UN PROGRAMA
CABECERA DEL PROGRAMA
ESTRUCTURAS SECUENCIALES
ESTRUCTURAS DECISIONALES
Seleccin simple
Seleccin compuesta
Seleccin anidada
Seleccin mltiple
ESTRUCTURAS REPETITIVAS
Mientras
Haga mientras

_____________________________________________________________________ 2
Trabajo

Repita hasta

BIBLIOGRAFIA

 EDUARDO ALCALDE. Informtica bsica. Editorial Mc Graw Hill.


 CESAR BECERRA. Algoritmos: conceptos bsicos. Por computador.
 OSVALDO CAIR. Metodologa de la programacin tomo 1. Editorial
Alfaomega.
 SCHRIBER THOMS. Diagramas de flujo. Editorial Limusa.
 BAASE G. Computer algorithms: Introduction to design and analysis. Editorial
Addison Wesley.
 AHO AND ULLMAN. The design and analysis of computer algorithms. Editorial
Addison Wesley.
 WIRTH N. Algorithms + Data structures = Programs. Editorial Prentice Hall.

OBJETIVOS

 Facilitar en el estudiante su capacidad para entender y solucionar problemas


algortmicos.
 Identificar y aplicar las herramientas de programacin para la solucin de
problemas.
 Aprender a diferenciar los diferentes tipos de datos, variables, constantes y
operadores para poder construir programas.
 Entender la jerarqua de los operadores en las diferentes expresiones.

_____________________________________________________________________ 3
Trabajo

RESOLUCIN DE PROBLEMS

Problema
 Asunto por resolver.
 Conjunto de hechos o circunstancias que dificultan la consecucin de algn fin.

Existen muchas clases de problemas como por ejemplo: matemticos,


estadsticos, sentimentales, lgicos, etc.
A continuacin usted encontrara problemas que pretenden despertar la lgica o el
fundamento matemtico para poder ser resueltos.

1. Ordene los nmeros del 1 al 9 en el cuadro, de manera que la suma en las filas,
columnas y diagonal sea igual.

2. Dibuje cuatro segmentos de recta que pasen por todos los puntos, sin despegar
el lpiz del papel y sin repetir segmentos.

. . .
. . .

_____________________________________________________________________ 4
Trabajo

. . .

3. Una botella con su tapa cuesta $ 110. Si la botella cuesta $100 ms que la tapa,
cuanto cuesta la botella?
4. Coloque los signos +, -, *, / entre los nmeros para obtener las igualdades
siguientes:
2 2 2 = 6
3 3 3 = 6
5 5 5 = 6
7 7 7 = 6

5. Cmo se forman 4 cuadros moviendo solo dos lneas?.

6. Cules son los 5 siguientes nmeros de la serie?


0, 1, 1, 2, 3, .....................

7. 17 y 71 son nmeros primos simtricos. Encuentre 3 pares de nmeros primos


simtricos menores que 100.

8. Ordene los nmeros del 1 al 8 de tal manera que dos nmeros consecutivos no
queden unidos en forma horizontal, vertical o diagonal.

_____________________________________________________________________ 5
Trabajo

9. Ordene los nmeros del 1 al 16 en el cuadro, de modo que la suma en las filas,
columnas y diagonal sea igual.

10. Moviendo una lnea convierta esta expresin falsa en una verdadera.

11. Ordene las cifras del 1 al 7 de forma tal su suma sea 100.

12. Utilice ocho veces la cifra ocho (8) y el smbolo + cuantas veces sea necesario
para obtener como respuesta o resultado el valor mil (1000).

13. Cuantas veces aparece el 9 en los naturales entre 1 y 100.

14. En la figura coloque las cifras del 1 al 7 de modo que la suma de cualquiera de
las fila sea el mismo valor.

_____________________________________________________________________ 6
Trabajo

15. Un individuo pesa el doble que su mujer. Ella pesa el doble que su hijo y el
peso total es de 154 kilos. Cuanto pesa cada miembro de la familia.

16. Cada letra representa un nmero primo diferente. Hllelos.


a * b * c = 1001

Para nuestra rea, los sistemas, es fundamental ayudarnos del computador como
herramienta para la resolucin de problemas. Como tal, en la solucin a
problemas, se identifican dos fases:

1. Fase de resolucin del problema


2. Fase de implementacin en la computadora

CONCEPTO DE PROGRAMA
Es un conjunto de instrucciones (ordenes dadas a la mquina) que producirn la
ejecucin de una determinada tarea.
CONSTRUCCIN DE PROGRAMS

Es una tarea difcil y es un proceso creativo


No existen reglas que indiquen como escribir programas

La resolucin de problemas se expresara en algoritmos. Los algoritmos se


definen como un conjunto de pasos en un orden lgico que dan solucin a un

_____________________________________________________________________ 7
Trabajo

problema dado. Toma su nombre del famoso matemtico y astrnomo rabe Al-
khowarizmi.

Para el proceso de diseo de un programa se debe tener en cuenta:


1. Anlisis del problema
2. Diseo del algoritmo
3. Verificacin manual del algoritmo
1. Anlisis del problema: Consiste en examinar cuidadosamente el problema con
el nimo de identificar cuales son las salidas o respuestas.
Se deben tener en cuenta los siguientes aspectos:

a. Definicin del problema


b. Datos de entrada
c. Datos de salida

2. Diseo de algoritmos: Esta fase se da se arranca la construccin del algoritmo


hecho previamente su anlisis.
Se realiza con lo que se denomina diseo descendente. Se inicia identificando las
tareas ms importantes a ser ejecutadas para resolver el problema y disponerlas
en el orden que sern ejecutadas.

Los algoritmos deben cumplir las siguientes caractersticas:

Debe ser preciso


Debe ser definido
Debe ser finito

_____________________________________________________________________ 8
Trabajo

Deben costar de tres partes:

Entrada
Proceso
Salida

3. Verificacin de algoritmos: Sirve para asegurarse que el algoritmo realiza las


tareas para las que se ha diseado y produce el resultado correcto y esperado.
HERRAMIENTAS DE PROGRAMACIN

La conformacin de un algoritmo se puede representar en un diagrama


estructurado en forma de bloques donde se muestran las diferentes tareas que
deben ser ejecutadas y su relacin entre ellas.
Las herramientas de programacin empleadas como lenguajes algortmicos son:

a. Diagramas de flujo
b. Pseudocdigo

a. Diagramas de flujo: Han sido la herramienta de programacin por excelencia.


Son fciles de disear porque el flujo lgico del algoritmo se muestra en un dibujo
en lugar de palabras.

b. Pseudocdigo: Es un lenguaje algortmico similar al espaol o al ingles pero


ms conciso y que permite una redaccin rpida del algoritmo.

Investigar cuales son los elementos utilizados para disear diagramas de flujo.
Entre otros a continuacin se muestran algunos de ellos.

_____________________________________________________________________ 9
Trabajo

LOS DATOS Y LAS OPERACIONES BASICAS

Los algoritmos y programs de computadora, sin importar el lenguaje de


programacin, son diseados para trabajar con datos.

DATOS
Son los objetos sobre los que opera una computadora. Los tipos de datos son los
siguientes:

1. Simples
2. Estructurados
3. Definidos por el usuario

1. Datos simples
Se clasifican en los siguientes tipos:

a. Numricos
b. Lgicos
c. Carcter

_____________________________________________________________________ 10
Trabajo

a. Numricos: Son los que corresponden a los diferentes tipos de nmeros.


 Enteros: Son los nmeros que no tienen decimal y forman parte de
los nmeros enteros. 15, 1548, -365.
 Reales: Son nmeros con parte entera y parte decimal que
pertenecen al conjunto de los nmeros reales. 24.1, 0.2547, -
458.25.

b. Lgicos: Los datos lgicos o bolanos son aquellos que solo pueden tomar dos
valores: verdadero y falso.

c. Carcter: Los datos de tipo carcter son los caracteres que puede interpretar la
computadora: alfabticos, numricos y/o especiales. Los caracteres se organizan
en cadenas. Una cadena es una secuencia o serie de caracteres validos
encerrados entre caracteres especiales denominados delimitadores y que suelen
ser comillas o dobles comillas.

2. Estructurados
Una estructura de datos es una coleccin o conjunto de datos que tienen el mismo
nombre. Los siguientes son los tipos:

Arrays o arreglos
Registros
Archivos

3. Definidos por el usuario o enumerados

_____________________________________________________________________ 11
Trabajo

Son aquellos que conservan un orden, tal que cada elemento tiene sucesor y
predecesor, excepto el primero que no tiene predecesor y el ultimo que no tiene
sucesor.

CONSTANTES
Es un dato que no varia durante la ejecucin de un programa.
Constante entera. Estas son nmeros enteros, que se almacenan en la cantidad
de memoria asignada para almacenar una cifra entera.
Ejemplo: 48 -125
Constante real. Una constante de punto flotante es un nmero escrito en
notacin cientfica o punto decimal.
Ejemplo 51.4E+4 13.78

Constante boolenana. Son aquellas que solo pueden tomar el estado 0 o 1.


Constante carcter. Las constantes de tipo carcter son un carcter escrito entre
comillas.
Ejemplo: 0 D ;
Constante cadena: Las constantes cadena son una cadena de caracteres escrita
entre comillas.
Ejemplo lenguaje ALGORITMOS

Las constantes pueden tomar un nombre con el que se les reconocer a lo largo
del programa.
Ejemplo PI = 3.141592

_____________________________________________________________________ 12
Trabajo

VARIABLES
Son un conjunto de bytes que se identifican con un nombre nico. Pueden cambiar
de valor durante la ejecucin de un programa. Existen restricciones a la hora de
dar nombre a una variable:
Debe comenzar por una letra.
Puede contener solamente letras o nmeros.
Puede contener ms de ocho caracteres pero solamente para su
identificacin, se tienen en cuenta los primeros 8.
El carcter _ puede tratarse como una letra al definir una variable.
Los nombres de las variables no pueden ser palabras reservadas.

En los siguientes ejemplos determine cual identificacin de variable no es correcta,


marque falso o verdadero segn corresponda:

Jlm
Sal_men
Sum32
m-n
else
32sum
_salmen

OPERACIONES ARITMTICAS
Las variables y constantes pueden ser procesadas utilizando operaciones y
funciones adecuadas a sus tipos. A continuacin se muestran las operaciones
aritmticas usuales.

_____________________________________________________________________ 13
Trabajo

Tipo de
Smbolo Operacin Resultado
operando
^ exponenciacin Entero o real Entero o real
* Multiplicacin Entero o real Entero o real
/ Divisin Real Real
+ Suma Entero o real Entero o real
- Resta Entero o real Entero o real
div Divisin entera Entero Entero
mod Residuo de divisin Entero Entero

Prioridad de las operaciones aritmticas


Las expresiones aritmticas que implican ms de un operador pueden ser
evaluadas de diferentes formas, dependiendo del operador que ejecuta primero la
computadora. El orden en que se ejecutan las operaciones depende de la
prioridad o jerarqua de los operadores.

operador orden
^ Mayor
*, /
+, -
Div, mod Menor

Las reglas de prioridad son:


1. La prioridad ms alta es la potenciacin o exponenciacin que se ejecutara
primero.

_____________________________________________________________________ 14
Trabajo

2. Los operadores que tienen igual prioridad se evalan de izquierda a derecha,


cuando coinciden en una operacin aritmtica.
3. Si una expresin contiene subexpresiones encerradas entre parntesis, estas
se evalan primero, utilizando el orden de prioridad. Si existen parntesis
anidados las subexpresiones internas se evalan primero.

Evaluar las siguientes expresiones:

a. 7 * 10 15 mod 3 * 4 + 9

b. ( 7 * ( 10 5 ) mod 3 ) * 4 + 9

c. 5 * ( 75 / 15 ) + 4 * ( 4 1 ) + 2 * ( 7 + 4 )

d. 3 + 2 * ( 18 4 ^ 2 )
Convertir en expresiones numricas los siguientes enunciados:

a. la diferencia entre el producto de 9 y 5, y el cociente de 24 y 4.

b. La suma de 320 y 8, divididos por 8, todo ello dividido por 8

_____________________________________________________________________ 15
Trabajo

EXPRESIONES LGICAS
Son aquellas que pueden tomar dos valores nicamente, verdadero o falso.

Operadores relacionales: Son aquellos que se utilizan para expresar


condiciones.

operador Significado
= Igual
<> Diferente
<= Menor o igual
>= Mayor o igual
> Mayor
< Menor

Operadores lgicos: permiten relaciones lgicas y sirven para representar


condiciones compuestas. Los operadores lgicos son not, and y or.

Tabla de la prioridad en expresiones lgicas y aritmticas.

Orden
Operador
() Mayor
^
*, /
+, -
Div, mod

_____________________________________________________________________ 16
Trabajo

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


Not
And o y
Or u o Menor

Determinar el resultado final en los siguientes ejemplos:


a. no 4 > 6

b. no (z > 14) evaluar cuando z =7 y con z =24

c. (4.5 > x) y (z < x + 7.5) evaluar cuando x = 7 y con z = 5

INSTRUCCIN DE ASIGNACIN
La instruccin de asignacin se utiliza para determinar el estado de una variable o
en su defecto cambiar el valor asignado. Se utiliza el operador = o el smbolo .
El formato de la instruccin de asignacin es:

Nombre de la variable = expresin o valor


O tambin
Nombre de la variable expresin o valor

Se puede utilizar el mismo nombre de variable en ambos lados del operador de


asignacin.

_____________________________________________________________________ 17
Trabajo

Ejemplo: x=x+1
Las instrucciones de asignacin se pueden clasificar segn el tipo de expresin:

Asignacin aritmtica. Las expresiones en las operaciones de asignacin son


aritmticas.
X = 4 + 5.2 +74
sum = sum + 1
Asignacin lgica. La expresin que se evala en la operacin de asignacin es
lgica.
Z=7<5
Y = (4>9) o (5 <= 8)

Asignacin de carcter. La expresin que se evala es de tipo carcter.


N = hola gente

ENTRADA Y SALIDA
Las operaciones que realiza el computador tienen sentido cuando se pueden
ingresar y obtener datos. Estas operaciones se pueden realizar con dispositivos
como teclados, pantallas, impresoras, etc.

Ejercicios:
De acuerdo a la lectura realizada al documento anterior usted estar en capacidad
de realizar y solucionar los siguientes problemas.

a. Entre los siguientes nombres de variables identifique si es valido o no, en caso


de no serlo explique porque.
1. H
2. nombre

_____________________________________________________________________ 18
Trabajo

3. s + nota
4. triple-X
5. sueldos
6. 1A
7. M2D3
8. ano_2005
9. 2005
b. Cual es el resultado de la siguiente expresin:

1. 3 ^ 4 mod 7 * 4 9 ^ 2 / 4 div 8 + 6 / 5
2. 3 * 4 div 7 == 4 * 7 6 or 4 9 ^ 2 > 4 and 8 + 6 / 5 < 7 3 ^ 3
3. IVA * IVA 4 * TASA * PVP cuando las variables toman los siguientes
valores: IVA = 7 TASA = 3 PVP = 2
4. a + 7 * c / b + 2 * a + 2 * b cuando las variables toman los siguientes
valores: a=3 b=6 c=4
5. 15 mod 3 * 8 div 2 + 4 mod 2
6. 21 mod 6 div 4 * 5 + 6 8
7. (20 div 4 ) * 4 + (6 + (9 mod 3 ) )
8. (11 mod 3 ) div ( ( 2 mod 4) * 3 ) + 6

c. Cual de las sentencias de asignacin no es correcta?. Por que?

1. a + b = a + b
2. salario salario + 1
3. cuenta = 45000
4. b - 18 = b
5. k k 4

_____________________________________________________________________ 19
Trabajo

6. 5 m
7. suma = nota1 + nota2
8. p + 5 14
d. Escribir las sentencias de asignacin que presentan cada una de las siguientes
tareas:

1. Asignar el valor de 10 a la variable nota


2. Asignar el valor de x a la variable sum_nota
3. Incrementar el valor de la variable sum en 5
4. Asignar la suma de la variables precio e IVA a total
5. Disminuir el valor de la variable resta en el valor de la variable incremento

e. Escribir las siguientes expresiones matemticas en forma de expresiones


algortmicas:

1. m_ + 1
n
2. m + n__
p-q
3. m + n
p-q
4. m + n_
p__
q - r_
s
5. ( m + n ) p_
q

_____________________________________________________________________ 20

Вам также может понравиться