Metodología y Tecnología de la Programación I Universidad Técnica Particular de Loja Escuela de Ciencias de la Computación
Agenda Introducción (5´) Conceptos Generales (20’) Ejercicios Secuenciales (20’) Selección (30’) Repetitivos (30’) Preguntas durante el desarrollo de la Asesoría
Introducción Evaluación a Distancia Eva Resolver personalmente Evaluación Presencial Parte Objetiva Parte de ensayo Tutorías
Conceptos Generales (19:35) Pasos para la solución de un problema Programa  Estructura Datos Entrada/Salida Instrucciones
Pasos para la solución de un problema Definición del problema (Entender que es lo que se requiere) Determinación de los datos de entrada y salida  Modelo Matemático (Para conocer el proceso de solución) Algoritmo Prueba Refinamiento del algoritmo Codificación
Determinar el área de un triangulo si se conoce la base y altura EL PASO 1 (entender):  EL PASO 2 (datos de entrada y salida): Entrada: base y altura Salida: area EL PASO 3 (modelo matemático a utilizar):  Area = base * altura / 2  EL PASO 4 (algoritmo):  1.  Inicio 2.  Leer  base 3.  Leer  altura 4. Área = (base * altura ) / 2 5.  Presentar  area 6.  Fin EL PASO 5 (prueba):  Prueba de escritorio EL PASO 6:  corrección del algoritmo
Estructura de un Programa Nombre Delimitación: Inicio/fin declaración de constantes, variables Cuerpo Expresiones Sentencias secuenciales Sentencias de selección Sentencias de repetición Se debe utilizar Documentación: comentarios Orden: tabulación
Elementos de un programa  Inicio Leer  altura Leer  base Area = (base * altura ) / 2 Presentar  area fin variables operadores expresión
Algoritmo  suma // este algoritmo permite sumar dos números // danilo jaramillo 20/mayo/2008 Inicio entero:  suma, num1, num2 imprimir  “ingrese el primer numero” ingresar  num1 imprimir  “ingrese el primer numero” ingresar  num1 suma    num1 + num2  ó  suma = num1 + num2 imprimir  “la suma de los dos numeros es”, suma fin
Tipos de datos Números Enteros (3, 5, 18, 20) Números Reales (3.4, 5.0, 20.20) Carácter (‘a’, ’3’, ‘$’) Cadenas (‘a’, ‘danilo’, ‘123’, ‘097dd’) lógico (verdadero, falso)
Operadores Matemáticos (+, -, *, /, mod(residuo)) Relacionales (<, >, <>, !=, >=, <=) Lógicos (i, o, not) Precedencia de operadores
Ejercicios – Secuenciales(19:55)
Calcular el area de un triangulo, conociendo su base y la altura Programa  AreaTriangulo Inicio entero:  base, altura, area imprimir  “ingrese la base” ingresar  base imprimir  “ingrese la altura” ingresar  base area = (base * altura ) / 2 imprimir  “el area es”, area fin p(e)
corrección Programa  AreaTriangulo Inicio entero:  base, altura,  real:  area imprimir  “ingrese la base” ingresar  base imprimir  “ingrese la altura” ingresar  base area = (base * altura ) / 2 imprimir  “el area del triangulo es”, area fin
Calcular el sueldo de un empleado si se conoce el número de horas trabajadas y el valor por cada hora
Programa  Sueldo empleado Inicio entero:  horTra,  real:  costohora, sue_tot cadena:  nombre escribir  “ingrese nombre del empleado” leer  nombre escribir  “ingrese el numero de hora y su valor” leer  horTra, costohora sue_tot = horTra*costohora  escribir  “el empleado ”,nombre,”recibe”,sue_tot fin p(e)
Ejercicios – Selección (19:15)
Determinar si un numero es par 1 = no es par 6 = es par 18 = es par
Condición Su resultado es un valor lógico Operadores relacionales, lógicos, matemáticos (a > b) ( a = 2 ) y (b = 3) ((a + 5) = 7)
Ejemplo Inicio entero  numero Leer  numero  Si  residuo(numero/2) = 0 presentar “numero par Finsi fin Inicio entero  numero Leer  numero Si  residuo(numero/2)=0 presentar “numero par” Sino presentar “numero impar” Finsi fin
Calcular la edad de una persona al día actual, la fecha de nacimiento y actual se ingresan por teclado
Escribir el mes en letras de acuerdo al número ingresado desde teclado 1 = enero 2 = febrero 3 = marzo
Ejercicios – Ciclos repetitivos 19:45
Determinar si un número es primo o no, el numero será ingresado por teclado (un número es primo si solo si es divisible para 1 y para si mismo) 1,2,3,5,7,11,…..
// algoritmo para determinar si un numero es primo o no Inicio entero  d, numero, lim logica  p leer  numero d    2 lim    num / 2 p    verdadero mientras  (d < num)   si  residuo(num/d) = 0 p    falso d    lim   finsi   d    d + 1 finmientras si  (p) presentar “numero es primo” sino presentar “numero no es primo” finsi fin
Determinar si un Número es perfecto el mismo será ingresado por teclado  (un número es perfecto si la suma de sus divisores es igual al número) 1 = 1 = 1 6 = 1 + 2 + 3 = 6 12 = 1 + 2 + 3 + 4 + 6 = 16 (no es)
Invertir un número teniendo un numero ingresado desde teclado presentar otro numero que sea su inverso 123 = 321 546 = 645
Gracias Contactos: Mail: djaramillo@utpl.edu.ec msn:  [email_address] Skype: danilo.jaramillo.h Ext. 2637

Asesoria

  • 1.
    Metodología y Tecnologíade la Programación I Universidad Técnica Particular de Loja Escuela de Ciencias de la Computación
  • 2.
    Agenda Introducción (5´)Conceptos Generales (20’) Ejercicios Secuenciales (20’) Selección (30’) Repetitivos (30’) Preguntas durante el desarrollo de la Asesoría
  • 3.
    Introducción Evaluación aDistancia Eva Resolver personalmente Evaluación Presencial Parte Objetiva Parte de ensayo Tutorías
  • 4.
    Conceptos Generales (19:35)Pasos para la solución de un problema Programa Estructura Datos Entrada/Salida Instrucciones
  • 5.
    Pasos para lasolución de un problema Definición del problema (Entender que es lo que se requiere) Determinación de los datos de entrada y salida Modelo Matemático (Para conocer el proceso de solución) Algoritmo Prueba Refinamiento del algoritmo Codificación
  • 6.
    Determinar el áreade un triangulo si se conoce la base y altura EL PASO 1 (entender): EL PASO 2 (datos de entrada y salida): Entrada: base y altura Salida: area EL PASO 3 (modelo matemático a utilizar): Area = base * altura / 2 EL PASO 4 (algoritmo): 1. Inicio 2. Leer base 3. Leer altura 4. Área = (base * altura ) / 2 5. Presentar area 6. Fin EL PASO 5 (prueba): Prueba de escritorio EL PASO 6: corrección del algoritmo
  • 7.
    Estructura de unPrograma Nombre Delimitación: Inicio/fin declaración de constantes, variables Cuerpo Expresiones Sentencias secuenciales Sentencias de selección Sentencias de repetición Se debe utilizar Documentación: comentarios Orden: tabulación
  • 8.
    Elementos de unprograma Inicio Leer altura Leer base Area = (base * altura ) / 2 Presentar area fin variables operadores expresión
  • 9.
    Algoritmo suma// este algoritmo permite sumar dos números // danilo jaramillo 20/mayo/2008 Inicio entero: suma, num1, num2 imprimir “ingrese el primer numero” ingresar num1 imprimir “ingrese el primer numero” ingresar num1 suma  num1 + num2 ó suma = num1 + num2 imprimir “la suma de los dos numeros es”, suma fin
  • 10.
    Tipos de datosNúmeros Enteros (3, 5, 18, 20) Números Reales (3.4, 5.0, 20.20) Carácter (‘a’, ’3’, ‘$’) Cadenas (‘a’, ‘danilo’, ‘123’, ‘097dd’) lógico (verdadero, falso)
  • 11.
    Operadores Matemáticos (+,-, *, /, mod(residuo)) Relacionales (<, >, <>, !=, >=, <=) Lógicos (i, o, not) Precedencia de operadores
  • 12.
  • 13.
    Calcular el areade un triangulo, conociendo su base y la altura Programa AreaTriangulo Inicio entero: base, altura, area imprimir “ingrese la base” ingresar base imprimir “ingrese la altura” ingresar base area = (base * altura ) / 2 imprimir “el area es”, area fin p(e)
  • 14.
    corrección Programa AreaTriangulo Inicio entero: base, altura, real: area imprimir “ingrese la base” ingresar base imprimir “ingrese la altura” ingresar base area = (base * altura ) / 2 imprimir “el area del triangulo es”, area fin
  • 15.
    Calcular el sueldode un empleado si se conoce el número de horas trabajadas y el valor por cada hora
  • 16.
    Programa Sueldoempleado Inicio entero: horTra, real: costohora, sue_tot cadena: nombre escribir “ingrese nombre del empleado” leer nombre escribir “ingrese el numero de hora y su valor” leer horTra, costohora sue_tot = horTra*costohora escribir “el empleado ”,nombre,”recibe”,sue_tot fin p(e)
  • 17.
  • 18.
    Determinar si unnumero es par 1 = no es par 6 = es par 18 = es par
  • 19.
    Condición Su resultadoes un valor lógico Operadores relacionales, lógicos, matemáticos (a > b) ( a = 2 ) y (b = 3) ((a + 5) = 7)
  • 20.
    Ejemplo Inicio entero numero Leer numero Si residuo(numero/2) = 0 presentar “numero par Finsi fin Inicio entero numero Leer numero Si residuo(numero/2)=0 presentar “numero par” Sino presentar “numero impar” Finsi fin
  • 21.
    Calcular la edadde una persona al día actual, la fecha de nacimiento y actual se ingresan por teclado
  • 22.
    Escribir el mesen letras de acuerdo al número ingresado desde teclado 1 = enero 2 = febrero 3 = marzo
  • 23.
    Ejercicios – Ciclosrepetitivos 19:45
  • 24.
    Determinar si unnúmero es primo o no, el numero será ingresado por teclado (un número es primo si solo si es divisible para 1 y para si mismo) 1,2,3,5,7,11,…..
  • 25.
    // algoritmo paradeterminar si un numero es primo o no Inicio entero d, numero, lim logica p leer numero d  2 lim  num / 2 p  verdadero mientras (d < num) si residuo(num/d) = 0 p  falso d  lim finsi d  d + 1 finmientras si (p) presentar “numero es primo” sino presentar “numero no es primo” finsi fin
  • 26.
    Determinar si unNúmero es perfecto el mismo será ingresado por teclado (un número es perfecto si la suma de sus divisores es igual al número) 1 = 1 = 1 6 = 1 + 2 + 3 = 6 12 = 1 + 2 + 3 + 4 + 6 = 16 (no es)
  • 27.
    Invertir un númeroteniendo un numero ingresado desde teclado presentar otro numero que sea su inverso 123 = 321 546 = 645
  • 28.
    Gracias Contactos: Mail:djaramillo@utpl.edu.ec msn: [email_address] Skype: danilo.jaramillo.h Ext. 2637