31.12.2014 Views

LÓGICA DE PROGRAMACIÓN Grupo SOCRATES

LÓGICA DE PROGRAMACIÓN Grupo SOCRATES

LÓGICA DE PROGRAMACIÓN Grupo SOCRATES

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>LÓGICA</strong> <strong>DE</strong> <strong>PROGRAMACIÓN</strong><br />

<strong>Grupo</strong> <strong>SOCRATES</strong><br />

Universidad de Córdoba, Colombia.


UNIDAD <strong>DE</strong> APRENDIZAJE II<br />

ELEMENTOS BÁSICOS <strong>DE</strong> LA <strong>PROGRAMACIÓN</strong><br />

TABLA <strong>DE</strong> CONTENIDO<br />

1.1 ELEMENTOS BÁSICOS <strong>DE</strong> LA <strong>PROGRAMACIÓN</strong> .................................. 3<br />

1.2 Objetivos ........................................................................................................... 3<br />

1.3 Estrategias pedagógicas o actividades de aprendizaje ..................................... 3<br />

1.4 Recursos de aprendizaje ................................................................................... 3<br />

1.5 Tipos de datos ................................................................................................... 3<br />

1.5.1 Numéricos ................................................................................................. 3<br />

1.5.2 Alfanuméricos .......................................................................................... 4<br />

1.5.3 Lógicos ..................................................................................................... 4<br />

1.5.4 Ejemplo ..................................................................................................... 4<br />

1.5.5 Auto evaluación ........................................................................................ 5<br />

1.6 Constantes ......................................................................................................... 5<br />

1.6.1 Ejemplo ..................................................................................................... 5<br />

1.6.2 Auto evaluación ........................................................................................ 5<br />

1.7 Variables ........................................................................................................... 6<br />

1.7.1 Ejemplo ..................................................................................................... 6<br />

1.7.2 Auto evaluación ........................................................................................ 6<br />

1.8 Asignación ........................................................................................................ 6<br />

1.8.1 Ejemplo ..................................................................................................... 6<br />

1.8.2 Auto evaluación ........................................................................................ 7<br />

1.9 Expresiones Aritméticas ................................................................................... 7<br />

1.9.1 Operadores Aritméticos ............................................................................ 7<br />

1.9.2 Operadores lógicos ................................................................................... 7<br />

1.9.3 Operadores Relaciónales .......................................................................... 7<br />

1.9.4 Auto evaluación ........................................................................................ 8<br />

1.10 Estructura de un programa ................................................................................ 8<br />

1.10.1 Ejemplo ..................................................................................................... 9<br />

1.10.2 Auto evaluación ........................................................................................ 9<br />

No se debe usar variables auxiliares, solo declarar las variables a y b ......................... 9<br />

1.11 Sentencias de Escritura y Lectura ..................................................................... 9<br />

1.11.1 Escritura .................................................................................................... 9<br />

1.11.2 Lectura .................................................................................................... 10<br />

1.11.3 Auto evaluación ...................................................................................... 10<br />

1.12 Evaluación ...................................................................................................... 10


1.1 ELEMENTOS BÁSICOS <strong>DE</strong> LA <strong>PROGRAMACIÓN</strong><br />

1.2 Objetivos<br />

El alumno conocerá, utilizará y aplicará los elementos básicos para la solución<br />

de un problema:<br />

o Elementos básicos de la programación.<br />

o Correcta aplicación de los tipos de datos.<br />

o Fases del proceso de la Programación.<br />

o Aplicación de operadores dentro de un programa<br />

o Construcción de la estructura de un algoritmo<br />

1.3 Estrategias pedagógicas o actividades de aprendizaje<br />

- Presentación de trabajos.<br />

- Sesión de Chat.<br />

- Sesión Foro.<br />

- Videoconferencia<br />

- Encuentro presencial<br />

1.4 Recursos de aprendizaje<br />

- concepto_algoritmo.pdf<br />

- conceptos_basicos_metodoligia_programacion.pdf<br />

- tipos_datos2.pdf<br />

- tipos_datos.pdf<br />

- direcciones_unidad_dos.doc<br />

- entidades_primitivas_dello_algoritmos.doc<br />

- constante.swf<br />

- datos_primitivos.swf<br />

- expresiones.swf<br />

- variable.swf<br />

- conceptos_basicos_web.ppt<br />

1.5 Tipos de datos<br />

cuando se requiere de procesamiento de información, podemos encontrar distintos<br />

tipos de datos que requieren ser procesados y estos se clasifican en Numéricos,<br />

Alfanuméricos y Lógicos.<br />

1.5.1 Numéricos<br />

Son datos cuyo contenido es una serie de dígitos (0-9) que proporcionan un valor<br />

numérico, precedidos por un signo positivo (+) o negativo (-). Con ellos podemos<br />

realizar operaciones aritméticas o de conteo. Ej.: 253, 45.3, -32.5, 1, 8, etc. Estos<br />

pueden ser: Enteros o Reales.<br />

Enteros: Subconjunto finito de los números enteros, cuyo rango o tamaño depende<br />

del lenguaje de programación en el codifiquemos el algoritmo.


Reales: Subconjunto de números reales limitado no solo en cuanto el tamaño, sino<br />

también en cuanto a su precisión.<br />

Tipos numéricos<br />

Nombre<br />

Rango<br />

(Desde…Hasta)<br />

Formato<br />

Entero -32.768 a 32.767 Entero con signo<br />

Real 2,9E-39 a 1,7E38 11 - 12<br />

1.5.2 Alfanuméricos<br />

Son datos cuyo contenido son letras del abecedario. Números o caracteres<br />

especiales, o bien una combinación de ellos. Aunque estos datos pueden<br />

contener números, no pueden ser usados para realizar operaciones<br />

aritméticas. Cuando se hace referencia a este tipo de datos se deben encerrar<br />

entre comillas sencillas o apóstrofes.<br />

Ej.: ‘B/ Santa María Cll. 107 No.70-25’; ‘Ivan Benítez’; ‘16-12-03’; ‘07/08/2003’<br />

Estos pueden ser: Carácter y Cadena.<br />

Caracter: Conjunto finito y ordenado de los caracteres que la computadora<br />

reconoce. Puede contener un solo carácter especificado entre apóstrofes.<br />

Ej.:<br />

‘A’ ‘a’ ‘1’ ‘9’ ‘#’ ‘@’ ‘’ ‘0’ ‘_’<br />

‘.’ ‘*’ ‘+’ ‘z’<br />

Cadena: Una cadena es una secuencia de caracteres que tiene una<br />

longitud máxima de 255 caracteres. Los caracteres que componen la<br />

cadena se delimitan con apóstrofes.<br />

Ej: ‘Apartadó’ ‘12653’ ‘02/05/2003’<br />

‘Cr. 1d-5’ ‘H<br />

2<br />

O’<br />

1.5.3 Lógicos<br />

Lógicos: Conjunto formado por valores de Verdad y Falsedad (V y F). Se<br />

utilizan para comprobar condiciones. Ej.: 10 > 5 4 = 3 85 < 230<br />

5 15 3 >= 0<br />

1.5.4 Ejemplo<br />

3,14159 Real<br />

198.752 Entero<br />

Hola a todos<br />

Cadena


¡, ”, $, &, /, (, ), =, , ¡ Caracter<br />

5 A<br />

j) ‘45,1x<br />

10 − A<br />

’<br />

k) ‘B’<br />

l) ‘T’ = ‘F’<br />

1.6 Constantes<br />

Es un dato cuyo valor no cambia durante todo el desarrollo del algoritmo o programa.<br />

1. Declaración de Constantes:<br />

Lenguaje Algorítmico<br />

1. Palabra Reservada: Constante<br />

2. Nombre (Cualquiera)<br />

3. Signo igual (=)<br />

4. Valor que va a contener y (;)<br />

1.6.1 Ejemplo<br />

Lenguaje Algorítmico<br />

Ejemplos:<br />

Constantes<br />

N = 5; Iva = 16; Saludo = ‘Hola’;<br />

1.6.2 Auto evaluación<br />

Determine el tipo de dato de las siguientes constantes<br />

Constante<br />

Tipo de dato<br />

6,5<br />

7<br />

Hola, somos 7 amigos<br />

#<br />

verdadero


1.7 Variables<br />

Es un dato cuyo valor puede cambiar durante el desarrollo del algoritmo o<br />

programa.<br />

Declaración de Variables :<br />

Lenguaje Algorítmico<br />

1. Palabra Reservada: Variable<br />

2. Nombre (Cualquiera)<br />

3. Dos Puntos (:)<br />

4. Tipo de dato y (;)<br />

1.7.1 Ejemplo<br />

Lenguaje Algorítmico<br />

Ejemplos:<br />

Variables<br />

N: Entero; Iva: Real; Saludo: Cadena;<br />

1.7.2 Auto evaluación<br />

- Desarrolle tres encabezados de declaración donde utilice constantes y<br />

variables<br />

1.8 Asignación<br />

Es el proceso mediante el cual le damos o asignamos un valor determinado a<br />

una variable en el desarrollo de un algoritmo o programa. La forma de usarla<br />

depende de la sintaxis que maneje el lenguaje de programación con el cual se<br />

este trabajando. Para nuestro caso la asignación se da así:<br />

Lenguaje Algorítmico<br />

1. Nombre de la Variable.<br />

2. Los signos (←).<br />

3. Valor a asignar. (Este depende del tipo de dato<br />

que sea la variable). Y (;)<br />

1.8.1 Ejemplo<br />

Lenguaje Algorítmico<br />

Ejemplos:<br />

A 12;<br />

B ‘hola’;


C<br />

5+A;<br />

1.8.2 Auto evaluación<br />

- Desarrolle tres cuerpos del algoritmo donde utilice las variables y<br />

constantes anteriores, asígneles valores dependiendo de su tipo<br />

1.9 Expresiones Aritméticas<br />

Conjunto de operadores y operandos que producen un valor<br />

1.9.1 Operadores Aritméticos<br />

- permiten realizar operaciones aritméticas entre operandos.<br />

Operador<br />

^<br />

Función<br />

Potenciación<br />

* Multiplicación<br />

/ División<br />

Div<br />

Mod<br />

División (Arroja la parte entera del Cociente).<br />

División (Arroja el Residuo).<br />

+ Suma.<br />

- Resta.<br />

1.9.2 Operadores lógicos<br />

Permiten realizar operaciones lógicas de conjunción, disyunción y negación. Su<br />

valor obtenido puede ser V (verdad) o F (falso).<br />

Operador<br />

NOT<br />

AND<br />

OR<br />

Función<br />

Negación<br />

Conjunción<br />

Disyunción<br />

1.9.3 Operadores Relaciónales<br />

Permiten comparar dos valores, sean numéricos o alfanuméricos (no los dos a la<br />

vez). El resultado obtenido es un valor de verdad, que puede ser V (verdad) o F<br />

(falso).<br />

Operador<br />

Función<br />

= Igual que<br />

Diferente que<br />

< Menor que<br />

> Mayor que<br />

= Mayor o igual que


1.9.4 Auto evaluación<br />

algorítmicas:<br />

1). Escriba las siguientes expresiones aritméticas en forma de expresiones<br />

M<br />

a. + 4<br />

N<br />

N<br />

b. M +<br />

P − Q<br />

c.<br />

2<br />

M + N<br />

P − Q<br />

d.<br />

N<br />

P +<br />

D<br />

R<br />

Q −<br />

S<br />

2). ¿Qué valor toman las variables A y B después de la ejecución de las<br />

siguientes asignaciones<br />

Asignación Valor de A y B<br />

1) A 5;<br />

2) B A + 6;<br />

3) A A + 5;<br />

4) B A – 5;<br />

5) A B;<br />

6) B A;<br />

3). Se tienen tres variables A, B y C. Escribir las instrucciones necesarias para que<br />

tomen valores del modo siguiente:<br />

1) B tome el valor de A.<br />

2) C tome el valor de B.<br />

3) A tome el valor de C;<br />

4) C tome el valor de A más B.<br />

4). Se tienen dos valores D y E cualquiera, Escribir las instrucciones necesarias<br />

para que<br />

tomen valores del modo siguiente:<br />

5) D tome el valor de E.<br />

6) E tome el valor de D.<br />

1.10 Estructura de un programa<br />

1. Programa Nombre_que_deseé;<br />

2. Constantes (Constantes si las hay)<br />

3. Variables (Variables si las hay)<br />

Son cada una de las ordenes o pasos que<br />

van a llevar a resolver el problema<br />

(Ejecutar el programa).


4. Inicio<br />

5. Sentencias o Instrucciones;<br />

6. Fin.<br />

1.10.1 Ejemplo<br />

Programa sumar_numeros<br />

Variables sum, num1, num2:entero;<br />

Inicio<br />

Num1 0;<br />

Num2 0;<br />

Escriba(‘digite el valor del primer numero’);<br />

Lea(num1);<br />

Escriba(‘digite el valor del segundo numero’);<br />

Lea(num2);<br />

Sum Num1+Num2;<br />

Escriba(‘El valor la suma es ’, sum);<br />

Fin.<br />

1.10.2 Auto evaluación<br />

Desarrolle un programa que permita:<br />

Acciones<br />

Obtener el valor de A y B A 10<br />

B 50<br />

Luego pase el valor de B hacia A A 50<br />

Y de A hacia B B 10<br />

Ejemplo<br />

No se debe usar variables auxiliares, solo declarar las variables a y b<br />

1.11 Sentencias de Escritura y Lectura<br />

1.11.1 Escritura<br />

- Esta sentencia es: escriba permite mostrar, como salida en la pantalla<br />

mensajes, constantes y variables de cualquier tipo de dato. Ej.: Programa<br />

que permite manejar la sentencia de escritura:<br />

Programa Escritura;<br />

Constantes<br />

M = ’Hola’;<br />

Variables<br />

N:Real;<br />

Inicio<br />

N:= 113;<br />

Escriba (M);<br />

Escriba ('Valor de la variable n es: ’,N);


Fin.<br />

Escriba (‘Prueba de Escritura’);<br />

1.11.2 Lectura<br />

Esta sentencia es: Read o Readln, permite leer desde pantalla la entrada de<br />

datos que el usuario transmite a variables de cualquier tipo. Ej.: Programa que<br />

permite manejar la sentencia de lectura:<br />

Programa Lectura;<br />

Variable<br />

N:Real;<br />

Inicio<br />

Escriba(’Digite un número real’);<br />

Lea(N);<br />

Escriba ('Valor de la variable N es: ’,N);<br />

Fin.<br />

1.11.3 Auto evaluación<br />

- Desarrolle un algoritmo que lea 3 números y calcule por lo menos 3<br />

múltiplos de cada uno. Muestre todos los datos.<br />

1.12 Evaluación<br />

1. Resolver los siguientes problemas (Algoritmo codificado en Pascal):<br />

a. Elabore un algoritmo que pida dos números y muestre la multiplicación.<br />

b. Elabore un algoritmo que muestre el cuadrado de un número.<br />

c. Elabore un algoritmo que averigüé el área de un triangulo.<br />

d. Elabore un algoritmo que averigüe el área de un círculo.<br />

e. Elabore un algoritmo que averigüé cual es el salario de un trabajador, teniendo en cuenta el<br />

valor por hora y numero de horas trabajadas.<br />

f. Elabore un algoritmo que resuelva la siguiente ecuación: Y = 2x + 10.<br />

g. Elabore un algoritmo que imprima su nombre, edad y sexo.<br />

h. Desarrolle un algoritmo que le permita hallar el perímetro de un rectángulo.<br />

i. Desarrolle un algoritmo que lea un número negativo, e imprima el número positivo del<br />

mismo.<br />

j. Desarrolle un algoritmo que permita calcular la función f(x) = X2 + X + 5.<br />

k. Elabore un algoritmo para intercambiar el valor de dos variables de tipo entero, es decir, el<br />

valor de una variable A debe pasar a B y el valor de una variable B debe pasar a la variable<br />

B. Sin necesidad de utilizar una tercera variable.<br />

l. Diseñe un algoritmo que permita determinar el área y el perímetro de un rectángulo<br />

cualquiera. Perímetro = (Lado1 x 2)+( Lado2 x 2) y Área = Lado1 x Lado2.<br />

m. Realice un algoritmo que obtenga el promedio de edades de tres (3) personas.<br />

n. Suponga que una persona decide invertir su capital en un banco y desea saber cuánto<br />

dinero ganará después de un mes si el banco le paga un interés del 2% mensual. Elabore el<br />

algoritmo que permita determinar la ganancia mensual que obtendrá la persona.<br />

o. Un supermercado ofrece un descuento del 15% sobre el total de la compra realizada por un<br />

cliente. Desarrolle un algoritmo que determine cuánto deberá pagar finalmente un cliente<br />

por su compra.


p. Elabore un algoritmo que permita a un alumno saber cuál será su calificación final en la<br />

asignatura de Lógica de Programación. Dicha calificación se compone de los siguientes<br />

porcentajes:<br />

o 55% del promedio de sus tres calificaciones parciales.<br />

o 30% de la calificación del examen final.<br />

o 15% de la calificación de un trabajo final.<br />

q. Desarrolle un algoritmo, que dada una cantidad en pesos, obtenga su equivalente en<br />

dólares, asumiendo que la unidad cambiaria es un dato desconocido.<br />

r. La presión, el volumen y la temperatura de una masa de aire se relacionan por la fórmula:<br />

Masa =(presión x Volumen) / (0.37 x (Temperatura + 460)). Obtener la masa de aire de un<br />

neumático de automóvil que tiene un volumen de 2 pies cúbicos y una presión y<br />

temperatura indeterminadas.<br />

s. Diseñe un algoritmo que permita calcular el nuevo salario de un obrero si obtuvo un<br />

incremento del 25% sobre su salario anterior.<br />

t. El dueño de una tienda compra un artículo a un precio determinado. Elabore un algoritmo,<br />

que le permita obtener el precio en que lo debe vender para obtener una ganancia del<br />

30%.<br />

2. Diga cual de las siguientes<br />

instrucciones es correcta.<br />

VARIABLE<br />

A : ENTERO;<br />

C : ENTERO;<br />

X : CA<strong>DE</strong>NA;<br />

M : BOOLEANO;<br />

INICIO<br />

A 5<br />

C 10<br />

A A * C;<br />

C ‘HOLA’;<br />

A C;<br />

M VERDA<strong>DE</strong>RO;<br />

FIN.<br />

3. Diga cual es el error en el siguiente<br />

código.<br />

Programa Prueba;<br />

VARIABLES<br />

A : ENTERO;<br />

C: CARACTER;<br />

S : CA<strong>DE</strong>NA;<br />

inicio<br />

A 10;<br />

C ‘A’;<br />

S ‘hola’;<br />

C S;<br />

fin.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!