56
ESCUELA: Ciencias de la Computación NOMBRES METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I PERíODO : Ing. Danilo Jaramillo H Abril – Agosto 2009 1

Metodologia Y Tecnologia De La Programacion I

Embed Size (px)

DESCRIPTION

Arreglos de una dimensión (vector)Arreglos de dos dimensiones o matricesArreglos multidimensionales

Citation preview

Page 1: Metodologia Y Tecnologia De La Programacion I

ESCUELA: Ciencias de la Computación

NOMBRES

METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I

PERíODO:

Ing. Danilo Jaramillo H

Abril – Agosto 2009

1

Page 2: Metodologia Y Tecnologia De La Programacion I

2

INDICACIONES

Ingreso a campus y contestar los foros, revisar ejercicios.

Importancia de realizar las evaluaciones a distancia Foros (EVA) 2 puntos Parte objetiva 2 puntos Parte de ensayo 2 puntos

Evaluación Presencial parte objetiva 8 puntos parte ensayo 6 puntos

Page 3: Metodologia Y Tecnologia De La Programacion I

3

INDICACIONES

Uso de sangrías. Poner encabezados Resolver en pseudo-código Entender que es lo que se pide en los

ejercicios de la evaluación presencial.

Page 4: Metodologia Y Tecnologia De La Programacion I

4

QUE HAREMOS HOY

Mayor claridad para el desarrollo de algoritmos

Desarrollo de programas mas complejos Nuevos enfoques … Programación

orientada a objetos

Page 5: Metodologia Y Tecnologia De La Programacion I

5

PLAN DE CONTENIDOS

SEGUNDO BIMESTRE

Capítulo 6. Estructuras de datos: Arreglos 163 -

192

12

Capítulo 7. Utilización de los Métodos 203 -

236

10

Capítulo 8. Programación Orientada a objetos

aplicando diagramas de clases

241 -

254

8

Capítulo 9. Programación Orientada a objetos

aplicando secuenciación, selección, repetición

257-

342

10

40

Page 6: Metodologia Y Tecnologia De La Programacion I

6

ESTRUCTURAS DE DATOS

Contenidos Arreglos de una

dimensión (vector) Arreglos de dos

dimensiones o matrices

Arreglos multidimensionales

2 3 4 5 6 7

2 3 4 5 6 7

8 9 3 5 7 4

6 7 1 1 4 3

Page 7: Metodologia Y Tecnologia De La Programacion I

7

Arreglos Colección de datos del mismo tipo Un nombre único Indicador de posición que diferencia a cada

elemento

2 9 4 15 6 27

ESTRUCTURAS DE DATOS

Mat

31 32 33 34 35 36

2 13 4 45 6 7

8 9 53 5 37 4

26 7 10 11 4 3

MatRes

1 2 3 4 5 6

Page 8: Metodologia Y Tecnologia De La Programacion I

8

Arreglos unidimensionales o vectores

ESTRUCTURAS DE DATOS

2 9 4 15 6 27

Mat

1 2 3 4 5 6

Mat[1] = 2Mat[2] = 9Mat[3] = 14Mat[4] = 15Mat[5] = 6Mat[6] = 25

Page 9: Metodologia Y Tecnologia De La Programacion I

9

Declarnombrevariable : Arreglo[tamaño] tipo de dato

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30] Entero

Declarnombrevariable : Arreglo[tamaño] tipo de dato

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30] Entero

ESTRUCTURAS DE DATOS

Page 10: Metodologia Y Tecnologia De La Programacion I

10

TIPOS

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

TiposVector : Arreglo [30] Entero

VariablesA, B. C : Vector

TIPOS

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

TiposVector : Arreglo [30] Entero

VariablesA, B. C : Vector

ESTRUCTURAS DE DATOS

Page 11: Metodologia Y Tecnologia De La Programacion I

11

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30] Entero

b. imprimir “ingrese numero de elementos”c. leer n_ed. for (i = 1; i <= n_e; i++)

1. leer Mat[i]e. endfor

f. for (i = 1; i <= n_e; i++)1. if (mat[i] mod 2) = 0 then

imprimir “el numero”,mat[i], es par2. endif

g. endforh. for (i = 1; i <= n_e; i++)

imprimir Mat[i] e. endfor h. fin método principal

fin clase matriz

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30] Entero

b. imprimir “ingrese numero de elementos”c. leer n_ed. for (i = 1; i <= n_e; i++)

1. leer Mat[i]e. endfor

f. for (i = 1; i <= n_e; i++)1. if (mat[i] mod 2) = 0 then

imprimir “el numero”,mat[i], es par2. endif

g. endforh. for (i = 1; i <= n_e; i++)

imprimir Mat[i] e. endfor h. fin método principal

fin clase matriz

Page 12: Metodologia Y Tecnologia De La Programacion I

12

Arreglos multi-dimensionales

ESTRUCTURAS DE DATOS

31 32 33 34 35 36

2 13 4 45 6 7

8 9 53 5 37 4

26 7 100 11 4 3

MatRes

MatRes[1][1] = 2MatRes[2][4] = 5MatRes[3][2] = 7MatRes[1][6] = 7MatRes[2][1] = 8 MatRes[3][5] = 4

MatRes[1][1] = 2MatRes[2][4] = 5MatRes[3][2] = 7MatRes[1][6] = 7MatRes[2][1] = 8 MatRes[3][5] = 4

Page 13: Metodologia Y Tecnologia De La Programacion I

13

Declaracionnombrevariable : Arreglo[tamaño_f][tamaño_c] tipo de dato

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

Declaracionnombrevariable : Arreglo[tamaño_f][tamaño_c] tipo de dato

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

ESTRUCTURAS DE DATOS

Page 14: Metodologia Y Tecnologia De La Programacion I

14

TIPOS

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

ConstantesL = 30

TiposMatrices : Arreglo [L][L] Entero

VariablesA, B. C : Matrices

TIPOS

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

ConstantesL = 30

TiposMatrices : Arreglo [L][L] Entero

VariablesA, B. C : Matrices

ESTRUCTURAS DE DATOS

Page 15: Metodologia Y Tecnologia De La Programacion I

15

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

b. imprimir “ingrese numero de filas y columnas”c. leer n_f,n_cd. for (i=1; i<=n_f; i++)

1. for (j=1:j<=n_c;j++) i. leer Mat[i][j]

2. endfore. endforf. for (i=1; i<=n_f; i++)

1. for (j=1:j<=n_c;j++)if (Mat[i][j] mod 2 = 0) then

imprimir “numero es par”endif

2. endforg. endfor

2. fin método principal

Algoritmo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

b. imprimir “ingrese numero de filas y columnas”c. leer n_f,n_cd. for (i=1; i<=n_f; i++)

1. for (j=1:j<=n_c;j++) i. leer Mat[i][j]

2. endfore. endforf. for (i=1; i<=n_f; i++)

1. for (j=1:j<=n_c;j++)if (Mat[i][j] mod 2 = 0) then

imprimir “numero es par”endif

2. endforg. endfor

2. fin método principal

Page 16: Metodologia Y Tecnologia De La Programacion I

16

EJERCICIOS

Ordenar un vector Buscar elementos repetidos en un

vector Ordenar una matriz de dos dimensiones Buscar elementos repetidos en una

matriz dos dimensiones Multiplica dos matrices

Page 17: Metodologia Y Tecnologia De La Programacion I

17

Método Principala. Declaraciones

Mat[10] : Arreglo[10] enterob. imprimir “ingrese numero de elementos”c. leer n_ed. for(i=1; i<= n_e; i++)

1. leer Mat[i]e. endfor f. for(i=1; i<= n_e; i++)

1. for(j=1; j<= n_e; j++)if (mat[i] < mat[j]) then aux mat[i] mat[i] mat [j] mat[j] auxendif

2.endfor g. endfor h. for(i=1; i<= n_e; i++)

1. imprimir Mat[i] i. endfor j. fin método principal

Page 18: Metodologia Y Tecnologia De La Programacion I

18

METODOS

Conceptos Generales

Propósito .como utilizar mas de un método dentro de una clase. Comprender el trabajo con variables de clase, variables locales y paso de parámetros entre métodos.

Page 19: Metodologia Y Tecnologia De La Programacion I

19

METODOS

Conceptos Generales Técnica divide y vencerás Ejecutar una tarea especifica Cada método es independientes método principal sub-rutinas (función,

rutina, sub-algoritmo) Cuando se invoca a un método las

instrucciones que están definidas se ejecutan y luego vuelven al método donde fue invocado.

Page 20: Metodologia Y Tecnologia De La Programacion I

20

A

B

B

D

A

D

F

Page 21: Metodologia Y Tecnologia De La Programacion I

21

Sistema de Gestión Académica

Registro de Notas y Asistencia

matriculación

matriculación

Ingresar Ficha del estudiante

Registro de Notas y Asistencia

Ingresar Notas

Verificar cédula

Page 22: Metodologia Y Tecnologia De La Programacion I

sEjemeemp1

Metodo Principal

22

Metodo principal Metodo xxxx

Método yyyy

Método zzzz

Llamada método

Llamada método

Llamada método

Llamada al método

Llamada método

Llamada método

Page 23: Metodologia Y Tecnologia De La Programacion I

23

Métodos

Algoritmo sumarClase suma

1. Método Principala. imprimir “la suma es”,

suma()2. fin método principal

3. Método suma: enteroa. Declaraciones

variables Suma, x , y: entero

• leer x, y• Suma = x + y• Return Suma

4. Fin Método suma

Fin clase sumafin

Page 24: Metodologia Y Tecnologia De La Programacion I

24

Métodos

Conceptos Métodos que no retornan valor Métodos que retornar valor Variables de clase y locales Parámetros por valor y por referencia

Page 25: Metodologia Y Tecnologia De La Programacion I

25

Métodos

Métodos que no retornan valor Pueden o no devolver valores Ejecuta un proceso especifico Forma de Invocar a estos métodos

NombredelMetodo()

Page 26: Metodologia Y Tecnologia De La Programacion I

26

Métodos que no retornan valor Definición

Métodos

Método nombre (parámetros)a. Declaraciones

VariablesConstantes

b. Acciónc. Acciónd. Acción

e. Fin Método

Page 27: Metodologia Y Tecnologia De La Programacion I

27

Métodos

Métodos que retornan valor Devuelve un valor Forma de Invocar a un Metodo No

Retorna ValorZ nombremetodo()Si (nombremetodo() == ?) Imprimir nombremetodoParte de una expresión

Page 28: Metodologia Y Tecnologia De La Programacion I

28

Metodos que retornan Valor Definición

Métodos

Método nombre (parámetros): tipo de datoa. Declaraciones

VariablesConstantes

b. Acciónc. Acciónd. return valore. Fin Método

Page 29: Metodologia Y Tecnologia De La Programacion I

29

Métodos

Variables: locales y clase Locales

Solo tiene valides dentro del método donde son declaradas

De clase Se las puede utilizad en cualquier parte

de la clase

Page 30: Metodologia Y Tecnologia De La Programacion I

30

Métodos

Variables

de clase

Algoritmo sumarClase suma

1. declaraciones variables

y : entero2. Método Principal

a. Leer yb. imprimir “la suma es”,

suma()3. fin método principal

4. Método suma: enteroa.Declaraciones

variables Suma, x: entero

b.x = 5c.Suma = x + yd.Return Suma

5. Fin Método sumaFin clase sumafin

Suma = x + y

Page 31: Metodologia Y Tecnologia De La Programacion I

31

31

MétodosAlgoritmo sumar

Clase suma1. Método Principal

a. declaraciones variables

y : enterob. Leer yc. imprimir “la suma es”,

suma()d. imprimir x

e. fin método principal 4. Metodo suma: entero

a. Declaracionesvariables Suma, x entero

b. x = 5c. Suma = x + yd. Return Suma

e. Fin Método sumaFin clase sumafin

Variables

locales

Page 32: Metodologia Y Tecnologia De La Programacion I

32

Métodos

Parámetros por valor y por referencia.. Enlazar variables entre métodos

Por valor Si un parámetro es modificado su contenido

dentro del subprograma, al terminar el mismo mantiene el valor

Por referencia Si un parámetro es modificado su contenido

dentro del subprograma, al terminar el mismo mantendrá el valor con el que se modificó.

Page 33: Metodologia Y Tecnologia De La Programacion I

33

Algoritmo Sumatoria Clase Suma 1.Metodo principal

a. declaraciones S : entero

b. S = 0 c. imprimir suma(s) d. imprimir s

e. Fin método principal ……. Fin clase suma fin

Algoritmo Sumatoria Clase Suma 1.Metodo principal

a. declaraciones S : entero

b. S = 0 c. imprimir suma(s) d. imprimir s

e. Fin método principal ……. Fin clase suma fin

………….2. método suma (val s: entero) : entero

a. Leer numero1b. Leer numero2c. s = numero1 + numero2d. return S

e. Fin método suma

………….2. método suma (val s: entero) : entero

a. Leer numero1b. Leer numero2c. s = numero1 + numero2d. return S

e. Fin método suma

Métodos

¿Qué valor se presenta en la llamada a la función?

¿Cuál es el valor de S ?

numero1 5

numero2 8

PARAMETROS POR VALOR

Page 34: Metodologia Y Tecnologia De La Programacion I

34

Métodos

¿Qué valor se presenta en la llamada a la función?

¿Cuál es el valor de S ?

numero1 5

numero2 8

Algoritmo Sumatoria Clase Suma 1.Metodo principal

a. declaraciones S : entero

b. S = 0 c. imprimir suma(s) d. imprimir s

e. Fin método principal ……. Fin clase suma fin

Algoritmo Sumatoria Clase Suma 1.Metodo principal

a. declaraciones S : entero

b. S = 0 c. imprimir suma(s) d. imprimir s

e. Fin método principal ……. Fin clase suma fin

………….2. método suma (ref s: entero) : entero

a. Leer numero1b. Leer numero2c. s = numero1 + numero2d. return S

e. Fin método suma

………….2. método suma (ref s: entero) : entero

a. Leer numero1b. Leer numero2c. s = numero1 + numero2d. return S

e. Fin método suma

PARAMETROS POR REFERENCIA

Page 35: Metodologia Y Tecnologia De La Programacion I

35

Ejercicios

Algoritmo Factorial Clase factorial 1. Metodo principal

a. declaraciones res, numero : entero

b. leer numero c. res = factorial (numero) d. imprimir res

e. Fin metodo principal…………… Fin clase sumafin

Algoritmo Factorial Clase factorial 1. Metodo principal

a. declaraciones res, numero : entero

b. leer numero c. res = factorial (numero) d. imprimir res

e. Fin metodo principal…………… Fin clase sumafin

………………….2. método factorial (val s: entero) : entero

a. declaracionesf : entero

b. f = 1c. for (i = 1; i<= numero; i++)

f = f * id. endfore. return f

f. Fin metodo factorial

………………….2. método factorial (val s: entero) : entero

a. declaracionesf : entero

b. f = 1c. for (i = 1; i<= numero; i++)

f = f * id. endfore. return f

f. Fin metodo factorial

Métodos

Page 36: Metodologia Y Tecnologia De La Programacion I

36

Ejercicios

Algoritmo Potencia Clase Potencia 1. Método principal

a. declaraciones bas, exp, res: entero b. leer bas c. leer exp d. res = potencia (bas,exp) e. imprimir res

Fin metodo principal……………Fin clase sumafin

Algoritmo Potencia Clase Potencia 1. Método principal

a. declaraciones bas, exp, res: entero b. leer bas c. leer exp d. res = potencia (bas,exp) e. imprimir res

Fin metodo principal……………Fin clase sumafin

…………….2. método potencia (entero bas,

entero exp) : enteroa. declaraciones

p : enterob. p = 1c. for (i=1; i<=exp; i++)

p p * basd. endforf. return p

g. fin método potencia

…………….2. método potencia (entero bas,

entero exp) : enteroa. declaraciones

p : enterob. p = 1c. for (i=1; i<=exp; i++)

p p * basd. endforf. return p

g. fin método potencia

Métodos

Page 37: Metodologia Y Tecnologia De La Programacion I

37

Algoritmo transformacion Clase transforma 1. Metodo principal

a. leer num b. bin = binario(num) c. oct = octal(num) d. imprimir “numero en binario es”, bin e. imprimir “numero en octal es”, oct

f. fin metodo principalfin

Algoritmo transformacion Clase transforma 1. Metodo principal

a. leer num b. bin = binario(num) c. oct = octal(num) d. imprimir “numero en binario es”, bin e. imprimir “numero en octal es”, oct

f. fin metodo principalfin

2. método binario (val num:entero) enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/2)2. res = res + (d*j)3. num = num / 24. j = j*10

d. endwhilee. return res

f. Fin metodo binario

2. método binario (val num:entero) enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/2)2. res = res + (d*j)3. num = num / 24. j = j*10

d. endwhilee. return res

f. Fin metodo binario

3. método octal (val num: entero) enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/8)2. res = res + (d*j)3. num = num / 84. j = j*10

d. endwhilee. return res

f. Fin metodo octal

3. método octal (val num: entero) enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/8)2. res = res + (d*j)3. num = num / 84. j = j*10

d. endwhilee. return res

f. Fin metodo octal

Page 38: Metodologia Y Tecnologia De La Programacion I

38

Algoritmo transformación Clase transforma 1. Método principal

a. leer numb. bin transformar(num,2)c. oct transformar(num,8)d. presentar “numero en binario es”, bine. presentar “numero en octal es”, oct

f. Fin Método Principalfin

Algoritmo transformación Clase transforma 1. Método principal

a. leer numb. bin transformar(num,2)c. oct transformar(num,8)d. presentar “numero en binario es”, bine. presentar “numero en octal es”, oct

f. Fin Método Principalfin

2. Método transformar (num: entero, base:entero): enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/base)2. res = res + (d*j)3. num = num / base4. j = j*10

d. endwhilee. return resf. Fin Método Transformar

2. Método transformar (num: entero, base:entero): enteroa. j = 1b. res = 0c. while (num > 0) do

1. d = residuo(num/base)2. res = res + (d*j)3. num = num / base4. j = j*10

d. endwhilee. return resf. Fin Método Transformar

Page 39: Metodologia Y Tecnologia De La Programacion I

39

Algortimo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

b. imprimir “ingrese numero de filas y columnas”c. leer n_f,n_cd. for (i=1; i<=n_f; i++)

1. for (j 1 hasta n_c i. leer Mat[i,j]

2. endfore. endforf. for (i=1; i<=n_f; i++)

1. for (j 1 hasta n_cif primo(Mat[i,j])

imprimir “numero es primo”endif

2. endforg. endfor

h. fin método principal………..

Algortimo matricesClase matriz

1. Método Principala. declaraciones

VariablesMat: Arreglo [30][10] Entero

b. imprimir “ingrese numero de filas y columnas”c. leer n_f,n_cd. for (i=1; i<=n_f; i++)

1. for (j 1 hasta n_c i. leer Mat[i,j]

2. endfore. endforf. for (i=1; i<=n_f; i++)

1. for (j 1 hasta n_cif primo(Mat[i,j])

imprimir “numero es primo”endif

2. endforg. endfor

h. fin método principal………..

……………………2. Método primo(entero num) boolean

a. declaracionesvariables

d, lim : realp : boolean

b. d = 2c. lim = num / 2d. p truee. while (d < num) 1. if(num modd) = 0

p = falso d = lim

2. Endif 3. d d + 1f. enddog. return p

h. Fin método primoFin clasefin

……………………2. Método primo(entero num) boolean

a. declaracionesvariables

d, lim : realp : boolean

b. d = 2c. lim = num / 2d. p truee. while (d < num) 1. if(num modd) = 0

p = falso d = lim

2. Endif 3. d d + 1f. enddog. return p

h. Fin método primoFin clasefin

Page 40: Metodologia Y Tecnologia De La Programacion I

40

Fácil comprensión del problema Fácil comprensión de errores, pues si

existe alguno solo se trabajara en el modulo donde este se presente

Reutilización de código, para procesos similares se pueden utilizar procedimientos que ya están realizados

METODOS - resumen

Page 41: Metodologia Y Tecnologia De La Programacion I

41

Contenidos Estudiar los conceptos básicos de la

programación orientada a objetos. Objetos. Clases. métodos. encapsulamiento.

PROGRAMACIÓN ORIENTADA A OBJETOS

Page 42: Metodologia Y Tecnologia De La Programacion I

Innovación en los lenguajes de programación Es mas estructurada que las que se han

estudiado Mas modular y abstracta que lo que se ha

hecho con respecto a abstracción y ocultamiento

La POO, está formada por una colección de objetos interaccionando conjuntamente para representar y solucionar un problema

42

PROGRAMACIÓN ORIENTADA A OBJETOS

Page 43: Metodologia Y Tecnologia De La Programacion I

Objetos Datos .. Atributos .. descripción Métodos .. Comportamiento … manipulación

de los datos

43

Objeto

Metodo1()Metodo2()Metodo3()

Dato1Dato2dato3

PROGRAMACIÓN ORIENTADA A OBJETOS

Page 44: Metodologia Y Tecnologia De La Programacion I

Clase Representación abstracta que describen

un conjunto de objetos Representa un {} de objetos que tienen

los mismos métodos y los mismos datos Plantilla o molde para crear todos los

objetos

44

Empleado

Leernombre()Leerapellido()

Nombreapellidos

PROGRAMACIÓN ORIENTADA A OBJETOS

Page 45: Metodologia Y Tecnologia De La Programacion I

Métodos y encapsulación Acciones que se implementan el

comportamiento de un objeto, manipular los datos

Encapsulación colocar juntos los datos y los métodos dentro de un objeto

El programador debe pensar en el código y los datos juntos durante el diseño del programa

No hay vacio entre datos y métodos 45

PROGRAMACIÓN ORIENTADA A OBJETOS

Page 46: Metodologia Y Tecnologia De La Programacion I

Modificadores de acceso Visibilidad que tendran los datos o los

metodos, desde que parte seran visibles para ser utilizados -privado (datos,metodos) #protegido (datos,metodos) +publico (datos,metodos) _estatico (datos,metodos) *abstracto (metodos)

46

Page 47: Metodologia Y Tecnologia De La Programacion I

ObjetoEmpleado

Leernombre()Leerapellido()

Instanciación

47

Empleado

Leernombre()Leerapellido()

Nombreapellidos

Nombre: JuanApellidos: perez

ObjetoEmpleado

Leernombre()Leerapellido()

Nombre: JuanApellidos: perez

Page 48: Metodologia Y Tecnologia De La Programacion I

ejercicio Se desea calcular el sueldo de un empleado,

teniendo su nombre, apellido, horas trabajadas, costo por hora de 5 dólares y bajo las siguientes condiciones: Horas trabajadas <=40 no tiene bonificacion Horas trabajadas <=50, 20% de bonificacion Horas trabajadas <=60, 30% de bonificacion Horas trabajadas >=60, 40% Nadie puede ganar menos de 100 y mas de

400 dólares

48

Page 49: Metodologia Y Tecnologia De La Programacion I

49

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: JuanApellidos: perezHorastrab: 30Sueldo: 150

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: daniloApellidos: jaramilloHorastrab: 10Sueldo: (50) = 100

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: JuanApellidos: perezHorastrab: 40Sueldo: 200

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: JuanApellidos: perezHorastrab: 45Sueldo: 225+45=270

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: JuanApellidos: perezHorastrab: 54Sueldo: 270+81=351

ObjetoEmpleado

establecerombre()establecerapellido()Calcularsueldo()

Nombre: JuanApellidos: perezHorastrab: 65Sueldo: 325+130=400

Page 50: Metodologia Y Tecnologia De La Programacion I

Empleado

Establecernombre()Establecerapellido()Establecerhoras()Calcularsueldo()obtenerDatosempleados()Obtenersueldo()

50

NombreApellidosHorastrabSueldo

Page 51: Metodologia Y Tecnologia De La Programacion I

Algoritmo sueldo

Clase empleado

a. Declaraciones

datos

NomEmp: cadena

ApeEmp: cadena

NumHor: real

sueldo: real

constante

costohora=5

………………

51

1. Método Establecernombre(nom :cadena)a. NomEmp = nom

b. Fin Método establecernombre

2. Método Establecerapellido (ape:cadena)a. ApeEmp = nom

b. Fin Método establecerapellido

3. Método Establecerhoras (hor:real)

a. numhor = hor

b. Fin Método Establecerhoras

Page 52: Metodologia Y Tecnologia De La Programacion I

52

4. Método Calcularsueldo ()a. Sueldo = NumHor * costohora

b. If (NumHor > 40) and (NumHor <=50) then

Sueldo = sueldo + (sueldo*0.20)

c. endif

d. If (NumHor > 50) and (NumHor <=60) then

Sueldo = sueldo + (sueldo*0.30)

e. endif

f. If (NumHor > 60) then

Sueldo = sueldo + (sueldo*0.40)

g. Endif

……….

h. If (sueldo < 100) then

sueldo = 100

i. Endif

j. If (sueldo > 300) then

sueldo = 300

k. Endif

l. Fin Método calcularrsueldo

Page 53: Metodologia Y Tecnologia De La Programacion I

5. Método obtenerDatosempleados() :cadena

a. return (NomEmp+ “ “+ApeEmp)

b. Fin Método obtenerDatosempleados

6. Método Obtenersueldo(): Real

a. return sueldo

b. Fin Método Obtenersueldo

Finclase Empleado

53

Page 54: Metodologia Y Tecnologia De La Programacion I

54

………………Clase Manipulaempleado

Método Principal

a. Declaraciones

nombre: cadena

apellido: cadena

horas: real

b. Declarar crear el objeto

c. empleado objemp = new empleado()

d. Imprimir “ingrese nombres y apellidos, y horas trabajadas”

e. Leer nombre, apellido, horas

………………………

………………f. Objemp.establecernombre(nombre)

g. Objemp.establecerapellido(apellido)

h. Objemp.establecerhoras(horas)

i. Objemp.calcularsueldo()

j. Imprimir Objemp.obtenerempleado

k. Imprimir objemp.obtenersueldo

l. Fin Método Principal

Fin clase Manipulaempleado

Fin (algoritmo)

Page 55: Metodologia Y Tecnologia De La Programacion I

contacto

Email: [email protected] Skype: danilo.jaramillo.h msn: [email protected] Teléfono: 07-250275 ext 2637

55

Page 56: Metodologia Y Tecnologia De La Programacion I

56