hola chicos, llevo no mucho tiempo liado con c#, aprendiendo de tutoriales e internet, es lo que tiene estar confinado, el tema es que estoy haciendo una calculadora, pero tengo un problema en el tema porcentaje %, al hacerlo me sale el calculo de ( x numero *x numero / 100) , por poner un ejemplo, el 12 % de 75 me sale 9, bien yo querria (si tener que hacer nuevo codigo XD) que cuando haga esa operacion me saliese el resultado final, es decir (75 - 12 % = 66), pero no tengo manera, he tratado con ensayo y error, pero nada, al final mi mujer me echa de casa, porgo el codigo aqui si no os importa
Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
Double valor = 0;
String operacion = "";
bool operacion_press = false;
Double valor1 = 100;
public Form1()
{
InitializeComponent();
}
private void button_click(object sender, EventArgs e)
{
if ((resultado.Text == "0")||(operacion_press))
resultado.Clear();
operacion_press = false;
Button b = (Button) sender;
resultado.Text = resultado.Text + b.Text;
}
private void btn_ce_Click(object sender, EventArgs e)
{
resultado.Text = "0";
res_2.Text = "0";
}
private void operador_click(object sender, EventArgs e)
{
Button b = (Button)sender;
operacion = b.Text;
valor = Double.Parse(resultado.Text);
operacion_press = true;
res_2.Text = valor + " " + operacion;
}
private void btn_igual(object sender, EventArgs e)
{
res_2.Text = "";
switch (operacion)
{
case "+":
resultado.Text = (valor + Double.Parse(resultado.Text)).ToString();
res_2.Text = "El Resultado es " + Double.Parse(resultado.Text).ToString();
break;
case "-":
resultado.Text = (valor - Double.Parse(resultado.Text)).ToString();
res_2.Text = "El Resultado es " + Double.Parse(resultado.Text).ToString();
break;
case "*":
resultado.Text = (valor * Double.Parse(resultado.Text)).ToString();
res_2.Text = "El Resultado es " + Double.Parse(resultado.Text).ToString();
break;
case "/":
resultado.Text = (valor / Double.Parse(resultado.Text)).ToString();
res_2.Text = "El Resultado es " + Double.Parse(resultado.Text).ToString();
break;
case "√":
resultado.Text = Math.Sqrt(valor).ToString();
res_2.Text = "El Resultado es " + Double.Parse(resultado.Text).ToString();
break;
} // fin switch
}
private void btn4_Click(object sender, EventArgs e)
{
resultado.Clear();
valor = 0;
res_2.Text = "0";
}
private void button5_Click(object sender, EventArgs e)
{
if (resultado.Text.Length > 0)
resultado.Text = resultado.Text.Remove(resultado.Text.Length - 1, 1);
}
private void btnpor_click(object sender, EventArgs e)
{
[b] [color=red] Double a;
a = Convert.ToDouble(resultado.Text) / Convert.ToDouble(100);
resultado.Text = System.Convert.ToString(a);
res_2.Text = " Porcentaje " + System.Convert.ToString(a);[/color]
[/b]
}
}
}
res_2.Text = " Porcentaje " + System.Convert.ToString(a); ***** deciros que el res_2.Text , es porque los datos salen a dos pantallas, tipo calculadora de windos