CALCULADORA EN J#
AMB VISUAL STUDIO 2005
Construim el
següent formulari
El codi del programa sería el següent en J#
package
calculadora;
import
System.Collections.Generic.*;
import
System.Data.*;
import
System.Drawing.*;
import System.ComponentModel.*;
import
System.Windows.Forms.*;
/**
* Summary
description for Form1.
*/
public class Form1 extends System.Windows.Forms.Form
{
//Declarem les variables que
necessitarem
boolean encendido, coma; //Variables per controlar l'estat de la calculadora i la
inserció de la coma
double operando1, operando2,
resultado, memoria;//Variables per realitzar les
operacions
int operacion; //Variable per distingir quina operació fer
String pantalla; //Variable previa a l'escritura del resulat per pantalla.
private TextBox textBox1;
private Button
button1;
private Button
button2;
private Button
button3;
private Button b7;
private Button b8;
private Button b9;
private Button b4;
private Button b5;
private Button b6;
private Button b1;
private Button b2;
private Button b3;
private Button Bcoma;
private Button zero;
private Button igual;
private Label label1;
private Button Suma;
private Button Resta;
private Button
Multiplicacion;
private Button
button7;
private Button Raiz;
private Button
Cuandrado;
private Button Seno;
private Button
Coseno;
private Button Clear;
private Button
Encendido;
/**
* Required designer variable.
*/
private System.ComponentModel.IContainer components;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//Inicializamos las variables
memoria = 0;
operando1 = 0;
operando2 = 0;
resultado = 0;
operacion = 0;
encendido = true;
label1.set_BackColor(Color.get_Green());
pantalla = "0";
textBox1.set_Text(pantalla);
coma = false;
}
/* ***********************************************************************
REGIÒ DE CODI CREADA
PEL DISSENYADOR DE WINDOWS.
*************************************************************************
*/
private void Encendido_Click(Object
sender, System.EventArgs
e)
{
//Botò Encendido Si la
calculadora està encesa l'apaguem i si està apagada la'encenem
if (encendido)
{
pantalla = "0";
textBox1.set_Text("");
label1.set_BackColor(Color.get_Red());
encendido =
false;
}
else
{
pantalla = "0";
textBox1.set_Text(pantalla);
memoria = 0;
operando1 = 0.0;
operando2 = 0.0;
resultado = 0.0;
operacion = 0;
label1.set_BackColor(Color.get_Green());
encendido = true;
}
}
private void
b1_Click(Object sender, System.EventArgs e)
{
if(encendido)
{
if
(pantalla.equals("0"))
pantalla = "1";
else
pantalla = pantalla + "1";
textBox1.set_Text(pantalla);
}
}
private void
b2_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if (pantalla.equals("0"))
pantalla = "2";
else
pantalla = pantalla + "2";
textBox1.set_Text(pantalla);
}
}
private void b3_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "3";
else
pantalla = pantalla + "3";
textBox1.set_Text(pantalla);
}
}
private void
b4_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if (pantalla.equals("0"))
pantalla = "4";
else
pantalla = pantalla + "4";
textBox1.set_Text(pantalla);
}
}
private void b5_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if (pantalla.equals("0"))
pantalla = "5";
else
pantalla = pantalla + "5";
textBox1.set_Text(pantalla);
}
}
private void b6_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "6";
else
pantalla = pantalla + "6";
textBox1.set_Text(pantalla);
}
}
private void b7_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "7";
else
pantalla = pantalla + "7";
textBox1.set_Text(pantalla);
}
}
private void
b8_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "8";
else
pantalla = pantalla + "8";
textBox1.set_Text(pantalla);
}
}
private void b9_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "9";
else
pantalla = pantalla + "9";
textBox1.set_Text(pantalla);
}
}
private void
Bcoma_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if (!coma)
{
if (pantalla.equals("0"))
pantalla = "0,";
else
pantalla = pantalla + ",";
textBox1.set_Text(pantalla);
coma
= true;
}
}
}
private void
zero_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
if
(pantalla.equals("0"))
pantalla = "0";
else
pantalla = pantalla + "0";
textBox1.set_Text(pantalla);
}
}
private void
Suma_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
pantalla = "0";
operacion = 1;
coma = false;
}
}
private void
Resta_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
pantalla = "0";
operacion = 2;
coma = false;
}
}
private void
Multiplicacion_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1
= Double.valueOf(textBox1.get_Text()).doubleValue();
pantalla = "0";
operacion = 3;
coma = false;
}
}
private void
button7_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
pantalla = "0";
operacion = 4;
coma = false;
}
}
private void Raiz_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
operando1 =
Math.sqrt(operando1);
pantalla = "0";
textBox1.set_Text(String.valueOf(operando1).toString());
operacion =
1;
coma = false;
}
}
private void igual_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando2
= Double.valueOf(textBox1.get_Text()).doubleValue();
switch
(operacion)
{
case 1:
resultado = operando1 + operando2;
break;
case 2:
resultado = operando1 - operando2;
break;
case 3:
resultado = operando1 * operando2;
break;
case 4:
resultado = operando1 / operando2;
break;
}
textBox1.set_Text(String.valueOf(resultado).toString());
pantalla = "0";
operacion = 4;
coma = false;
}
}
private void Cuandrado_Click(Object
sender, System.EventArgs
e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
operando1 =
operando1 * operando1;
pantalla = "0";
textBox1.set_Text(String.valueOf(operando1).toString());
operacion =
1;
coma = false;
}
}
private void Seno_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1 =
Double.valueOf(textBox1.get_Text()).doubleValue();
operando1 =
Math.sin(operando1*Math.PI/180);
pantalla = "0";
textBox1.set_Text(String.valueOf(operando1).toString());
operacion =
1;
coma = false;
}
}
private void Coseno_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
operando1
= Double.valueOf(textBox1.get_Text()).doubleValue();
operando1 =
Math.cos(operando1 * Math.PI/180);
pantalla = "0";
textBox1.set_Text(String.valueOf(operando1).toString());
operacion =
1;
coma = false;
}
}
private void Clear_Click(Object sender, System.EventArgs e)
{
if (encendido)
{
coma = false;
pantalla = "0";
textBox1.set_Text(pantalla);
}
}
private void
button2_Click(Object sender, System.EventArgs e)
{
//BOTÒ PER GUARDAR EL CONTINGUT
DE LA PANTALLA EN LA MEMÒRIA
if (encendido)
{
memoria
= Double.valueOf(textBox1.get_Text()).doubleValue();
coma = false;
pantalla = "0";
label1.set_Text("M");
}
}
private void
button1_Click(Object sender, System.EventArgs e)
{
//BOTÒ PER SUMAR EL VALOR DE
PANTALLA A LA MEMÒRIA
if (encendido)
{
memoria
= memoria + Double.valueOf(textBox1.get_Text()).doubleValue();
coma = false;
pantalla = "0";
label1.set_Text("M");
}
}
private void
button3_Click(Object sender, System.EventArgs e)
{
//BOTÒ PER VISUALITZAR LA MEMÒRIA
if (encendido)
{
textBox1.set_Text(String.valueOf(memoria).toString());
coma = false;
pantalla = "0";
label1.set_Text("");
}
}
}