Skip to content

Як зробити калькулятор [C#]

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Завантаження...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


У цій статті ми розглянемо приклад простого консольного калькулятора на C#, який підтримує додавання, віднімання, множення і ділення, а також складнішого на основі CSharp Scripting.

Визначимо такий код:

Коли ви запустите цю програму, вона запропонує вам ввести два числа й операцію, яку ви хочете виконати. Потім програма виконає обчислення і відобразить результат. Якщо ви спробуєте поділити на нуль, програма не завершиться, а видасть повідомлення про помилку.

Microsoft CodeAnalysis CSharp Scripting

У мові C# є C# Scripting, він схожий на eval з інших мов, він являє собою функцію, яка оцінює рядок, ніби він є виразом, і повертає результат;

Розглянемо приклад “калькулятора”, написаного в один рядок:

Не забудьте підключити такі простори імен:

У методі Main оголошується строкова змінна expression та ініціалізується математичним виразом 2 * (6 + 7) – 10 / 2. Цей вираз включає основні арифметичні оператори: * для множення, + для додавання, – для віднімання і / для ділення. Він також включає круглі дужки для контролю порядку операцій.

Потім викликається метод CSharpScript.EvaluateAsync, параметром якого є рядок виразу. Цей метод приймає на вхід рядок, що містить вираз C#, компілює його та оцінює під час виконання.

Метод EvaluateAsync повертає задачу, що розв’язується в результат виразу, який у даному випадку є подвійним значенням. Ключове слово await використовується для асинхронного очікування результату обчислення завдання.

Нарешті, результат виводиться на консоль за допомогою методу Console.WriteLine. У цьому випадку буде виведено 21, що є результатом математичного виразу 2 * (6 + 7) – 10 / 2.

Використовуючи цю бібліотеку, ви можете імпортувати всі статичні методи інших класів, для подальшого використання. Розглянемо приклад із класом Math:

Метод ScriptOptions.Default.WithImports(“System.Math”) використовується для вказівки того, що простір імен System.Math має бути імпортовано, щоб метод Sqrt можна було використовувати у виразі codeToEval.

Я сподіваюся, що вам сподобалося читати цю статтю, і вона виявилася легкою для розуміння. Будь ласка, дайте мені знати, якщо у вас є якісь коментарі або виправлення.

Так само вам може бути цікава попередня стаття – Як зробити скріншот екрана.


Ви хочете навчитися писати код мовою програмування C#?

Створювати різні інформаційні системи, що складаються з сайтів, мобільних клієнтів, десктопних додатків, телеграм-ботів тощо.

Переходьте до нас на сторінку Dijix і ознайомтеся з умовами навчання, ми спеціалізуємося тільки на індивідуальних заняттях, як для початківців, так і для просунутих програмістів. Ви можете взяти як одне заняття для опрацювання питання, що вас цікавить, так і кілька, для більш щільної роботи. Завдяки особистому кабінету, кожен студент підвищить якість свого навчання, у вашому розпорядженні:

  • Доступ до пройденого матеріалу
  • Тематичні статті
  • Бібліотека книг
  • Онлайн тестування
  • Спілкування в закритих групах

https://dijix.com.ua

Живи у своєму світі, програмуй у нашому.

Published inЯк зробити на C#?
Subscribe
Notify of
guest
0 комментариев
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x