Programa en java, ¿Cómo puedo hacer esto? (Netbeans)
Publicado por alejandro (5 intervenciones) el 28/11/2018 10:25:59
Hola, tengo este programa que resolver en java, que me pide solución a sentencias:
(abajo del problema está el programa )
1. Registrar los datos de los alumnos; los datos que se requieren son los siguientes: Clave, Nombre, Apellidos, Edad, Sexo (‘F’ o ‘M’), Licenciatura a la cuál desean inscribirse, Calificación Promedio de la preparatoria, Tutor, Hora de tutoría.
La Facultad tiene como política que si el alumno pretende inscribirse a la Licenciatura de Gestión de la Información en Redes Sociales, solo se le permitirá registrarse si su promedio de preparatoria es mayor o igual a 8.0. Para ello, será necesario enviar un mensaje en pantalla indicando que no es posible su registro.
2. Asignar un tutor (profesor tutor) al alumno. Para lograr esta tarea, primero deberá crearse un profesor tutor con los siguientes datos: Clave, Nombre, Apellidos, Área de Especialidad, Categoría del Profesor (‘A’, ‘B’,’C’) por default la categoría de un profesor es ‘A’ y Número de clases impartidas. Una vez creado el tutor deberá ser asignado a un alumno.
Esta funcionalidad de asignar un tutor, es parte del registro de un alumno.
Una vez terminado el registro de un alumno individual enviar los datos registrados por cada alumno a pantalla, indicando el número de caracteres del Nombre Completo del Alumno.
Los datos registrados de cada alumno, deberán guardarse en un Archivo con extensión .txt, el nombre del archivo deberá ser: alumnos.txt y deberá ser almacenado en el sistema de ficheros de la computadora donde se esté ejecutando el programa.
Mostrar el reporte de todos alumnos inscritos (que incluya todos los datos que se les solicitó en su registro). Para ello, deberá hacer lectura del texto almacenado en alumnos.txt.
Calcular el promedio de un número de calificaciones por alumno. Lo que se pretende con esta tarea es, que el usuario ingrese una clave de alumno, posteriormente ingrese el número de calificaciones de las cuáles se obtendrá el promedio y finalmente ingrese cada una de las calificaciones. El programa le debe mostrar en pantalla el promedio de las calificaciones con el siguiente mensaje: “El promedio del alumno con clave __ es __”.
Administrar las asignaturas: Esta funcionalidad permitirá al usuario registrar asignaturas con los siguientes datos: Clave, Nombre de asignatura, semestre de impartición y Profesor. A su vez, del Profesor se requerirán los siguientes datos: Clave, Nombre, Apellidos, Edad, Estado Civil, Nivel de Escolaridad y Categoría. El valor de la Categoría dependerá del Nivel de Escolaridad del Profesor: Nivel de Escolaridad Categoría Licenciatura ‘A’ Maestría ‘B’ Doctorado ‘C’
Si tiene cualquier otro nivel de Escolaridad su categoría será ‘X’.
Se podrán registrar varias asignaturas de una sola vez, para ello, deberá indicarle al usuario que tecle -1 para finalizar la captura de las asignaturas.
Una vez terminado el registro de cada asignatura individual enviar los datos registrados por cada asignatura a pantalla.
[Nota: Tanto Alumno como el Tutor y Profesor deberá derivar a su vez de una clase denominada Persona, la cual tendrá los datos generales como son: Clave, Nombre, Apellidos, Edad, Sexo]
A través de la nota, se deduce que tienes que hacerlo con herencia, por medio de paquetes lo he desarrollado
Estas son las líneas de código que he escrito en NetBeans:
(CLASE PADRE)
package secundariasvariaciones;
import java.util.Scanner;
public class Persona {
protected String clave, nombre, apellidos, sexo;
protected int edad;
Scanner entrada = new Scanner(System.in);
//Este método pide datos de registro al usuario
public void ingresardatos(){
System.out.print("Ingresa clave: ");
clave = entrada.next();
System.out.print("Ingresa nombre: ");
nombre = entrada.next();
System.out.print("Ingresa apellidos: ");
apellidos = entrada.next();
System.out.print("Ingresa edad: ");
edad = entrada.nextInt();
System.out.print("Ingresa sexo (M o F): ");
sexo = entrada.next();
}
}
(SUBCLASE)
package secundariasvariaciones;
public class Alumno extends Persona{
protected String licenciatura;
protected double promedio;
public void ingresardatos1 (){
System.out.print("Ingresa licenciatura de inscripción: ");
licenciatura = entrada.next();
System.out.print("Escribe promedio de preparatoria: ");
promedio = entrada.nextDouble();
}
}
(SUBCLASE)
package secundariasvariaciones;
public class Tutor extends Persona{
protected String areaDeEspecialidad;
protected String categoria;
protected int clasesImpartidas;
public void ingresardatos2 (){
System.out.print("Escribe área de especialidad del tutor: ");
areaDeEspecialidad = entrada.next();
System.out.print("Ingresa categoria del tutor: ");
categoria = entrada.next();
System.out.print("Clases impartidas por el tutor: ");
clasesImpartidas = entrada.nextInt();
}
}
(EN ESTA LÍNEA ESTÁ EL MÉTODO MAIN, Y DE AQUÍ LLAMO; POR MEDIO DEL PAQUETE, A LAS CARACTERÍSTICAS DE LA CLASE PERSONA )
package principal;
import java.util.Scanner;
import secundariasvariaciones.Alumno;
import secundariasvariaciones.Tutor;
public class Registro {
public static void main (String[] args){
System.out.println("Ingresa tus datos aspirante a alumno ");
Alumno pasoalumno = new Alumno();
pasoalumno.ingresardatos();
pasoalumno.ingresardatos1();
System.out.println("Ingresa datos del tutor ");
Tutor pasotutor = new Tutor();
pasotutor.ingresardatos();
pasotutor.ingresardatos2();
ESTO ES PARTE DE LA CLASE PRINCIPAL CON EL MÉTODO MAIN, PARA EL APARTADO PROMEDIO
class Calcularpromedio {
String clave1;
double calificaciones=1;
double calificacionesac=0;
double valors;
double promedio;
int suma, ncalificaciones;
Scanner entrada1 = new Scanner(System.in);
public void ingresarclave(){
System.out.print("Ingrese clave del alumno: ");
clave1 = entrada1.next();
System.out.print("Ingrese número de calificaciones que se resgistrarán: ");
ncalificaciones= entrada1.nextInt();
while(calificaciones <= ncalificaciones ){
System.out.print("Ingrese la nota número "+ calificaciones);
valors=entrada1.nextDouble();
calificacionesac +=valors;
calificaciones++;
}
promedio= calificacionesac / ncalificaciones;
System.out.print("El promedio del alumno con clave: "+clave1+promedio);
}
}
Podrían orientarme, por favor, a hacer: por favor
Al ejecutar el programa, este se detiene cuando finalizo de registrar los datos del tutor. ¿por qué no ejecuta lo del promedio?
-- cómo relaciono al tutor con el alumno
-- cómo creo la categoría del profesor
--cómo se hace una variable para la hora (hora de tutoría)
-- cómo registro la licenciatura; Licenciatura de Gestión de la Información en Redes Sociales, y que esta al poner el promedio que solicita, ejecute el mensaje. porque solo he hecho que al registrar cualquier dato y con el promedio menor a 8.0, aparezca el mensaje, pero al parecer tiene que hacerse con esas palabras específicas. lo intenté hacer por IF o WHILE (no tengo el código), pues siempre me aparecía un error: "String, int no puede ser convertido a boolean".
--cómo muestro en pantalla todos los datos del registro: como estoy usando scanner, pensé hacer una variable y luego un método, así:
String registro
public void Mostrarregistro (){
System.out.println(registro);
}
Pero no se dónde ponerlo, o siquiera si es correcto hacer uso de scanner para resolver el problema
espero puedan orientarme, gracias. :)
(abajo del problema está el programa )
1. Registrar los datos de los alumnos; los datos que se requieren son los siguientes: Clave, Nombre, Apellidos, Edad, Sexo (‘F’ o ‘M’), Licenciatura a la cuál desean inscribirse, Calificación Promedio de la preparatoria, Tutor, Hora de tutoría.
La Facultad tiene como política que si el alumno pretende inscribirse a la Licenciatura de Gestión de la Información en Redes Sociales, solo se le permitirá registrarse si su promedio de preparatoria es mayor o igual a 8.0. Para ello, será necesario enviar un mensaje en pantalla indicando que no es posible su registro.
2. Asignar un tutor (profesor tutor) al alumno. Para lograr esta tarea, primero deberá crearse un profesor tutor con los siguientes datos: Clave, Nombre, Apellidos, Área de Especialidad, Categoría del Profesor (‘A’, ‘B’,’C’) por default la categoría de un profesor es ‘A’ y Número de clases impartidas. Una vez creado el tutor deberá ser asignado a un alumno.
Esta funcionalidad de asignar un tutor, es parte del registro de un alumno.
Una vez terminado el registro de un alumno individual enviar los datos registrados por cada alumno a pantalla, indicando el número de caracteres del Nombre Completo del Alumno.
Los datos registrados de cada alumno, deberán guardarse en un Archivo con extensión .txt, el nombre del archivo deberá ser: alumnos.txt y deberá ser almacenado en el sistema de ficheros de la computadora donde se esté ejecutando el programa.
Mostrar el reporte de todos alumnos inscritos (que incluya todos los datos que se les solicitó en su registro). Para ello, deberá hacer lectura del texto almacenado en alumnos.txt.
Calcular el promedio de un número de calificaciones por alumno. Lo que se pretende con esta tarea es, que el usuario ingrese una clave de alumno, posteriormente ingrese el número de calificaciones de las cuáles se obtendrá el promedio y finalmente ingrese cada una de las calificaciones. El programa le debe mostrar en pantalla el promedio de las calificaciones con el siguiente mensaje: “El promedio del alumno con clave __ es __”.
Administrar las asignaturas: Esta funcionalidad permitirá al usuario registrar asignaturas con los siguientes datos: Clave, Nombre de asignatura, semestre de impartición y Profesor. A su vez, del Profesor se requerirán los siguientes datos: Clave, Nombre, Apellidos, Edad, Estado Civil, Nivel de Escolaridad y Categoría. El valor de la Categoría dependerá del Nivel de Escolaridad del Profesor: Nivel de Escolaridad Categoría Licenciatura ‘A’ Maestría ‘B’ Doctorado ‘C’
Si tiene cualquier otro nivel de Escolaridad su categoría será ‘X’.
Se podrán registrar varias asignaturas de una sola vez, para ello, deberá indicarle al usuario que tecle -1 para finalizar la captura de las asignaturas.
Una vez terminado el registro de cada asignatura individual enviar los datos registrados por cada asignatura a pantalla.
[Nota: Tanto Alumno como el Tutor y Profesor deberá derivar a su vez de una clase denominada Persona, la cual tendrá los datos generales como son: Clave, Nombre, Apellidos, Edad, Sexo]
A través de la nota, se deduce que tienes que hacerlo con herencia, por medio de paquetes lo he desarrollado
Estas son las líneas de código que he escrito en NetBeans:
(CLASE PADRE)
package secundariasvariaciones;
import java.util.Scanner;
public class Persona {
protected String clave, nombre, apellidos, sexo;
protected int edad;
Scanner entrada = new Scanner(System.in);
//Este método pide datos de registro al usuario
public void ingresardatos(){
System.out.print("Ingresa clave: ");
clave = entrada.next();
System.out.print("Ingresa nombre: ");
nombre = entrada.next();
System.out.print("Ingresa apellidos: ");
apellidos = entrada.next();
System.out.print("Ingresa edad: ");
edad = entrada.nextInt();
System.out.print("Ingresa sexo (M o F): ");
sexo = entrada.next();
}
}
(SUBCLASE)
package secundariasvariaciones;
public class Alumno extends Persona{
protected String licenciatura;
protected double promedio;
public void ingresardatos1 (){
System.out.print("Ingresa licenciatura de inscripción: ");
licenciatura = entrada.next();
System.out.print("Escribe promedio de preparatoria: ");
promedio = entrada.nextDouble();
}
}
(SUBCLASE)
package secundariasvariaciones;
public class Tutor extends Persona{
protected String areaDeEspecialidad;
protected String categoria;
protected int clasesImpartidas;
public void ingresardatos2 (){
System.out.print("Escribe área de especialidad del tutor: ");
areaDeEspecialidad = entrada.next();
System.out.print("Ingresa categoria del tutor: ");
categoria = entrada.next();
System.out.print("Clases impartidas por el tutor: ");
clasesImpartidas = entrada.nextInt();
}
}
(EN ESTA LÍNEA ESTÁ EL MÉTODO MAIN, Y DE AQUÍ LLAMO; POR MEDIO DEL PAQUETE, A LAS CARACTERÍSTICAS DE LA CLASE PERSONA )
package principal;
import java.util.Scanner;
import secundariasvariaciones.Alumno;
import secundariasvariaciones.Tutor;
public class Registro {
public static void main (String[] args){
System.out.println("Ingresa tus datos aspirante a alumno ");
Alumno pasoalumno = new Alumno();
pasoalumno.ingresardatos();
pasoalumno.ingresardatos1();
System.out.println("Ingresa datos del tutor ");
Tutor pasotutor = new Tutor();
pasotutor.ingresardatos();
pasotutor.ingresardatos2();
ESTO ES PARTE DE LA CLASE PRINCIPAL CON EL MÉTODO MAIN, PARA EL APARTADO PROMEDIO
class Calcularpromedio {
String clave1;
double calificaciones=1;
double calificacionesac=0;
double valors;
double promedio;
int suma, ncalificaciones;
Scanner entrada1 = new Scanner(System.in);
public void ingresarclave(){
System.out.print("Ingrese clave del alumno: ");
clave1 = entrada1.next();
System.out.print("Ingrese número de calificaciones que se resgistrarán: ");
ncalificaciones= entrada1.nextInt();
while(calificaciones <= ncalificaciones ){
System.out.print("Ingrese la nota número "+ calificaciones);
valors=entrada1.nextDouble();
calificacionesac +=valors;
calificaciones++;
}
promedio= calificacionesac / ncalificaciones;
System.out.print("El promedio del alumno con clave: "+clave1+promedio);
}
}
Podrían orientarme, por favor, a hacer: por favor
Al ejecutar el programa, este se detiene cuando finalizo de registrar los datos del tutor. ¿por qué no ejecuta lo del promedio?
-- cómo relaciono al tutor con el alumno
-- cómo creo la categoría del profesor
--cómo se hace una variable para la hora (hora de tutoría)
-- cómo registro la licenciatura; Licenciatura de Gestión de la Información en Redes Sociales, y que esta al poner el promedio que solicita, ejecute el mensaje. porque solo he hecho que al registrar cualquier dato y con el promedio menor a 8.0, aparezca el mensaje, pero al parecer tiene que hacerse con esas palabras específicas. lo intenté hacer por IF o WHILE (no tengo el código), pues siempre me aparecía un error: "String, int no puede ser convertido a boolean".
--cómo muestro en pantalla todos los datos del registro: como estoy usando scanner, pensé hacer una variable y luego un método, así:
String registro
public void Mostrarregistro (){
System.out.println(registro);
}
Pero no se dónde ponerlo, o siquiera si es correcto hacer uso de scanner para resolver el problema
espero puedan orientarme, gracias. :)
Valora esta pregunta


0