Issuu on Google+

INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre Guía de aplicación N° 5 Estructuras de control secuencial y Métodos Predefinidos I. FECHA : 18 de Julio del 2013 II. COMPETENCIAS A CONSEGUIR: • Conocer las estructura de control secuencial y utilizar métodos predefinidos en Java. • Identificar los tipos de datos en Java.

III. Fundamento Teórico: En cuanto a las funciones matemáticas en Java, las funciones disponibles vienen definidas en la clase Math. Hay muchas funciones disponibles. Destacar que las funciones matemáticas, al pertenecer a la clase Math, se invocan siempre de la siguiente manera: Math.funcion(argumentos). Las funciones relacionadas con ángulos (atan, cos, sin, tan, etc.) trabajan en radianes. Por tanto, para operar con grados, tendremos que realizar la conversión oportuna. La función random,permite generar números aleatorios en el rango ]0,1[. Por tanto el 0 y el 1 están excluidos. La función exponenciación neperiana o exponenciación de e, matemáticamente significa e x, que en Java sería Math.exp(x),donde x es un número real y la base es la constante neperiana e = 2.7172... La función logaritmo neperiano, matemáticamente significa Ln x, que en Java correspondería a la expresión Math.log(x). La función potencia, matemáticamente significa baseexponente, que en Java se convertiría en Math.pow(base,exponente),donde base y exponente son números reales, por lo tanto, si queremos obtener la raíz cubica de 2,la instrucción sería Math.pow(2,0.333). No hay una función directa para obtener la parte entera de un número real, pero para estos casos, se puede obtener de la siguiente manera:1 int x = (int)(8.7); --> x = 8; int x = (int)(-8.7); --> x = -8; Funciones predefinidas por medio de la Librería Math en Java . Funciones Matemáticas Significado

Ejemplo de uso

Resultado

abs

Valor absoluto

int x = Math.abs(2.3);

x = 2;

atan

Arcotangente

double x = Math.atan(1);

x = 0.78539816339744;

sin

Seno

double x = Math.sin(0.5);

x = 0.4794255386042;

cos

Coseno

double x = Math.cos(0.5);

x = 0.87758256189037;

tan

Tangente

double x = Math.tan(0.5);

x = 0.54630248984379;

exp

Exponenciación neperiana

double x = Math.exp(1);

x = 2.71828182845904;

1 http://www.aprenderaprogramar.com/index.php?option=com_attachments&task=download&id=183 Ing. Godofredo Poccori Umeres gpoccori@khipu.edu.pe 1/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre log

Logaritmo neperiano

double x = Math.log(2.7172);

x = 0.99960193833500;

pow

Potencia

double x = Math.pow(2.3);

x = 8.0;

round

Redondeo

double x = Math.round(2.5);

x = 3;

random

Número aleatorio

double x = Math.ramdom();

x = 0.20614522323378;

Ejemplo para utilizar los métodos predefinidos: • int A = 2; • int B = 3; • int Resultado = Math.Pow(A,B); Resultado almacenará el valor de 8, porque dos elevado al cubo es 8. Ejercicios de Aplicación: Ejercicio N° 1.-Escribir el algoritmo y programa que me permita hallar el área de un triángulo, conocido el Angulo y los dos lados que forman este Angulo.

1.

ANALIZAR EL PROBLEMA 1.1. Entender el Problema. Si se conoce que:

Area=(a*b*senoC)/2 A=

Datos de entrada

Ing. Godofredo Poccori Umeres

Proceso

gpoccori@khipu.edu.pe

Resultado

2/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre Variables Ejemplo1 Ejemplo2

a 5 15

b 6 25

Angulo 90 30

Área 15u2 37.5u2

6*5*seno(90°) 15*25*seno(30°)

1.2. Modelo Area=

a∗b∗Seno (30 ° ) 2

1.3. Especificación del algoritmo.

1.3.1. Diccionario de variables - Variables de entrada.a: representa el primer lado del triángulo que forma un ángulo del triángulo, tipo Entero b: representa el segundo lado del triángulo que forma un ángulo del triángulo, tipo Entero - Variables de proceso.ninguno - Variables de salida.Area: representa el área del triángulo en función a dos lados y un ángulo, tipo Real. 1.3.2. Pre Condición

{|

|}

1.3.3 Acción que realiza el algoritmo: {Determina el área del triángulo, conocido dos lados y el ángulo que forman estos.} 1.3.4. Post Condición {| Area=(a*b*senoC)/2| }

2.

DISEÑAR EL ALGORITMO.-

2.1. Descripción del Algoritmo: Inicio {Calcular el área del triángulo} {Declarar e inicializar variables} Declarar a, b, angulo tipo Entero Declara Area tipo Real

// INSTRUCCIÓN 1 // INSTRUCCIÓN 2

{Leer datos} Escribir “ingrese el lado a:” Leer (a) Escribir “ingrese el lado b:” Leer (b) Escribir “ingrese el angulo”

// INSTRUCCIÓN 3 // INSTRUCCIÓN 4 // INSTRUCCIÓN 5 // INSTRUCCIÓN 6 // INSTRUCCIÓN 7

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

3/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre Leer (angulo)

// INSTRUCCIÓN 8

{Calcular la suma}

Area  =(a*b*seno(angulo))/2

// INSTRUCCIÓN 9

{Mostrar el resultado} Escribir “El área del triángulo es: ” , Area

// INSTRUCCIÓN 10

Fin.

2.2. Verificación Manual del Algoritmo: N°

Instrucciones

1

Declarar

2

Escribir “ingrese el lado a:”

3

Leer (a)

4

Escribir “ingrese el lado b”

5

Leer (b)

6

Escribir “ingrese el angulo”

7

Leer (angulo)

8

Area 

9

3.

a

b

angulo

Area

?

?

?

?

Resultado Consola Ingrese el lado a:

5 Ingrese el lado b: 6 90 15 El area es 15

=(a*b*seno(angulo))/2 Escribir “La área es: ” , Area

Traducir el algoritmo en el lenguaje de Programación Java.-

package appareas; import java.util.Scanner; /** * @author Ing. Godofredo Poccori Umeres */ public class AppAreaTriangulo { public static void main(String[] args) Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

4/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre

{

}

//Declarar variables int a,b,angulo; double Area; //Ingresar datos Scanner dato=new Scanner(System.in); System.out.print("Ingrese el lado a: "); a=dato.nextInt(); System.out.print("Ingrese el lado b: "); b=dato.nextInt(); System.out.print("Ingrese el angulo: "); angulo=dato.nextInt(); //Calcular Area Area=(a*b*(Math.sin(angulo)))/2; //Escribri resultados System.out.println("El area del triangulo en radianes es "+Area);

}

Ejercicio N° 2.-Escribir el algoritmo y programa que me permita hallar Las raíces de una ecuación de segundo grado usando la fórmula de BASKARA.

1.

ANALIZAR EL PROBLEMA

1.1. Entender el Problema.

Si se conoce que el método de Baskara tiene la siguiente expresión:

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

5/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre

Las raíces de la ecuación son Datos de entrada Variables A B Ejemplo1 1 5

1.2.

X1 =

− B + B 2 − 4 AC 2A

X2 =

− B − B 2 − 4 AC 2A

Proceso C 6

D 5^2 – 4 *1*6

Resultado E 2*1

X1 X1 = -2

X2 X2 = -3

Modelo: DB^2 – 4 *A*C E 2*A X1 = (-b+ raiz2(D))/E X2 = (-b- raiz2(D))/E

1.3. Especificación del algoritmo.

1.3.1. Diccionario de variables - Variables de entrada.A: representa un coeficiente de la ecuación cuadrática, tipo Real B: representa un coeficiente de la ecuación cuadrática, tipo Real C: representa un coeficiente de la ecuación cuadrática, tipo Real - Variables de proceso.D: almacena el valor a B2 – 4 *A*C, tipo Real. E: almacena el valor de 2*A, tipo Real. - Variables de salida.X1: representa una raíz de la ecuación, tipo Real. X2: representa otra raíz de la ecuación, tipo Real. 1.3.2. Pre Condición.{| B^2 + 4*a*c >= 0|} 1.3.3 Acción que realiza el algoritmo: Resolver una ecuación de segundo grado.

2.

DISEÑAR EL ALGORITMO.-

2.1. Descripción del Algoritmo: Inicio {Calcular raíces de ecuación cuadrática} {declarar e inicializar variables} declarar A,B,C,D,E,X1,X2, {Leer datos}

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

// INSTRUCCIÓN 0

6/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre Escribir “ingrese el valor del coeficiente A” Leer A Escribir “ingrese el valor del coeficiente B” Leer B Escribir “ingrese el valor del coeficiente C” Leer C {Calcular las raíces} DB^2 – 4 *A*C E 2*A X1 = (-b+ raiz2(D))/E X2 = (-b- raiz2(D))/E {Escribir la solución} Escribir X1, X2 Fin

3.

TRADUCIR EL ALGORITMO EN EL LENGUAJE DE PROGRAMACIÓN JAVA.-

Ejercicio Complementario.-Elaborar un algoritmo que permita determinar la altura de un edificio, sabiendo que la luz solar proyecta por la mañana una sombra formando un triángulo rectángulo de 45° con la superficie terrestre y 30° por la tarde, tal como se muestra en la figura.

IV.- Actividad propuesta en clase: 4.1 Elaborar un algoritmo que permita hallar el área, el perímetro y la diagonal de un rectángulo, donde

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

7/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre a = largo, b = ancho.

Área = a * b Perímetro = 2a + 2b Diagonal =

V.- Actividades complementarias para la casa: 5.1.-Escribir el algoritmo y programa que me permita calcular la siguiente expresión E, ingresado los valores de a y b. b

E=

e log (a ) +√ a b a

5.2.-Escribir el algoritmo y programa que me permita hallar el valor absoluto de x/y representado en la expresión M.

∣ xy∣+ x

M=

5.3.- Elaborar un algoritmo que permita ingresar un número de cuatro cifras o dígitos y que sume sus cifras. 5.4.- Elaborar un algoritmo para leer las longitudes de los tres lados de un triángulo (L1, L2, L3) y calcular el área del mismo de acuerdo con la siguiente fórmula: area = SP(SP- L1)(SP - L2)(SP - L3) donde:

SP= L1 + L2+ L3 2 • ENTREGAR EL DESARROLLO DE ACTIVIDADES, PARA CADA ACTIVIDAD EL ANÁLISIS, DISEÑO EN HOJAS DE EXAMEN, A LAPICERO Y CODIFICACIÓN impreso mostrando la pantalla de ejecución. Linkografia:

http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=58&Itemid=180

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

8/9


INSTITUTO SUPERIOR KHIPU CARRERA PROFESIONAL DE COMPUTACION

Aplicaciones con Software Libre Ficha de calificación GUIA DE APLICACIÓN Nº 5 Estructuras de control secuencial y métodos predefinidos Nombre: …………………………………………………………………………………Código: …………………………………. Criterio

Puntaje

Actitudinal

20

Procedimental Ejercicio 1 y 2 de la guía

5

Actividad en clase 4.1

5

Actividad 5.1

5

Actividad 5.2

5 Total

Calificación Obtenida por el estudiante

20

Firma de Profesor ………………………………………….

Ing. Godofredo Poccori Umeres

gpoccori@khipu.edu.pe

9/9


Guia5 secuencial y libreria matematica java