Foros del Web » Programación para mayores de 30 ;) » .NET »

Evitar que se cierre el programa

Estas en el tema de Evitar que se cierre el programa en el foro de .NET en Foros del Web. Hola a todos. Como debo hacer para que al ingresar por ejemplo a25,12.5,25m,350 no se cierre el programa?.- Código: using System; using System.Collections.Generic; public class ...
  #1 (permalink)  
Antiguo 27/12/2012, 17:12
RoDaVi
Invitado
 
Mensajes: n/a
Puntos:
Evitar que se cierre el programa

Hola a todos.
Como debo hacer para que al ingresar por ejemplo a25,12.5,25m,350 no se cierre el programa?.-

Código:
using System;
using System.Collections.Generic;

public class Entero
{
   public static void Main()
   {
      Entero objentero;
      objentero = new Entero();
      byte numero = 0;
      while(objentero.EsNumeroValido(out numero))
      {
         if(numero > 10)
         {
            Console.SetCursorPosition(02,06);
            Console.Write("La puntuación no puede súperar los 10 puntos, intentelo nuevamente....");
         }
         else{break;}
      }
      Console.SetCursorPosition(02,06);
      Console.Write("                                                                                                      ");
      Console.SetCursorPosition(02,06);
      Console.Write("Apriete una tecla para cerrar la aplicación...");
      Console.ReadKey();
   }
   
   private bool EsNumeroValido(out byte numero)
   {
      Console.SetCursorPosition(02,02);
      Console.Write("                                                       ");
      Console.SetCursorPosition(02,02);
      Console.Write("Ingrese un entero(máximo 10)...:");
      string numeroDelInput = Console.ReadLine();
      return byte.TryParse(numeroDelInput, out numero);
   }
}
Espero la ayuda de Uds. Porque hace unos días que lo intento y no lo logro.-

Saludos.
Daniel
  #2 (permalink)  
Antiguo 28/12/2012, 07:20
Avatar de Hiruma-Sama  
Fecha de Ingreso: agosto-2007
Ubicación: Floresta, Buenos Aires, Argentina.
Mensajes: 234
Antigüedad: 16 años, 7 meses
Puntos: 5
Respuesta: Evitar que se cierre el programa

por ejemplo, podrías poner algo para 'leer' algo ingresado por el usuario, o bien una 'pausa' ...

para lo de leer:
String texto=Console.ReadLine();

para lo de la pausa (al thread principal):
Thread.Sleep(2000); //2000 seria en milisegundos, eso aprox. son 2 segundos creo.
  #3 (permalink)  
Antiguo 28/12/2012, 16:55
RoDaVi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Evitar que se cierre el programa

Hola Hiruma-Sama
Con respecto a lo primero es lo que hago en esta linea de código:
string numeroDelInput = Console.ReadLine();

Y en cuanto a lo segundo no le puedo decir al operador apurate
que en 10 segundo si no haces un ingreso correcto se cerrara la
aplicación.-

Bueno tal vez sea algo que no se pueda hacer.-

Saludos.
Daniel
  #4 (permalink)  
Antiguo 31/12/2012, 02:02
Avatar de JxDarkAngel  
Fecha de Ingreso: septiembre-2009
Mensajes: 82
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Evitar que se cierre el programa

Intenta poner un:

Console.ReadLine();

después de esta linea:
Console.Write("Apriete una tecla para cerrar la aplicación...");
  #5 (permalink)  
Antiguo 31/12/2012, 02:05
Avatar de JxDarkAngel  
Fecha de Ingreso: septiembre-2009
Mensajes: 82
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Evitar que se cierre el programa

Si quieres que en vez de que se salga vuela a pedir el valor. Tienes que usar esto:

MENU: -> Esto va arriba de la linea de codigo en donde quieres regresar.

Puedes cambiar este mensaje: Console.Write("Apriete una tecla para cerrar la aplicación...");
por

Console.Write("Apriete una tecla para regresar...");

y despues haces esto:

goto MENU;
  #6 (permalink)  
Antiguo 02/01/2013, 06:32
RoDaVi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Evitar que se cierre el programa

Hola
Muchas gracias JxDarkAngel por enseñarme a utilizar algo más.-
Bueno con el goto funciona perfectamente, pero les dejo mi otra
manera de hacer que funcione, solo que en otro foro les pareció
que era un código ilegible x lo menos esta línea.-

while(!Int32.TryParse(Console.ReadLine(), out miNumeroDos))

Código:
using System;
using System.Collections.Generic;

public class ElMayor
{
	public static void Main(string[] args)
	{
		ElMayor objElMayor;
		objElMayor = new ElMayor(); 
		objElMayor.entorno();
		objElMayor.ingreso();		
	}

	void entorno()
	{
		Console.Title = " El mayor";
		Console.BackgroundColor = ConsoleColor.Blue;
		Console.ForegroundColor = ConsoleColor.Yellow;
		Console.SetWindowSize(80,20);
		Console.Clear();
	}
	
	void ingreso()
	{
		int miNumeroUno = 0, miNumeroDos = 0; 
	
		do
		{	
			Console.Clear();
			
			Console.SetCursorPosition(02,02);
			Console.Write(" ---------- Ingrese 2 enteros y el programa le indicará el mayor ----------");
			Console.SetCursorPosition(02,04);
			Console.Write("Ingrese un entero....:");
			
			while(!Int32.TryParse(Console.ReadLine(), out miNumeroUno))		
			{
				Console.SetCursorPosition(24,04);
				Console.Write("                                                  ");
				Console.SetCursorPosition(24,04);
			}
		
			Console.SetCursorPosition(02,06);
			Console.Write("Ingrese un entero....:");
		
			while(!Int32.TryParse(Console.ReadLine(), out miNumeroDos))		
			{
				Console.SetCursorPosition(24,06);
				Console.Write("                                                  ");
				Console.SetCursorPosition(24,06);
			}

			if(miNumeroUno == miNumeroDos)
			{
				Console.SetCursorPosition(02,08);
				Console.Write("Los números deben ser distintos, apriete una tecla para nuevo ingreso...");
				Console.ReadKey();
			}	
		}while(miNumeroUno == miNumeroDos);
			
		int ElMayor = (miNumeroUno > miNumeroDos) ? 4 : 6;
		
		Console.SetCursorPosition(40,ElMayor);
		Console.Write("<--  el mayor");
		
		Console.SetCursorPosition(02,09);
		Console.Write("Apriete una tecla para cerrar la aplicación...");
		Console.ReadKey();

	}	
}
Serán distintos puntos de vista, a pesar de mi poca experiencia
no me lo parece.-

Saludos.
Daniel

Etiquetas: cierre, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:42.