Ir al contenido principal

Lo de hoy en clases de java

Hola hoy vendre a resolver el ejercicio que la Ing. Veronica nos puso a hacer

El ejercicio decia de la siguiente manera:

Crear una clase de tipo Instrumeto Musical, cree las variables que usted crea convenientes, luego cree la clase principal que ademas contendra dos instancias para la clase Instrumento Musical. Ademas tiene que capturar los datos via teclado.

Solucion
bueno lo primero que yo haria es ver que tipos de variables son las que ocuparia una clase de tipo Instrumento Musical
Si no me equivoco serian de tipo String y de tipo double
las de tipo String, tendriamos

*tipo
*nombre
*color

y las de tipo double solo se me ocurre una
*precio

aunque no hay que descartar que podria ir una de tipo in que seria la cantidad, pero la oviaremos y luego la añadire cuando estemos viendo lo que es Metodos, ya que creo que seria muy conveniente usarla en ese caso, para que nos devuelva la total a pagar, que temdriamos que cancelar al compara cierta cantidad de instrumentos.

bueno el codigo nos queda de la siguiente manera:

/* 
Primero quenada importamos Scanner para que sea mas facil la abstraccion 
de los datos, a no ser que guardemos en dos archivos distintos cada clase, si fuera de ese modo esmuy recomendable agregar la instruccion import pero en la clase 
que contiene a main(), aqui lo haremos en un solo archivo por ser mas practico el ejercicio
*/
import java.util.Scanner;
class InstrumentoMusical
{
String nombre, tipo, color;
Double precio;
}

class DIMusical
{
public static void main(String []args)
{
InstrumentoMusical Im1 = new InstrumentoMusical();
InstrumentoMusical Im2 = new InstrumentoMusical();
/*
tambien es necesario crear nuestro lector de datos asi que lo creamos ahortita, 
aunque no afecta si lo hacemos despues
*/
 Scanner leer = new Scanner(System.in);
 System.out.println("Digite Nombre del intrumento");
//aqui comenzamos a capturar valores, este caso un nombre
Im1.nombre=leer.nextLine();
System.out.println("Digite Tipo de instrumento");
Im1.tipo=leer.nextLine();
System.out.println("Digite Color del instrumento");
Im1.color=leer.nextLine();
//aqui hay un pequeño cambio en la instruccion nexLine, porque ahora sera un tipo double
System.out.println("Digite Precio del instrumeto");
Im1.precio=leer.nextDouble();
/*
esto de aqui es solo para mejorar un poquito la salida del programa, 
apariencia en ontras palabras
*/
System.out.println();
System.out.println();
/*
y eso es todo pero para la instancia 1, y 
nos han pedido dos, solo nos falta mandarle la informacion porque ya la creamos anteriormente
*/
System.out.println("Digite Nombre del intrumento 2");
//aqui comenzamos a capturar valores, este caso un nombre
Im2.nombre=leer.nextLine();
/*
por algun motivo java no me deja hacer la captura
del nombre pero para instrumeto 2, asi que lo pondre dos veces
*/
Im2.nombre=leer.nextLine();
System.out.println("Digite Tipo de instrumento");
Im2.tipo=leer.nextLine();
System.out.println("Digite Color del instrumento");
Im2.color=leer.nextLine();
//aqui hay un pequeño cambio en la instruccion nexLine, porque ahora sera un tipo double
System.out.println("Digite Precio del instrumeto");
Im2.precio=leer.nextDouble();
/*
esto de aqui es solo para mejorar un poquito la salida del programa, 
apariencia en ontras palabras
*/
System.out.println();
System.out.println();
//ahora no nos queda mas que mandar a imprimir todo
System.out.println("El nombre del instrumeto 1 es:\t"+Im1.nombre+"\nEl tipo del instrumento es:\t"+Im1.tipo+"\nEl color del instrumento es:\t"+Im1.color+"\nEl precio es:$\t"+Im1.precio);
/*
esto de aqui es solo para mejorar un poquito la salida del programa, 
apariencia en ontras palabras
*/
System.out.println();
System.out.println();
System.out.println("El nombre del instrumeto 2 es:\t"+Im2.nombre+"\nEl tipo del instrumento es:\t"+Im2.tipo+"\nEl color del instrumento es:\t"+Im2.color+"\nEl precio es:$\t"+Im2.precio);
}
}

Si ya se que me quedo largo pero es para especificar punto a punto que es lo que hace cada cosa, talves a mas de alguno le sirva, para ir entendiendo donde estan sus errores mas comunes.

Una captura del programa corriendo
 

Espero les haya agradado mi aportecito a su conocimento

 

Comentarios

Entradas populares de este blog

Northwind para Mysql y otras

Supongamos que necesitamos una base de datos para comenzar a hacer pruebas y a la vez necesitamos que esa base de datos contenga mucha información con la cual trabajar. En mis tiempos de universidad existía una base de datos que utilizábamos en los laboratorios con SQL Server y c# para mostrar los datos en algún formulario. El nombre era Northwind. El problema es que era solo para SQL Server, pero alguien en se dio a la tarea de exportar esa base de datos a MySql y es justo lo que te vengo a mostrar acá. Hace un tiempo atrás clone de los repositorios de Google Code   esa información (que como algunos de ustedes sabrá dejara de estar al servicio de todos en un tiempo). Modifique un poco la DB de Mysql para que se pudiera ejecutar el script sin ningún problema. Lo interesante de todo esto es que puedes utilizar los demás script para diferentes gestores de base de datos Se advierte que para poder usarlas adecuadamente hay que modificar los campos de tipo longblob y qu...

How to upload File from form data POST in Android with Retrofit 2

 The last day I explain how to upload a simple CSV file using node . And now I teach how to upload from android device. Get source code here:  GitHub This article is write in java... later I'll add the method for kotlin. The logic is not changed, only the format code. 1) Is necessary add the dependencies in gradle: module implementation 'com.google.code.gson:gson:2.8.6' // RETROFIT // implementation 'com.squareup.retrofit2:retrofit:2.6.2' implementation 'com.squareup.retrofit2:converter-gson:2.6.2' implementation 'com.squareup.retrofit2:converter-scalars:2.5.0' 2) Add permissions in AndroidManifest.xml and modified the application for work with network security policy <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> in applitacion add ...

Instalacion de apk desde el adb (Linux y Windows)

Por lo general siempre instalamos nuestras aplicaciones por medio de algún gestor oh tienda de aplicaciones como el Google Play oh F-Droid por mencionar a algunos. Pero que pasa cuando no podemos acceder a esas tiendas y hemos modificado algunas cosas del sistema como por ejemplo la eliminación del teclado, por el simple hecho de que no nos gusta, oh a ver quitado el propio launcher del sistema, aunque suene ilógico hay personas que lo hacen (yo por ejemplo lo he hecho a modo de prueba en un Kiosera que tuve, ya que me pareció demasiado pesado y lelo el launcher y el teclado por defecto y llegue a una optimizacion del SO de un 100%). Quizás eso es lo mejor de Android, el completo control que este te da si eres root, sin mas preámbulo te muestro como instalar las apk por medio del ADB de Android. Pero antes de que los vea me gustaría aclarar que esto es aplicable tanto para dispositivos físicos como emuladores, en el caso de ser dispositivos físicos asegúrate de tener los dr...