Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Jp123

Páginas: [1]
1
De todo un poco... / como cambiar formatos de horas?(reedición)
« en: 25 de Noviembre 2022, 19:50 »
Hola comunidad.
Anteriormente, ya había publicado un problema con la misma pregunta, pero me percaté que hice la pregunta mal e incompleta.
Realmente necesito ayuda al momento que quiero imprimir el caso 6 me da error:

case 6:
                    ingreso.impHora24(String str);
                    break;
Realmente no se que estoy haciendo mal.
Adjunto el código completo...

/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template
 */
package p33;
import java.util.Scanner;

/**
 *
 * @author user
 */
public class P33 {
    int hora;
    int minutos;
    int segundos;

    public P33() {
        hora = 0;
        minutos = 0;
        segundos = 0;
    }
    public P33(int hora, int minutos, int segundos) {
        this.hora = hora;
        this.minutos = minutos;
        this.segundos = segundos;
    }

    public int getHora() {
        return hora;
    }

    public int getMinutos() {
        return minutos;
    }

    public int getSegundos() {
        return segundos;
    }

    public void setHora(int hora) {
        this.hora = hora;
    }

    public void setMinutos(int minutos) {
        this.minutos = minutos;
    }

    public void setSegundos(int segundos) {
        this.segundos = segundos;
    }
   
    public void horaValida(){
        if ((hora>=0 && hora<=24) && (minutos>=0 && minutos<=59) && (segundos>=0 && segundos<=60)){
            System.out.println("La hora esta correctamente ingresada");                       
        }else {
            System.out.println("La hora no esta ingresada correctamente");
        }   
    }
     public void incrementarHora24(){
        hora = hora+1;
        if (hora>=0  && (hora<24)){
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");                       
        }else {
            hora = 0;
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");     
        } 
     }
       
     public void impHora12(){
     
        if (hora>=1  && (hora<12)){
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+" en formato 12 horas");                       
        }else {
            hora = hora-12;
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+" formato 12 horas");     
        } 
       
    }
     
      public static void impHora24(String str){
    // Get hours
    int h1 = (int)str.charAt(1) - '0';
    int h2 = (int)str.charAt(0) - '0';
    int hh = (h2 * 10 + h1 % 10);
 
    // If time is in "AM"
    if (str.charAt(8) == 'A')
    {
        if (hh == 12)
        {
            System.out.print("00");
            for (int i = 2; i <= 7; i++)
                System.out.print(str.charAt(i));
        }
        else
        {
            for (int i = 0; i <= 7; i++)
                System.out.print(str.charAt(i));
        }
    }
 
    // If time is in "PM"
    else
    {
        if (hh == 12)
        {
            System.out.print("12");
            for (int i = 2; i <= 7; i++)
                System.out.print(str.charAt(i));
        }
        else
        {
            hh = hh + 12;
            System.out.print(hh);
            for (int i = 2; i <= 7; i++)
                System.out.print(str.charAt(i));
        }
    }
}
     
      public void incrementarMinutos(){
        minutos = minutos+1;
        if (minutos>=0  && (minutos<60)){
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");                       
        }else {
             
            minutos = 0;
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");     
        }   
      }
      public void incrementarSegundos(){
        segundos = segundos+1;
        if (segundos>=0  && segundos<60){
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");                       
        }else {
            segundos = 0;
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+"hora militar");     
        }   
      }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int hora, minutos, segundos, opc;
        P33 ingreso = new P33();
        Scanner sc = new Scanner(System.in);
        do{
            System.out.println("\n1) ingresar la hora");
            System.out.println("2) validar hora");
            System.out.println("3) incrementar una hora");
            System.out.println("4) incrementar un minuto");
            System.out.println("5) incrementar un segundo");
            System.out.println("6) imprimir hora en formato militar");
            System.out.println("7) imprimir hora en formato 12 horas");
            System.out.println("8) Salir ");
           
            opc = sc.nextInt();
            switch (opc) {
                case 1:
                    System.out.println("ingrese la hora");
                    hora = sc.nextInt();
                    System.out.println("ingrese los minutos");
                    minutos = sc.nextInt();
                    System.out.println("ingrese los segundos");
                    segundos = sc.nextInt();
                    ingreso.setHora(hora);
                    ingreso.setMinutos(minutos);
                    ingreso.setSegundos(segundos);
                    break;
                case 2:
                    ingreso.horaValida();
                    break;
                case 3:
                    ingreso.incrementarHora24();
                    break;
                case 4:
                    ingreso.incrementarMinutos();
                    break;
                case 5:
                    ingreso.incrementarSegundos();
                    break;
                case 6:
                    ingreso.impHora24(String str);
                    break;
                case 7:
                    ingreso.impHora12();
                    break;
                   
            }
        } while(opc!=8);
    }
}

2
De todo un poco... / como cambiar formatos de horas?
« en: 24 de Noviembre 2022, 17:54 »
Holap, en esta nueva incógnita no he hallado como puedo cambiar una hora ingresada en formato de 12 horas y cambiarla a hora militar. (Java)
Si pudieran ayudarme se los agradecería mucho.

 public void impHora24(){
     
        if (hora>=0  && (hora<=24)){
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+" en formato militar");                       
        }else {
            hora = hora+12;
            System.out.println("La hora nueva es: "+hora+":"+minutos+":"+segundos+" hora militar");     
        } 
     }
     
      public void amPm(int hora, int minutos, int segundos){
         
         
      }

3
Muchísimas gracias @Kabuto, realmente me impresiona la facilidad con la que pudiste responder dicha tarea. Eres impresionante.

4
El lenguaje es Java. Estoy iniciando en esto de la programación y he intentado hacer este ejercicio de muchas maneras, pero aún no le hallo respuesta.

Estaría muy agradecida si me ayudaran. Gracias :)

La calificación de un estudiante es E si nota es mayor que 4.5, B si está entre 4.0 y 4.5, R si está entre 3.5 y 4.0, M si está entre 3.0 y 3.5, y I si es menor de 3.0. No se incluye el límite inferior del intervalo. Realizar un programa en Java que implemente un método para identificar la calificación en letra del estudiante, la calificación debe de ser ingresada por teclado por el usuario en números.


/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template
 */
//La calificación de un estudiante es E si nota es mayor que 4.5,B si está entre 4.0 y 4.5, R si está entre 3.5 y 4.0, M si está entre 3.0 y 3.5, y I si es menor de 3.0. No se incluye el límite inferior del intervalo. Realizar un programa en Java que implemente un método para identificar la calificación en letra del estudiante, la calificación debe de ser ingresada por teclado por el usuario en números//
package datos_alumno;
import javax.swing.JOptionPane;
/**
 *
 * @author INTEL
 */
public class Datos_alumno{
   
    String nombre;
    Boolean calificacion;
   
    public void pideDatos()
    {
        nombre=JOptionPane.showInputDialog("Ingrese el nombre: ");
        calificacion=Boolean.parseBoolean(JOptionPane.showInputDialog("Ingrese la calificacion: "));
       
    }
   
    public void estado()
    {
            if(calificacion=4.5 <=5.0)
        {
            JOptionPane.showMessageDialog(null,"Nota: E");
           
        }
            else
        {
           
        }
    }
    public void estado2()
    {
            if(calificacion =4.0<=4.5)
        {
            JOptionPane.showMessageDialog(null,"Nota: B");
        }
            else
        {
           
        }
    }
    public void estado3()
    {
            if(calificacion=3.5<=4.0)
        {
            JOptionPane.showMessageDialog(null,"Nota: R");
        }
            else
        {
            JOptionPane.showMessageDialog(null,"Nota: E");
            JOptionPane.showMessageDialog(null,"Nota: B");
            JOptionPane.showMessageDialog(null,"Nota: M");
            JOptionPane.showMessageDialog(null,"Nota: L");
           
           
        }
    }
    public void estado4()
    {
            if(calificacion=3.0<=3.5)
        {
            JOptionPane.showMessageDialog(null,"Nota: M");
        }
            else
        {
            JOptionPane.showMessageDialog(null,"Nota: E");
            JOptionPane.showMessageDialog(null,"Nota: B");
            JOptionPane.showMessageDialog(null,"Nota: R");
            JOptionPane.showMessageDialog(null,"Nota: L");
        }
    }
    public void estado5()
    {
            if(calificacion=1.0<=3.0)
        {
            JOptionPane.showMessageDialog(null,"Nota: L");
        }
            else
        {
            JOptionPane.showMessageDialog(null,"Nota: e");
            JOptionPane.showMessageDialog(null,"Nota: B");
            JOptionPane.showMessageDialog(null,"Nota: M");
            JOptionPane.showMessageDialog(null,"Nota: R");
        }
    }   
     
        public void muestreDatos()   
       
        {
            JOptionPane.showMessageDialog(null,"El nombre del estudiante es: "+nombre);
            JOptionPane.showMessageDialog(null,"La calificacion es: "+calificacion);
           
           
        }
    }
           



Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".