Проблема за проблемой. Делаю калькулятор, но использую самые базовые и простейшие команды, т.к. на любимой учёбе мы не проходили это. Беру пример со встроенного в Windows 10 калькулятор. Когда запускаешь (и не только запускаешь, например стираешь) калькулятор появляется 0 в строке, правильно. Этот ноль у меня есть, всё работает. Но стоит мне нажать на минус, плюс, умножение и деление на моём калькуляторе, они не появляются вообще. Ваша задача: сделать так, чтобы они появились справа от нуля. То есть, я нажимаю на минус появляется минус, нажимаю на плюс и минус должен замениться на плюс. Нажимаю на умножение и плюс должен замениться на умножение, понимаете логику? И желательно с объяснениями. без setOperation, try, catch (FormatException), switch (option), case, break, default, return. Соответственно, все математические операции на этих кнопках тоже должны работать. Вот код:
namespace threeone
{
public partial class Form1: Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.
{
textBox1.Text = "";
}
if (textBox1.Text == «00»)
{
textBox1.Text = "";
}
textBox1.Text += (sender as Button).Text; // Обращение к тексту кнопки
}
int m;
int minus;
int umnoz;
int delenie;
int operation;
private void button18_Click(object sender, EventArgs e)
{
m = Convert.ToInt32(textBox1.Text); // Запомнили число
textBox1.Text += "+"; //
operation = '+';
}
private void button17_Click(object sender, EventArgs e)
{
umnoz = Convert.ToInt32(textBox1.Text); // Запомнили число
textBox1.Text += "*"; //
operation = '*';
}
private void button19_Click(object sender, EventArgs e)
{
minus = Convert.ToInt32(textBox1.Text); // Запомнили число
textBox1.Text += "-"; //
operation = '-';
}
private void button13_Click(object sender, EventArgs e)
{
delenie = Convert.ToInt32(textBox1.Text); // Запомнили число
textBox1.Text += "/"; //
operation = '/';
}
private void button16_Click(object sender, EventArgs e)
{
if (operation == '+')
{
textBox1.Text = (m + Convert.ToInt32(textBox1.Text)).ToString();
}
if (operation == '-')
{
textBox1.Text = (minus — Convert.ToInt32(textBox1.Text)).ToString();
}
if (operation == 'x')
{
textBox1.Text = (umnoz * Convert.ToInt32(textBox1.Text)).ToString();
}
if (operation == '/')
{
textBox1.Text = (delenie / Convert.ToInt32(textBox1.Text)).ToString();
}
}
|
||||||||||||
|
Похожие вопросы |
Сервис LiveExpert.org (18+) содержит информацию только для совершеннолетних 18+ и может использоваться в информационно-развлекательных целях. Используя Сервис LiveExpert.org, вы принимаете Пользовательское соглашение, Политику конфиденциальности и Политику cookie.
Эксперты Сервиса LiveExpert.org не являются членами команды Сервиса или его представителями. LiveExpert.org проверяет Экспертов и даёт допуск к работе через Сервис, однако не несёт ответственности за обещания и утверждения, указанные на страницах Экспертов и в отзывах других Пользователей об Экспертах Сервиса. LiveExpert.org не гарантирует, что информация, полученная на консультации, приведёт к ожидаемым целям и результату.
Любые консультации Экспертов или ответы на вопросы, содержащиеся в категории вопросов «Медицина» (а также и в других категориях) ни при каких условиях не являются рекламой или оказанием медицинских услуг. Сервис LiveExpert.org не несет ответственность за назначенные Экспертом препараты и рекомендует обращаться в соответствующее лечебное учреждение или к лечащему врачу для согласования возможных рисков от приема рекомендованных экспертами препаратов. Пользователь Сайта, принимая решение следовать рекомендациям Эксперта, берет на себя ответственность за возможные последствия.