using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Lab1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Калькулятор");
Console.WriteLine("1.Опервция <->");
Console.WriteLine("2.Операция <+>");
Console.WriteLine("3.Операция </>");
Console.WriteLine("4.Операция <*>");
Console.WriteLine("5.Exp");
Console.WriteLine("6.Выход");
Console.WriteLine("Выберите операцию");
int s = Convert.ToInt32(Console.ReadLine());
do
{
if(s==1)
{
Console.WriteLine("Введите A=");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите B=");
int b = Convert.ToInt32(Console.ReadLine());
double c = a - b;
Console.WriteLine(a+"-"+b+"="+c);
break;
}
if(s==2)
{
Console.WriteLine("Введите A=");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите B=");
int b = Convert.ToInt32(Console.ReadLine());
double c = a + b;
Console.WriteLine(a+"+"+b+"="+c);
break;
}
if(s==3)
{
Console.WriteLine("Введите A=");
double a = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Введите B=");
int b = Convert.ToInt32(Console.ReadLine());
double c = a / b;
Console.WriteLine(a+"/"+b+"="+c);
break;
}
if(s==4)
{
Console.WriteLine("Введите A=");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите B=");
int b = Convert.ToInt32(Console.ReadLine());
double c = a * b;
Console.WriteLine(a+"*"+b+"="+c);
break;
}
if(s==5)
{
Console.WriteLine("Операция Exp(x)");
Console.WriteLine("Введите X=");
double x = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Ответ=" + Math.Exp(x));
break;
}
if (s == 6)
{
}
}while(s<7);
}
}
}
если ничего не путаю гетч это что-то типа паузы до нажатия клавиши, вместо него можешь использовать Console.ReadKey() а дальше тебя эмоции захлестнули я не понимаю что ты хочешь, похоже что просто в цикл нужно переместить выбор пунта и получится то что хочешь
ну перенеси 'do' перед 'Console.WriteLine("Калькулятор");' и будет то что ты хочешь, в с++ тоже самое должно было быть
и вместо 'break;' напиши 'continue;', 'break;' только в 's == 6' добавь
думаю никак, напиши все зановоЕще вопрос как сделать что очищать только прошлую операцию, а меню оставалось? А то я дописал Console.Clear(); Перед "Введите А".
думаю ты перепутал "if" со "switch/case" тогда break'и были бы к месту
Позицией курсора можно произвольно управлять.Еще вопрос как сделать что очищать только прошлую операцию, а меню оставалось? А то я дописал Console.Clear(); Перед "Введите А".
А если мне после запятой нужно заполнить нулями, как это сделать?
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
Дабы не плодить темы пишу тут. Дилемма.
1. Есть кнопки (штук 10) на форме (WinForms).
2. В классе формы объявляю массив кнопок.
3. Каждому элементу массива присваиваю кнопку формы (получается ссылка на объект кнопки)
4. При помощи циклов задаю свойства элементам массива, соответственно, на форме тоже воспроизводятся внесенные изменения свойств.
На сколько это неправильно? =)
Можно я отвечу вопrосом на вопrос?
Шо надо шоб получилось?
Если ты хочешь выебать однокурсницу - то такой подход очевидно неправильный.
Нужно с минимальными усилиями работать с "большим" количеством элементов и хотелось бы сократить количество строк кода.
И вот какой ответ ты хочешь получить?
Хочется - сокращай.
Попробую перефразировать? Единственно ли верный это способ работы с объектами на форме в коде?
Главное потом эти коллекции очищать, когда форму грохаешь.Любіе контролы можно хранить в коллекциях, и я слышал мнение, что єто правильно.
Главное потом эти коллекции очищать, когда форму грохаешь.