Sunteți pe pagina 1din 20

Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 1




Contenido conceptuales

Describe los operadores, las asignaciones y lectura y escritura de
datos. Desarrolla casos con el uso de expresiones.

Temas

Uso de Expresiones: Definicin
Clasificacin de la Expresiones:
E. Aritmticos (+, -, *, /, ^ ), Jerarqua.
E. Lgicas (operadores de relacin <,>,<=,>=,!=,= )
E. Conectores (y & ) (o - | )
E. Carcter (Alfabticos y Alfanumricos)
Operadores Div y Mod
Operacin de Asignacin(Aritmtica, Lgica y Carcter)
Salida y Entrada de Datos.
Ejercicios de Manejo de Expresiones.


Contenido actitudinales

Participa activamente en clase en el modo deductivo e
inductivo Asertividad y disposicin para el trabajo colaborativo.
Respeta las ideas de los dems
Toma decisiones frente a un problema.



















SESION
1
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 2

Introduccin a las Herramientas de Programacin

El objetivo de esta semana es familiarizar al alumno con el diseo de algoritmos para la resolucin
de problemas por computadora. Requiere l uso de una notacin que sea entendida por ella, es
decir, un lenguaje de programacin. No obstante, durante la fase de diseo del programa, la
utilizacin de un lenguaje as no es aconsejable debido a su rigidez.

Adems de la utilizacin de las representaciones grficas un programa puede describirse mediante
un lenguaje intermedio entre el lenguaje natural y el lenguaje de programacin, de tal manera que
permita flexibilidad para expresar las acciones que se han de realizar y. sin embargo. Imponga
algunas limitaciones, importantes desde el punto de vista de su posterior codificacin en un
lenguaje de programacin determinado.

Al igual que las otras tcnicas, la utilizacin de una notacin intermedia permite el diseo del
programa sin depender de ningn lenguaje de programacin y es despus del diseo, cuando se
codificar el algoritmo obtenido en aquel lenguaje que nos interese.

Por lo tanto debemos de aprender a manejar distintas expresiones dentro de un lenguaje de
programacin y es por ello que conoceremos lo siguiente:


Expresiones

Es la representacin de un clculo necesario para la obtencin de un resultado.

Ejemplos:

Son datos:

11
Angie
SISE

Son clculos:

S=4+3
R=4-3
D=4/3
M=4*3

Tipos de Expresiones:

Aritmticos (su resultado es un nmero): potencia, * , / , mod, div, + , -
Relacionales (su resultado es un valor de verdad): =, <, >, <=, >=, <>
Lgicos o Booleanos (su resultado es un valor de verdad): not, and, or
Alfanumricos : + (concatenacin)

Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 3

Asociativos. El nico operador asociativo es el parntesis ( ), el cual permite indicar en qu orden
deben realizarse las operaciones. Cuando una expresin se encuentra entre parntesis, indica que
las operaciones que estn dentro de ellos deben realizarse primero. Si en una expresin se utilizan
ms de un parntesis se deber proceder primero con los que se encuentren ms hacia el centro de
la expresin.

Ejemplos de Expresiones Aritmticas:

6 = 6 ^ (1/2)

6
2
= 6^2

28+29*14
2
= 28+29*(14^2)

Jerarqua de Operaciones:

( )
Potencia
Producto
Divisin
Div y Mod
Suma
resta
Concatenacin
Relacionales
Negacin
And
Or

Datos de tipo entero tienen los operadores +, -, *, /, div, mod, abs, sqr, sqrt, ln, exp, sin, cos, tan,
pow, etc. Los datos de tipo real tienen los mismos operadores enteros y adems trunc, round, int, y
otros. La suma y multiplicacin de datos de tipo real cumplen la propiedad conmutativa, pero no
siempre la asociativa y la distributiva.

Para resolver una expresin aritmtica se deben seguir las siguientes reglas:

Primero se resuelven las expresiones que se encuentran entre parntesis.
Luego se procede aplicando la jerarqua de operadores.
Al evaluar una expresin, si hay dos operadores con la misma jerarqua, se procede a
evaluar de izquierda a derecha.
Si hay expresiones relacionales, se resuelven primero parntesis, luego se encuentran los
valores de verdad de las expresiones relacionales y por ltimo se aplica jerarqua de
operadores lgicos. En caso de haber iguales, proceder de izquierda a derecha.





Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 4

EJERCICIOS.

Establecer las expresiones matemticas a expresiones algortmicas.

678
4
=



81
2
9+3
3
=

(81 +6
3
)
2
=



Hallar el resultado de esta expresin segn la jerarqua de operadores.

4 + 1 * 5 ^ 2 1 =

9 / 3 + 4 ^ 2 5 * 1 + 9 / -2 + 3 =

5 / 2 + 3 4 * 5 / 2 =

(4 + 1) * 5 ^ 2 1 =

17 / 2 + 3 ^ 2 ^ 2 2 * 2 / 2 =

Mencione los valores que puedan tener:

Donde:

N1=5
N2=2
N3=1

Y=N1+N3
Z=Y+N2
Cul es el valor de Z?

Z=___

U=N3*2
Q=U/2+N1
T=Q^0
Cul es el valor de T?

T=____


Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 5

Operadores DIV y MOD

El smbolo / se utiliza para la divisin Decimal; por lo tanto para poder obtener el cociente y el
residuo se deber de utilizar el operador div para el cociente y el mod para el residuo. Por ejemplo
en JAVA se utiliza el smbolo / para el cociente pero la variable debe ser de tipo int para poder
obtener el cociente y l % para obtener el residuo.

Ejemplos usando DIV:

Y= 15 div 3 Y toma el valor 5.

Otro ejemplo puede ser la divisin 15/6 de esta manera se obtendr toda la divisin exacta solo si
este es de tipo decimal; es por ello que el tipo de dato de Y debe ser entero, para solo darnos el
resultado 5 que es el cociente de la divisin.

Otros ejemplos con Div:

A= 20 div 5 A toma el valor 4
Q= 15 div 2 Q toma el valor 7
V= 51 div 7 V toma el valor 7

Ejemplos usando MOD:

H= 15 mod 3 H toma el valor 0
A= 20 mod 5 A toma el valor 0
Q= 15 mod 2 Q toma el valor 1
V= 51 mod 7 V toma el valor 2


Estos operadores los podrs utilizar tambin para la descomposicin de nmeros, como por ejemplo
en el cual quisieras realizar la suma de las cifras del nmero, preguntar si es par o quizs si el nmero
es capica.












Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 6

Resuelva los siguientes Ejercicios aplicando la jerarqua de operadores

Obtener el valor de cada una de las siguientes expresiones aritmticas:

17 div 2
17 mod 2
12 div 5
l2 div 3
10 mod 3
15 mod 6
7*10-50 mod 3*2+9
(7*(10-3) mod 2)*4+9

NOTA: Considrese jerarqua de operadores.

Encontrar el valor de cada una de las siguientes expresiones o decir si no es una expresin vlida:

9-5-3
20 div 3+3 / 5
9 div 2 / 5
9 mod 5 mod 3
7 mod (5 mod 4)
(7 mod 5) div 3
(7 div 5 mod 3)
((12+3) div 2) / (8-(5+1))
12/2*3

NOTA: Considrese jerarqua de operadores.












Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 7

Asignacin de Datos

La instruccin de asignacin se usa para asignar valores a variables utilizando la igualdad (=).

La expresin podr ser un valor fijo o un clculo.

En el caso de ser un dato de tipo carcter este estar entre comillas , solo en este caso. Ejemplo:

A=2
Edad=33
Palabra=SISE
Prom=(a+b+c)/3
Raiz=(5^(1/3))
Direccion=Mz B4 - Lt4

Seccin de Declaracin de Datos (Variables Constantes).

Seccin de Variable

Las variables son zonas de memoria cuyo contenido cambia durante la fase de procesamiento de
informacin. Son objetos cuyo valor puede ser modificado a lo largo de la ejecucin de un programa.
Ejemplos:

Nombres
Fecha_Nac
Apellidos
Direccion
Edades
Dni
Telefonos

Como declarar una Variable

Tipo de Dato: Identificador

Ejemplos:

Carcter: Nombres
Carcter: Apellidos
Entero: Edad
Decimal: Promedio
Lgico: Bandera
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 8

Seccin Constantes (Literales)

Son objetos cuyo valor permanece invariable a lo largo de la ejecucin de un programa. Una
constante es la denominacin de un valor concreto, de tal forma que se utiliza su nombre cada vez
que se necesita referenciarlo.

Como declarar una Constante

Identificador=Valor

Ejemplos:

Instituto=SISE
Mes_Aniv=Noviembre
Edad=25
Igv=0.19
Existe_Codigo=verdadero

Resuelva los siguientes Ejercicios

Defina el tipo de dato que corresponda a cada identificador:

_____________ Promedios
_____________ Edades
_____________ Ao de Nacimiento
_____________ Correo electrnico

Define tus propios valores para los siguientes Literales (Contantes):

Codigo ____________________
Direccion ____________________
Telefono ____________________
Peso ____________________
Talla ____________________
Estado_Civil ____________________








Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 9

Otros propuestos

Estos nombres de variable son vlidos

Edad
fechaNacimiento
jugador1
Igv
vidasRestantes

Estos otros nombres no son vlidos

2jugadores (No empieza por una letra)
ao (Contiene la )
elPatioDeMiCasaEsParticularYCuandoLlueveSeMoja (Muy Largo)
puntuacin (Lleva acento)

Mencione 15 Identificadores (datos) que pueda tener un estudiante.

1) ___________________

2) ___________________

3) ___________________

4) ___________________

5) ___________________

6) ___________________

7) ___________________

8) ___________________

9) ___________________

10) ___________________

11) ___________________

12) ___________________

13) ___________________

14) ___________________

15) ___________________
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 10


Contenido conceptuales

Conoce procedimientos para armar un algoritmo Aplica algoritmos
cotidianos.

Temas

Estructura general de un programa
Definicin de Algoritmos y Caractersticas
Ejemplos de Algoritmos.
Uso de Herramientas de Desarrollo de Algoritmos
Comparacin entre los diagramas de flujos y D.NS
(Definicin y uso de smbolos)
Pseudocdigo: Definicin
Estructura del Pseudocdigo
Definicin de sus partes
Objetivo de Programa
Seccin de Declaracin: Variables - Constantes.
Estilo de escritura (Datos, Procesos, Salidas).
Pseudocodificacin de Programas: Ejemplos aplicando el anlisis y
diseo
Propuesta de Ejercicios.


Contenido actitudinales

Participa activamente en clase Asertividad y disposicin para el
trabajo colaborativo.
Respeta las ideas de los dems
Toma decisiones frente a un problema.
Mantiene un orden para el desarrollo de sus algoritmos.











SESION
2
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 11

Estructura General de un Programa

Un programa puede considerarse como una secuencia lgica de acciones (instrucciones) que
manipulan un conjunto de objetos (datos) para obtener unos resultados que sern la solucin al
problema que resuelve dicho programa.

Todo programa en general contiene dos bloques bien diferenciados tales como:

Bloque de declaraciones. En l se especifican todos los objetos que utiliza el programa
(constantes, variables, tablas, registros. archivos, etc.) indicando sus caractersticas. Este
bloque se encuentra localizado siempre por delante del comienzo de las acciones.

Bloque de instrucciones. Constituido por el conjunto de operaciones que se han de realizar
para la obtencin de tos resultados deseados.

Los procesos que se pueden llevar a cabo en un programa pueden ser de tipo aritmtico o lgico,
incluyndose algunas operaciones de manejo de caracteres y operaciones de entrada salida.
Las partes principales de un programa estn relacionadas con sus dos bloques ya mencionados.

Es por ello que necesitamos realizar algoritmos para encontrar la solucin a problemas
computables.


























Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 12

Algoritmo

Consiste en aplicar adecuadamente una serie de pasos detallados organizados que permite dar
solucin correcta a un problema especfico.

Como se puede apreciar, hay muchas estrategias para solucionar problemas; sin embargo, esta Gua
se enfoca principalmente en la estrategia Algortmica.

Metodologa para construir un algoritmo

Segn Polya (1957), cuando se resuelven problemas, intervienen cuatro operaciones mentales:

1. Definicin del problema (Enunciado)
2. Analizar el problema (Comprender el problema)
3. Diseo del algoritmo (Hacer el plan)
4. Traducir el algoritmo a un lenguaje de programacin (Ejecutar el plan)
5. Depurar el programa (Revisar, Analizar)

1. DEFINICION DEL PROBLEMA.

Se debe establecer claramente el enunciado del problema que se est planteando.

2. COMPRENDER EL PROBLEMA.

Leer el problema varias veces
Establecer los datos del problema
Aclarar lo que se va a resolver (Cul es la pregunta?)
Precisar el resultado que se desea lograr
Determinar la incgnita del problema
Organizar la informacin
Agrupar los datos en categoras
Trazar una figura o diagrama.

3. DISEO DEL ALGORITMO

Escoger y decidir las operaciones a efectuar.
Eliminar los datos intiles.
Descomponer el problema en otros ms pequeos.

4. EJECUTAR EL PLAN (Resolver).

Ejecutar en detalle cada operacin.
Simplificar antes de calcular.

5. ANALIZAR LA SOLUCIN (Revisar).

Dar una respuesta completa
Hallar el mismo resultado de otra manera.
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 13

Lenguajes Algortmicos

I. Simbologa De Los Diagramas De Flujo

El Diagrama de Flujo es una herramienta grfica valiosa para la representacin esquemtica de la
secuencia de instrucciones de un algoritmo o de los pasos de un proceso.

La estandarizacin de los smbolos para la elaboracin de Diagramas de Flujo tard varios aos. Con
el fin de evitar la utilizacin de smbolos diferentes para representar procesos iguales, la
Organizacin Internacional para la Estandarizacin (ISO, por su sigla en ingls) y el Instituto Nacional
Americano de Estandarizacin (ANSI, por su sigla en ingls), estandarizaron los smbolos que mayor
aceptacin tenan en 1985. Los siguientes son los principales smbolos para elaborar Diagramas de
Flujo:


Inicio/Final

Se utiliza para indicar el inicio y el final de un
diagrama; del Inicio slo puede salir una lnea
de flujo y al Final slo debe llegar una lnea.



Entrada General (Paralelogramo)
Entrada/Salida de datos en General



Entrada por teclado (Trapecio)
Instruccin de entrada de datos por teclado.
Indica que el computador debe esperar a que el
usuario teclee un dato que se guardar en una
variable o constante.



Proceso (Rectngulo)
Indica una accin o instruccin general que
debe realizar el computador (cambios de
valores de variables, asignaciones, operaciones
aritmticas, etc).



Decisin (Rombo)
Indica la comparacin de dos datos y
dependiendo del resultado lgico (falso o
verdadero) se toma la decisin de seguir un
camino del diagrama u otro.



Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 14



Iteracin
Indica que una instruccin o grupo de
instrucciones deben ejecutarse varias veces.



Salida Impresa
Indica la presentacin de uno o varios
resultados en forma impresa.



Salida en Pantalla
Instruccin de presentacin de mensajes o
resultados en pantalla.



Conector(Crculo)
Indica el enlace de dos partes de un diagrama
dentro de la misma pgina.



Conector
Indica el enlace de dos partes de un diagrama
en pginas diferentes.



Llamada a subrutina
Indica la llamada a una subrutina o
procedimiento determinado.



II. Pseudocdigo

Es la representacin en forma descriptiva de las operaciones que debe realizar un algoritmo.
Generalmente se escribe en un idioma natural del usuario, es semejante al cdigo fuente de un
lenguaje de programacin.

Estructura de un Pseudocdigo

Encabezado de programa.- Se establece un nombre para el programa
Seccin de Declaracin- Permite establecer las Variables y la Constantes
Cuerpo del Programa.- se establece con la palabra Inicio
Instrucciones.- son acciones o tareas que se establecen como una expresin o una asignacin
de datos.
Termino del programa.- se establece con la palabra Fin
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 15

Caso Prctico 1

I. Definicin del problema

Desarrollar un programa que permita ingresar dos nmeros y los sume.

2. Comprender el problema.

Se debe identificar claramente lo siguiente:

Identificar los datos de entrada que se van a ingresar, en el caso planteado nos pide
dos nmeros que vamos a ingresa dichos nmeros podramos almacenarlo en unas
variables por ejm.

n1= 10
n2= 20

Una vez ingresado los datos, realizaremos el proceso o podra decirse la operacin o
clculo, para el caso propuesto sera la suma.

10 + 20

S = n1 + n2

Una vez realizado el proceso y obtenido el resultado almacenado en la variable S,
pasaramos a mostrar el resultado.

Conclusin

ENTRADA PROCESO SALIDA
N1=10
N2=20
S=N1+N2 S









Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 16

3. Diseo del Algoritmo

Diagrama de Flujo


















Pseudocdigo


Proceso suma_de_2_numeros

Definir n1, n2, S como entero

Escribir Ingrese el primer nmero:
Leer n1

Escribir Ingrese el segundo numero:
Leer n2

Escribir la suma es: s

Fin proceso





INICIO
S=N1+N2
LEER N1
LEER N2

FIN
ESCRIBIR S
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 17


Contenido Conceptuales

Realizar diversos ejercicios, aplicando Anlisis, diagramas de flujo,
Pseudocodigo y programacin en NetBeans.

Temas

1. Estructura General de un programa
Estructura Secuencial.
Tipos de Instrucciones :
Instruccin de entrada
Instrucciones de Manejo de Datos
Instruccin de salida de Resultados
Propuesta de Ejercicios usando los pseudocdigos

Contenido actitudinales

Mantiene un orden para el desarrollo de sus algoritmos
Participa activamente en clase Asertividad y disposicin para el
trabajo colaborativo.
Confianza en la elaboracin de sus casos






















SESION
3
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 18

Realizar los siguientes casos con el apoyo del profesor Ricardo Coello Palomino.

1. Desarrollar un programa que permita ingresar dos nmeros y lo sume, reste,
multiplique y divida.

2. Desarrollar un programa que permita calcular el rea de un rectngulo, en funcin
a la siguiente formula: (base * altura)

3. Desarrollar un programa que permita calcular el rea de un tringulo, en funcin a
la siguiente frmula: (base * altura)/2

4. Desarrollar un programa que permita ingresar un nmero, y permita obtener la
divisin de 2 y el residuo.

Tarea Domiciliaria

Realizar los siguientes ejercicios:

1. Desarrollar un programa que permita calcular el rea de un cuadrado, en funcin a
la siguiente formula: (lado* lado)

2. Desarrollar un programa que permita ingresar el nombre del alumno, el curso y tres
notas, se pide hallar el promedio.

3. Desarrollar un programa que permita ingresar una cantidad depositada en un
banco y que calcule la cantidad final despus de aplicarle un 20% de inters.

4. Desarrollar un programa que permita ingresar el nombre del cliente, y la cantidad
depositada en dlares, mostrar la cantidad en soles.

5. Desarrollar un programa que permita ingresar dos nmeros, y como resultado
muestre invertido los nmeros.











Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 19


Contenido conceptuales

Desarrolla casos comerciales teniendo en cuenta la estructura de un
pseudocdigo.

Temas

Pseudocdigos con estructura secuencial.
Uso de entradas, procesos y salidas
El uso de variables y constantes
Desarrollo de Casos prcticos con estructuras secuenciales.

Contenido actitudinales

Mantiene un orden para el desarrollo de sus algoritmos
Participa activamente en clase Asertividad y disposicin para el
trabajo colaborativo.
Confianza en la elaboracin de sus casos


























SESION
4
Fundamentos de Programacin

PROFESOR: Ricardo Coello Palomino 20

Estructuras Secuenciales

La estructura secuencial es aquella en la que una accin (instruccin) sigue a otra en secuencia. Las
tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente
hasta el fin del proceso.

1. Hallar la suma de tres nmeros
2. Mostrar el promedio de 5 notas
3. Mostrar la quinta parte de la suma de 3 nmeros
4. Mostrar la edad de una persona de acuerdo al ao que naci.
5. Dada las horas trabajadas de una persona y el valor por hora. Calcular su salario e imprimirlo
6. Leer el sueldo de tres empleados y aplicarles un aumento del 10, 12 y 15% respectivamente.
7. Programa que pida el precio de un artculo y calcule su valor aplicndole un 19% de IGV.
8. Realiza un programa que pida el valor de 3 artculos y muestre el total la media Aritmtica.
9. Escriba un programa que calcule el rea de un tringulo rectngulo, dada la altura y la base.
A = (b*c)/2
10. Se tiene un monto en soles, deber de mostrarlo en dlares.
11. Convertir una cantidad de metros a centmetros.
12. Elabore un programa que realice la conversin de cm. a pulgadas. Donde 1cm = 0.39737 pulgadas.
Por lo tanto, el usuario proporcionara el dato de N cm. y el programa dir a cuantas pulgadas es
equivalente.
13. Elabore un programa que realice la conversin de pulgadas a cm. Donde 1 cm. = 0.39737 pulgadas.
Por lo tanto, el usuario proporcionara el dato de N pulgadas y el programa dir a cuantos
centmetros equivale.
14. Escribe un programa que lea una cantidad depositada en un banco que calcule la cantidad final
despus de aplicarle un 20% de inters.
15. Un alumno desea saber cul ser su calificacin final en la materia de Lgica Computacional. Dicha
calificacin se compone de tres exmenes parciales cuya ponderacin es de 30%, 30% y 40%.
16. Una farmacia aplica al precio de los remedios el 10% de descuento. Hacer un programa que
ingresado el costo de los medicamentos calcule el descuento y el precio final.
17. Disear un algoritmo que lea cuatro variables y calcule e imprima su producto, suma y media
aritmtica.
18. Suponga que un individuo desea invertir su capital en un banco y desea saber cunto dinero ganar
despus de un mes si el banco paga a razn de 2% mensual. Realiza un programa que calcule dicha
ganancia teniendo como entrada el capital invertido.

S-ar putea să vă placă și