/*
* Created by SharpDevelop.
* User: manuel
* Date: 08/11/2016
* Time: 02:32 p. m.
*/
using System;
namespace Examen2
{
public class CalculosElectronicos:Interface2
{
public double V, R, I;
public CalculosElectronicos()
{
}
double Interface1.CalculoVoltaje(double r, double i){
this.R = r;
this.I = i;
this.V = this.R*this.I;
return this.V;
}
double Interface2.CalculoResistencia(double v, double i){
this.V = v;
this.I = i;
try{
this.R = this.V/this.I;
}catch(DivideByZeroException){
return 0.0;
}
return this.R;
}
}
}
/*
* Created by SharpDevelop.
* User: manuel
* Date: 08/11/2016
* Time: 02:27 p. m.
*/
using System;
//using System.Exception;
namespace Examen2
{
class Program
{
class Comprueba{
public int Convertir(String valor){
int x;
try{
x = Convert.ToInt16(valor);
}catch(FormatException){
Console.WriteLine("Valores Incorrectos! Pulsa una tecla para continuar.");
Console.ReadKey(true);
return 0;
}
return x;
}
}
public static void Main(string[] args)
{
Interface2 cal = new CalculosElectronicos();
Comprueba comprueba = new Comprueba();
int op = 0;
double v,i,r;
bool menu = true;
while(menu){
Console.WriteLine("1.- Calcular Voltage | 2.- Calcular Resistencia?");
try{
op = Convert.ToInt16(Console.ReadLine());
}catch(FormatException){
Console.WriteLine("Valores Incorrectos! Pulsa una tecla para continuar.");
Console.ReadKey(true);
}
//El error fué lógico debido a que la instrucción de conversión
//se estaba ejecutando antes del bloque try catch
if(op == 1){
Console.WriteLine("R = 3 ohms, I = 4 amps y V = {0} volts", cal.CalculoVoltaje(3,4));
menu = false;
} else if(op == 2){
Console.WriteLine("Voltaje V?");
v = comprueba.Convertir(Console.ReadLine());
Console.WriteLine("Corriente I?");
i = comprueba.Convertir(Console.ReadLine());
Console.WriteLine("V = {0} volts, I = {1} amps y R = {2} ohms",v,i, cal.CalculoResistencia(v,i));
menu = false;
} else{
Console.WriteLine("Error!");
}
}
//Sabemos que un usuario puede, de manera
//erronea introducir un caracter indebido.
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
P.O.O, Estructura de Datos, Tópicos Selectos de Programación, Fundamentos de Programación, Teoría de la Computación, Matemáticas para Computadoras, Fundamentos de Desarrollo de Sistemas, Programación Web, Graficación.
miércoles, 16 de noviembre de 2016
Uso de Excepciones en C#
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario