Está en la página 1de 3

UNMSM FIEE Ing.

Telecomunicaciones Programación Orientado a Objetos


2020 - I Práctica calificada 01

Apellidos: Alvinagorta Huanquis,

Nombre(s): Joel Código: 19190328

Fecha: 06 de JULIO de 2020 NOTA


Duración: 90 minutos

PREGUNTA 01 (6)
En el siguiente programa, indique en qué líneas existe algún error y describa o corrija el error.
Indique el error como comentario y numere desde 1. Ejemplo mostrado: 4

/ Programa demostrativo en Java para detectar errores de codificación


class practicaJava
{
final byte cantidad_personas = 200;
public static void main()
{
char Data = 'G';
char b, c = 40+1; //error 1:
char micaracter = “A”;
byte X = 20 + 280; //4
int i = 89 + int(65530.2);
byte b2 = 8868828955; //error2:
short s = (int)33200.4; //error3:
short s1 = 87878787878; //error4:
double d = 4.355453532f;

//Tome las dos instrucciones en conjunto


y = (2 Math.power(x, -2) + 4*x*x - 8*x)/Math.sqrt(9*x*x*x - 2*x*x +x) //error5
System.out.print("EL RESULTADO ES = y");

//Tome las tres instrucciones en conjunto


Scanner input = new Scanner.System.in(); //error6
x = input.nextFloat();
System.out.print("INGRESE EL VALOR DE x: ");
float x;
}
}

Descripción de errores (solo describa no corrija)


1 error 1: el comando char solo se usa para nombrar un carácter no numeros
2 error2: el tipo de dato byte no acepta numero mayor a 127
3 error3: el tipo de dato short no acepta numero mayor a 32767
4 error4: el tipo de dato short no acepta numero mayor a 32767
5 error5: falta definir a la variable x e y , falto la coma al final del valor de y, falto un + delante de y para
llamar al resultado y en el mensaje
6 error6: System.in va dentro del paréntesis, primero se define la variable float x; luego x=input.nextFloat()
UNMSM FIEE Ing. Telecomunicaciones Programación Orientado a Objetos
2020 - I Práctica calificada 01

PREGUNTA 02 (7)
Elabore un programa que reciba como entrada una cierta cantidad de tiempo, expresado en días, y determine la
cantidad de años, meses, semanas y días que contiene.

a) Mostrar la codificación, solicitar dato entrada y generar respuesta


b) Comentar cada línea de código
c) Ejecutar paso a paso y mostrar resultados parciales/final (instrucción por instrucción) para algún valor de
entrada mayor a 1000.

Asumir año de 365 días, meses de 30 días y semanas de 7 días.


Ejemplo: 837 días contiene 2 años, 3 meses, 2 semanas y 3 días

package com.mycompany.lab01;
//PRIMERO AÑADIMOS EL PAQUETE DE JAVA.UTIL.SCANNER A LA CLASE
import java.util.Scanner; // el programa usa JOptionPane
* @author JOEL
public class main2 {
public static void main(String[]args){
//CREAMOS EL OBJETO
Scanner conversionDeDias=new Scanner (System.in);
//ESCRIBIMOS LO DATOS QUE VAMOS A UTILIZAR
double dias;
double años;
long añosEnteros;
long mesesEnteros;
double mesesEnterosTotales;
double semanasTotales;
double semanas;
double Dias;
// ABRIMOS UN MENSAJE PARA QUE EL USARIO INGRESE EL DATO
System.out.println("Ingrese el numero de dias: ");
dias=conversionDeDias.nextDouble();
//HACEMOS LA CONVERSION DE AÑOS A DIAS DIVIDIENDO ENTRE 365
años= dias/365;
//CON ESTE COMANDO SE MOSTRARA LA PARTE ENTERA DELA OPERACION
añosEnteros=(long)Math.floor(años);
//AHORA TRABAJAMOS CON LOS MESES USANDO EL RESTO DE DIAS % 365
mesesEnterosTotales=dias%365;
//USANDO EL RESTO DE DIAS DIVIDMOS ENTRE 30 PARA OBTENER EL NUMERO DE MESES
mesesEnterosTotales=mesesEnterosTotales/30;
//CON ESTE COMANDO MOSTRARA LOS VALORES ENTEROS
mesesEnteros=(long)Math.floor(mesesEnterosTotales);
//OBTENDREMOS EL RESTO PARA CALCULAR LAS SEMANAS
semanasTotales=(dias%365);
//HALLAMOS LAS SEMANAS CON EL RESTO
semanasTotales=(semanasTotales%30);
semanasTotales=(semanasTotales/7);
//USAREMOS ESTE COMANDO PARA QUE APAREZCA SOLO EL ENTERO
UNMSM FIEE Ing. Telecomunicaciones Programación Orientado a Objetos
2020 - I Práctica calificada 01

semanas=(long)Math.floor(semanasTotales);
//CALCULAMOS LOS DIAS CON EL RESTO DE LAS SEMANAS
Dias=(long)Math.floor(mesesEnterosTotales%7);
//USAMOS EL MENSAJE PARA MOSTRAR EL RESULTADO DE LA CONVERSION
System.out.println(dias+" dias equivale a " +añosEnteros+ " años " +mesesEnteros+ " meses " +semanas+ " semanas
"+Dias+ " dias");

PREGUNTA 03 (7)
Elabore un programa que solicite un monto de venta en dólares y un monto de impuesto en porcentaje (entero) y
determine:

- Valor de venta en soles


- Valor de impuesto en soles
- Valor de venta total en soles

a) Mostrar la codificación, solicitar dato entrada y generar respuesta


b) Comentar cada línea de código
c) Ejecutar paso a paso y mostrar resultados parciales/final (instrucción por instrucción) para un caso de
ejemplo.

public static void main(String[]args){


//DEFINIMOS EL TRABAJO
Scanner trabajo=new Scanner (System.in);
//DEFINIMOS LAS VARIABLES QUE VAMOS A UTILIZAR
double ventaEnDolares;
double impuestoEnPorcentaje;
double ValorVenta;
int ValorImpuesto;
double ValorTotal;
//USAMOS EL COMANDO PARA QUE EL USARIO INGRESE SUS DATOS
System.out.println("Ingrese el numero la venta en dolare ")
ventaEnDolares=trabajo.nextDouble();
System.out.println("Ingrese el valor de impuestoen porcentaje");
impuestoEnPorcentaje=trabajo.nextInt();
//CONVERTIMOS DE DOLARES A SOLES LOS VALORES DE VENTA E IMPUESTO
ValorVenta=ventaEnDolares*3.33;
ValorImpuesto=impuestoEnPorcentaje*3.33;
ValorTotal=ValorVenta+ValorImpuesto;
//COMANDO DE RESULTADO PARA LLAMAR A LOS RESULTADO DE LA CONVERSION
System.out.println("EL VALOR DE VENTA EN SOLES ES: " +ValorVenta+ " soles Y valor impuesto en soles es
"+ValorImpuesto+" soles "
+ " Y el valor total de la venta es:" +ValorTotal);

También podría gustarte