Will Rate! <3 using C# I need to re-write my previous program to fit the assignm
ID: 3718401 • Letter: W
Question
Will Rate! <3
using C# I need to re-write my previous program to fit the assignment for this lesson:
In the previous project, you were asked to create a simple Windows application that allowed the user to input two values and then add, subtract, multiply, or divide.
Now, you will add error handling into this project. Recall that you are using the int.TryParse() function to parse out the values entered by the user.
Using the Try/Catch statement, you want to handle any possible exceptions that may occur as a result of performing the operation on the two numbers. Use at least one specific Exception in your catch statement and handle any general exceptions.
Here is the code that needs to fit the above assignment^:
namespace Lesson_11
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void btnAdd_Click(object sender, EventArgs e)
//Addition
{
int firstNumber, secondNumber;
bool first, second;
first = int.TryParse(txtFirst.Text, out firstNumber);
second = int.TryParse(txtSecond.Text, out secondNumber);
if (first && second)
lblResult.Text = "Adding " + firstNumber + " + " + secondNumber + " = " + (firstNumber + secondNumber);
else
MessageBox.Show("Enter only numbers");
}
private void btnSubtract_Click(object sender, EventArgs e)
//Subtraction
{
int firstNumer, secondNumber;
bool first, second;
first = int.TryParse(txtFirst.Text, out firstNumer);
second = int.TryParse(txtSecond.Text, out secondNumber);
if (first && second)
lblResult.Text = "Subtracting " + firstNumer + " - " + secondNumber + " = " + (firstNumer - secondNumber);
else
MessageBox.Show("enter only numbers");
}
private void btnMultiply_Click(object sender, EventArgs e)
//Multiplication
{
int firstNumber, secondNumber;
bool first, second;
first = int.TryParse(txtFirst.Text, out firstNumber);
second = int.TryParse(txtSecond.Text, out secondNumber);
if (first && second)
lblResult.Text = "multiplying " + firstNumber + " * " + secondNumber + " = " + (firstNumber * secondNumber);
else
MessageBox.Show("enter only numbers");
}
private void btnDivide_Click(object sender, EventArgs e)
//Division
{
int firstNumber, secondNumber;
bool first, second;
first = int.TryParse(txtFirst.Text, out firstNumber);
second = int.TryParse(txtSecond.Text, out secondNumber);
if (first && second)
lblResult.Text = " Dividing " + firstNumber + " / " + secondNumber + " = " + (firstNumber / secondNumber);
else
MessageBox.Show("enter only numbers");
}
}
}
Will rate!
Explanation / Answer
I have replaced the tryparse method with the try catch method.
Here the toconvert method tries to convert it to int once it gets failed and puts an exception which will be handled by our catch method
Your code will be like this:
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;
using System.Text.RegularExpressions;
namespace AdminInterface
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void btnAdd_Click(object sender, EventArgs e)
//Addition
{
int firstNumber, secondNumber;
try
{
firstNumber = Convert.ToInt16(txtFirst.Text);
secondNumber = Convert.ToInt16(txtSecond.Text);
lblResult.Text = "Adding " + firstNumber + " + " + secondNumber + " = " + (firstNumber + secondNumber);
}
catch(Exception ex)
{
MessageBox.Show("Enter numbers only");
}
}
private void btnSubtract_Click(object sender, EventArgs e)
//Subtraction
{
int firstNumber, secondNumber;
try
{
firstNumber = Convert.ToInt16(txtFirst.Text);
secondNumber = Convert.ToInt16(txtSecond.Text);
lblResult.Text = "Subtracting " + firstNumber + " - " + secondNumber + " = " + (firstNumber - secondNumber);
}
catch(Exception ex)
{
MessageBox.Show("Enter numbers only");
}
}
private void btnMultiply_Click(object sender, EventArgs e)
//Multiplication
{
int firstNumber, secondNumber;
try
{
firstNumber = Convert.ToInt16(txtFirst.Text);
secondNumber = Convert.ToInt16(txtSecond.Text);
}
catch(Exception ex)
{
MessageBox.Show("Enter numbers only");
}
}
private void btnDivide_Click(object sender, EventArgs e)
//Division
{
int firstNumber, secondNumber;
bool first, second;
try
{
firstNumber = Convert.ToInt16(txtFirst.Text );
secondNumber = Convert.ToInt16(txtSecond.Text);
lblResult.Text = " Dividing " + firstNumber + " / " + secondNumber + " = " + (firstNumber / secondNumber);
}
catch(Exception ex)
{
MessageBox.Show("Enter numbers only");
}
}
}
}
Also comment your feedback if any corrections required
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.