TALLER No.1 DE ALGORITMIA Y PROGRAMACIÓN INGENIERIA INDUSTRIA – SEMESTRE II Temas: Conceptos generales de algoritmia y programación orientada a objetos. Metodología para resolver problemas a través de la programación orientada a objetos. Objetivos. Identificar algunos conceptos relevantes de la algoritmia y programación orientada a objetos. Aplicar el modelo cliente – proveedor para el enfoque del modelamiento de la solución a problemas. Identificar clases, atributos, métodos y objetos que forman la solución a un problema. Representar la solución a un problema por medio del diagrama de clases. Conciliar el enfoque de objetos con el enfoque de procesos para dar solución a un problema. Identificar tipos de datos, operadores, variables y expresiones como parte fundamental dentro de la algoritmia y la programación. Ejercitar expresiones de asignación con operadores aritméticos, relacionales y lógicos. Llevar expresiones algebraicas a una forma lineal o algorítmica. Desarrollar su habilidad para aplicar la metodología de solución de problemas mediante el enfoque orientado a objetos. Identificar la estructura básica de un programa en Java. Familiarizar al estudiante con las fases del desarrollo de un programa en Java: edición, compilación, depuración, ejecución y análisis de resultados. Familiarizar al estudiante con la identificación de la sintaxis de un programa en Java. Reconocer la importancia de los tipos de datos en Java. Utilizar las instrucciones aritméticas para realizar cálculos básicos en Java. Comprender el uso y la sintaxis de las operaciones de lectura y escritura mediante los métodos showInputDialog() y showMessageDialog() de la clase JOptionPane. Describir y usar la sintaxis de las operaciones de conversión de información de cadenas de caracteres a su representación numérica. 1. Indicar cuál o cuáles de las siguientes líneas de código corresponden a un comentario en Java: a) { Esto es un comentario } b) (* Esto es un comentario *) c) /** Esto es un comentario */ d) /* Esto es un comentario */ e) // Esto es un comentario f) Ninguna de las anteriores 2. Indicar cuál o cuáles de los siguientes identificadores son válidos en el código fuente de un programa en Java: a) PrimerValor b) Valor2 c) 4Valor d) valor e) Tercer_Valor f) Ninguno de los anteriores 3. Indicar cuáles de los siguientes son variables o atributos de tipo String: a) ’Juan ’ b) Luis c) "Pedro" d) /Antonio/ e) Ninguna de las anteriores 4. En la declaración de los constructores de una clase es necesario tener en cuenta que... (marca las respuestas correctas) a) debe siempre incluirse, al menos, un parámetro formal b) el identificador del constructor debe coincidir con el de la clase c) puede emplearse la sobrecarga d) no se indica el tipo de valor de retorno e) Ninguna de las anteriores 5. Indicar en cuál de las siguientes empresas tiene su origen el lenguaje de programación Java: a) Sun Microsystems b) IBM c) Microsoft d) Dell Computers e) Hewlett-Packard 6. Indicar el nombre del creador del lenguaje Java: a) Bill Gates b) Linus Torvalds c) James Gosling d) Tim Berners-Lee e) Ninguno de los anteriores 7. Indicar cuál de las siguientes extensiones corresponde al archivo fuente de un programa escrito en Java: a) .font b) .java c) .class d) .exe e) Ninguna de las anteriores 8. En Programación Orientada a Objetos una clase se compone de: a) constantes y variables b) funciones y procedimientos c) atributos y métodos d) diferentes tipos de dato e) Ninguna de las anteriores 9. En Java, la declaración de una clase utiliza siempre la palabra reservada. a) object b) class c) type d) instance e) Ninguna de las anteriores 10. En el código fuente de un programa de Java, para la creación de una nueva instancia se utiliza la palabra reservada. a) instanceof b) this c) class d) new e) Ninguna de las anteriores 11. Indicar cuál o cuáles de los siguientes operadores tiene mayor nivel de prioridad en Java: a) * b) + c) == d) || e) = 12. Indicar cuál o cuáles de los siguientes son operadores de relación de Java: a) := b) != c) *= d) == e) Ninguno de los anteriores 13. Considerando que i es el identificador de una variable entera, indicar el tipo de dato correspondiente a la evaluación de la expresión: i==0 a) el resultado es de tipo carácter b) es una sentencia de asignación (asigna el valor 0 a la variable entera i) c) el resultado es de tipo lógico o booleano d) el resultado es de tipo entero e) Ninguna de las anteriores 14. En Programación Orientada a Objetos, un atributo es: a) un valor enumerado que se le puede asignar a una instancia b) una llamada a un método o procedimiento c) un campo o componente de una clase d) el identificador de una clase e) Ninguna de las anteriores 15. La utilización de la palabra reservada final en la sentencia de declaración de un atributo indica que: a) es una variable de clase b) sólo es directamente accesible a través de los metodos de la propia clase c) es una variable de instancia d) una vez inicializado su valor, no puede ser modificado e) Ninguna de las anteriores 16. En el código fuente de Java, la declaración de una clase... (marca las respuestas correctas) a) incluye, por defecto, un constructor b) puede incluir atributos de tipo primitivo c) emplea siempre la palabra reservada class d) incluye siempre la declaración de un método principal main e) Ninguna de las anteriores 17. Indicar cuáles de las siguientes afirmaciones son correctas a) Un método puede tener cualquier identificador válido en Java b) Un método puede tener un número indefinido de parámetros c) Un método puede devolver un valor de cualquier tipo primitivo d) Un método puede hacer llamadas a otros métodos de la misma clase a la que pertenece e) Ninguna de las anteriores 18. Indicar el número de métodos que componen la siguiente clase: public class Precio { public double da() { return euros; } public void pone(double x) { euros=x; } public double euros; } 19. Indicar a cual o cuales de los siguientes tipos puede pertenecer un atributo de una clase determinada. Marca las respuestas correctas: a) String b) int c) char d) boolean e) Ninguno de los anteriores 20. En Programación Orientada a Objetos, un método es: a) una llamada a una rutina b) Un bloque de código que tiene un nombre c) un atributo de una clase determinada d) un algoritmo para asignar valores a una instancia e) Ninguna de las anteriores Para dar solución a los ejercicios siguientes, debe aplicar la metodología para resolver problemas a través de la programación orientada a objetos: Análisis del problema. Entender el problema (entrada, proceso y salida). Identificar los objetos del dominio del problema. Clase base y clase principal. Crear el diagrama de clases o modelo de objetos del problema. Desarrollar los algoritmos para cada uno de los métodos de la clase base y clase principal. Programar cada clase en java. Compilar las clases. Ejecutar la clase principal. 21. Dadas las longitudes de los catetos de un triángulo rectángulo, construir un programa para determinar e imprimir la longitud del tercer lado (hipotenusa), todas las variables se suponen enteras. La hipotenusa de un triángulo rectángulo es igual a la raíz cuadrada de la suma de los cuadrados de los catetos. HIPOTEUSA ( CATETO_ B ) 2 ( CATETO_ C) 2 22. Un sistema de ecuaciones lineales de la forma: ax + by = c dx + ey = f Puede resolverse utilizando las siguientes fórmulas: X ce bf ae bd Y af cd ae bd Diseñar un programa para leer (a,b,c,d,e,f) e imprimir los valores que son solución para X e Y. 23. Diseñar un programa que lea de un estudiante el código, nombre, nota del primer parcial, nota del segundo parcial, nota de los trabajos y la nota de la evaluación final. Cada nota tiene un porcentaje de 20%, 20%, 30% y 30% respectivamente. Calcule e imprima su nota definitiva. 24. En un hospital existen 3 áreas: Urgencias, Pediatría y Traumatología. El presupuesto anual del hospital se reparte de la siguiente manera: Área Presupuesto Urgencias 37% Pediatría 42% Traumatología 21% Construir un programa que calcule la cantidad de dinero que recibirá cada área para cualquier monto presupuestal. 25. Una persona recibe un préstamo a 3 años de un banco y desea saber cuánto pagará de interés, si el banco le cobra una tasa del 27% anual. Diseñe un programa que lea el préstamo y calcule el interés.