Hola, tengo una pequeña duda con un programa que estoy haciendo, se trata de mostrar la hora universal(24 horas) y hora estadar(12 horas/AM/PM), el problema es que cuando meto digamos las 6 horas con 3minutos con 12 segundos, el reloj me sale asi 6:3:12 AM, como hago o que puedo hacer cuando meto un digito del 0 al 9, me agregue otro cero a la izquierda para darle un formato mas real
aqui adjunto el codigo
PruebaTiempo
Código C#:
Ver originalusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PruebaTiempo
{
class PruebaTiempo
{
static void Main(string[] args)
{
Tiempo miTiempo = new Tiempo();
int horas1;
int minutos1;
int segundos1;
Console.WriteLine("Reloj!!!");
Console.WriteLine("La hora universal es de:" + miTiempo.horaUniversal());
Console.WriteLine();
Console.WriteLine("La hora inicial es de: " + miTiempo.ToString());
Console.WriteLine();
Console.WriteLine("Establezca la hora: ");
horas1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("Establezca los minutos:");
minutos1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("Establezca los segundos:");
segundos1 = Convert.ToInt32(Console.ReadLine());
miTiempo.establecerHora(horas1, minutos1, segundos1);
Console.WriteLine();
Console.WriteLine("La hora universal es de:" + miTiempo.horaUniversal());
Console.WriteLine();
Console.WriteLine("La hora inicial establecida es de: " + miTiempo.ToString());
Console.WriteLine();
}
}
}
Tiempo
Código C#:
Ver originalusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PruebaTiempo
{
class Tiempo
{
private int hora = 00;
private int minutos = 00;
private int segundos = 00;
private string modo;
public void establecerHora(int h, int m, int s)
{
if (h >= 0 && h < 24)
{
hora = h;
}
else
{
hora = 00;
}
if (m >= 0 && m < 60)
{
minutos = m;
}
if (s >= 0 && s < 60)
{
segundos = s;
}
else
{
segundos = 00;
}
}
public string horaUniversal()
{
string horas2;
string minutos2;
string segundos2;
horas2 = Convert.ToString(hora);
minutos2 = Convert.ToString(minutos);
segundos2 = Convert.ToString(segundos);
return string.Format(horas2+":"+minutos2+":"+segundos2);
}
public override string ToString()
{
string horaNormal;
string minutoNormal;
string segundoNormal;
if (hora < 12)
{
modo = "AM";
}
else
{
modo = "PM";
}
if (hora == 0 || hora == 12)
{
hora = 12;
}
else
{
hora = hora % 12;
}
horaNormal = Convert.ToString(hora);
minutoNormal = Convert.ToString(minutos);
segundoNormal = Convert.ToString(segundos);
return string.Format(hora + ":" + minutos + ":" + segundos + " " + modo);
}
}
}
De antemano grax por la ayuda
Saludos