:laugh:hola lo que pasa es que me dejaron una calculadora basica en c#, de suma,resta division, multiplicacion, division y potencia, para suma,resta,potencia el resultado debe ser en enteros, para multiplicacion en float y division en double hice el codigo pero la multipliccion y division me toma las entradas como enteras elimina el decimal ejemplo 1.5 *2= 2 como puedo solucionarlo aqi el codigo
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//Programa de Operaciones
namespace Operaciones
{
class Program
{
//metodos para devolver el valor
static int Suma(int a1, int a2)
{
return a1 + a2;
}
static int Resta(int a1, int a2)
{
return a1 - a2;
}
static float Multiplicacion(float a3, float a4)
{
return a3 * a4;
}
static double Division(double a1, double a2)
{
if (a2 != 0)
{// Si a2 es distinto de 0...
return a1 / a2;
}
return 0;
}
static int Potencia(int a1, int a2)
{
int pot = a1;
for (int i = 1; i < a2; i++)
{
pot *= a1;
}
return pot;
}
// PRINCIPAL DEL PROGRAMA...
static void Main(string[] args)
{
int s1, s2;
int r1, r2;
float m1, m2;
double d1, d2;
int p1, p2;
int opcion;
Console.Write("1º) Suma" + "\n" + "2º) Resta" + "\n" + "3º) Multiplicación" + "\n" + "4º) División" + "\n" + "5º) Potencia " + "\n");
Console.Write("Seleccione una opción: \n");
opcion = Convert.ToInt16(Console.Read());
opcion -= 0x30;
switch (opcion)
{
case 1:
Console.WriteLine("Escriba el primer entero: ");
Console.ReadLine();
s1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero:\n");
Console.ReadLine();
s2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La suma es: {0}", Suma(s1, s2));
break;
case 2:
Console.WriteLine("Escriba el primer entero:");
Console.ReadLine();
r1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero: ");
Console.ReadLine();
r2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La resta es:{0}", Resta(r1, r2));
break;
case 3:
Console.WriteLine("Escriba el primer numero:");
Console.ReadLine();
m1 = (Convert.ToSingle(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo numero: ");
Console.ReadLine();
m2 = (Convert.ToSingle(Console.Read())) - 0x30;
Console.WriteLine("La multiplicacion es:{0}", Multiplicacion(m1, m2));
break;
case 4:
Console.WriteLine("Escriba el primer numero:");
Console.ReadLine();
d1 = (Convert.ToDouble(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo numero: ");
Console.ReadLine();
d2 = (Convert.ToDouble(Console.Read())) - 0x30;
Console.WriteLine("La division es:{0}", Division(d1, d2));
break;
case 5:
Console.WriteLine("Escriba el primer entero:");
Console.ReadLine();
p1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero: ");
Console.ReadLine();
p2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La potencia es:{0}", Potencia(p1, p2));
break;
}
Console.ReadKey();
}
}
}
de antemano gracias
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//Programa de Operaciones
namespace Operaciones
{
class Program
{
//metodos para devolver el valor
static int Suma(int a1, int a2)
{
return a1 + a2;
}
static int Resta(int a1, int a2)
{
return a1 - a2;
}
static float Multiplicacion(float a3, float a4)
{
return a3 * a4;
}
static double Division(double a1, double a2)
{
if (a2 != 0)
{// Si a2 es distinto de 0...
return a1 / a2;
}
return 0;
}
static int Potencia(int a1, int a2)
{
int pot = a1;
for (int i = 1; i < a2; i++)
{
pot *= a1;
}
return pot;
}
// PRINCIPAL DEL PROGRAMA...
static void Main(string[] args)
{
int s1, s2;
int r1, r2;
float m1, m2;
double d1, d2;
int p1, p2;
int opcion;
Console.Write("1º) Suma" + "\n" + "2º) Resta" + "\n" + "3º) Multiplicación" + "\n" + "4º) División" + "\n" + "5º) Potencia " + "\n");
Console.Write("Seleccione una opción: \n");
opcion = Convert.ToInt16(Console.Read());
opcion -= 0x30;
switch (opcion)
{
case 1:
Console.WriteLine("Escriba el primer entero: ");
Console.ReadLine();
s1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero:\n");
Console.ReadLine();
s2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La suma es: {0}", Suma(s1, s2));
break;
case 2:
Console.WriteLine("Escriba el primer entero:");
Console.ReadLine();
r1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero: ");
Console.ReadLine();
r2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La resta es:{0}", Resta(r1, r2));
break;
case 3:
Console.WriteLine("Escriba el primer numero:");
Console.ReadLine();
m1 = (Convert.ToSingle(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo numero: ");
Console.ReadLine();
m2 = (Convert.ToSingle(Console.Read())) - 0x30;
Console.WriteLine("La multiplicacion es:{0}", Multiplicacion(m1, m2));
break;
case 4:
Console.WriteLine("Escriba el primer numero:");
Console.ReadLine();
d1 = (Convert.ToDouble(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo numero: ");
Console.ReadLine();
d2 = (Convert.ToDouble(Console.Read())) - 0x30;
Console.WriteLine("La division es:{0}", Division(d1, d2));
break;
case 5:
Console.WriteLine("Escriba el primer entero:");
Console.ReadLine();
p1 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("Escriba el segundo entero: ");
Console.ReadLine();
p2 = (Convert.ToInt32(Console.Read())) - 0x30;
Console.WriteLine("La potencia es:{0}", Potencia(p1, p2));
break;
}
Console.ReadKey();
}
}
}
de antemano gracias