Microsoft открыла код Калькулятора Windows / Habr

Несколько дней назад корпорация Microsoft приняла решение открыть исходный код известной всем программы — «Калькулятора» из ОС Windows. Это приложение входило во все дистрибутивы ОС от Microsoft начиная с 1985 года, когда свет увидела Windows 1.0.

Microsoft использует лицензию MIT для своего ПО. Это тот же тип лицензии, что используется в .Net Core, Visual Studio Code, и MS-DOS. По словам представителей корпорации, сейчас они открывают процесс разработки для open-source сообщества. Сторонние разработчики могут предлагать новые функции и сотрудничать с инженерами Microsoft для добавления этих фич.

С течением времени Калькулятор Windows совершенствуется. Программа появилась на свет в качестве элементарного помощника для выполнения арифметических действий. Сейчас же это надежный научный калькулятор, который может использоваться широким кругом пользователей для решения весьма серьезных задач.

Программа написана на С++ и содержит более 35000 строк кода. Для компиляции проекта пользователям необходима Windows 10 1803 (или более новая) и последняя версия Visual Studio. Со всеми требованиями можно ознакомиться на GitHub.

Компания открыла код для того, чтобы любой желающий мог ознакомиться с такими технологиями Microsoft как Fluent, Universal Windows Platform, Azure Pipelines и другими. Благодаря этому проекту разработчики могут больше узнать о том, как выполняется работа по созданию тех либо иных проектов в Microsoft.

Тем разработчикам, кто планирует присоединиться к проекту, необходимо ознакомиться с требованиями и нормами, сделать это можно здесь.

Ну а с подробным анализом исходного кода Калькулятора Windows можно ознакомиться здесь, прямо на Хабре.

habr.com

Исходный код калькулятора CalcK1.0 на C#

Исходник калькулятора максимально упрощен при довольно красивом графическом интерфейсе и является полностью работоспособным приложением для арифметических вычислений. А также базой для дальнейшего совершенствования приложения.

Исходный код приложения состоит из двух модулей:
Calc2.cs — главная форма приложения. На форме располагается цифровое табло, состоящее из элемента Panel, содержащий на себе две текстовые метки Label. Одна метка высвечивает результаты расчета, другая число находящееся в памяти калькулятора. Далее на форме располагаются 30 кнопок для набора чисел и действиями над ними.

SetDlg.cs — диалоговое окно настроек калькулятора. Пользователь может изменить количество знаков после запятой, задать разделитель десятичных по своему усмотрению при копировании в буфер обмена, установить уровень прозрачности окна приложения при длительном простое между вычислениями.

Кнопки упорядочены по группам, имеющие каждая свой цвет, свой обработчик события Click на все кнопки группы. Для удобства определения кликнутой кнопки используется свойство Tag имеющее тип object, а стало быть этому свойству можно присвоить любой тип данных .NET. В дальнейшем используя оператор switch определяем рабочую кнопку и связанное с ней действие.

Алгоритм работы программы на уровне пользователя:

	I. Сброс всех регистров или включение программы;
	II. Нажатие на цифровую клавишу:
		1. Набор числа после п.0 - набираем число в верхний регистр, 
		   переход к п.II или   п.I;
		2. Набор числа после п.I.1 - сброс нижнего регистра в ноль и 
		   заново набираем   число в нижний регистр, переход к п.II или п.I;
	III. Нажатие на функциональную клавишу:
		1. если нажаты +, -, *, / происходит запоминание последней 
		   нажатой операционной   клавишы, перевод на возможность 
		   набора в нижний регистр, переход к п.II или   п.I.2 или п.I;
		2. если нажата клавиша Равно, после п.I.1, продолжаем набор числа;
		3. если нажата клавиша Равно после п.I.1:
			а. первое нажатие - нижнему регистру присваиваем
			   значение верхнего и   высчитываем результат согласно
			   нажатой операционной клавише, далее переход к п.II или п.I;
			б. последующие нажатия - высчитываем результат согласно нажатой
			   операционной   клавише, верхнему регистру присваивается 
			   результат, нижний регистр не изменяется, далее переход к
 			   п.II или п.I;
	IV. если нажата клавиша Равно после п.I.2 - высчитываем результат 
	    согласно   нажатой операционной клавише, далее верхнему регистру 
		присваиваем результат,   нижний регистр не изменяем, 
		переход к п.II или п.I;
	  

Среды программирования Microsoft Visual Studio.NET 2008, Microsoft Visual Studio.NET 2008 Express Edition и выше, открытая среда программирования для C# SharpDevelop 3.0. и выше.
Microsoft .NET Framework SDK v2.0 и выше. Подробные комментарии важных строк исходного кода

Файл исходника Размер Количество загрузок
calck.rar 74 КБайт 17823

www.interestprograms.ru

Инженерный калькулятор онлайн

Современный уклад жизни требует постоянной динамики. Производя расчеты на калькуляторе, мы заметно экономим свое время, не рискуем в чем-то ошибиться и получаем точный результат. Благодаря изобретению данного устройства, многие люди забыли что такое недостачи и погрешности в расчетах. Однако калькулятор калькулятору рознь, и если примитивные вычислительные функции можно сделать на математической модели, то сложнейшие расчеты возможно совершить только при помощи инженерной. Отныне приобретать данное чудо современной техники не нужно – достаточно обратиться за помощью к нашему инженерному калькулятору онлайн! Программа работает без дополнительной установки – достаточно зайти на электронную страницу и начать действовать.


Функции инженерного калькулятора онлайн

Калькулятор математического типа поможет вам совершить только примитивные расчеты. С его помощью можно сделать то, чему нас учили в начальных классах средней школы:

  • сложение;
  • вычитание;
  • деление;
  • умножение;
  • вычитание процентов;
  • возведение числа в степень;
  • нахождение корня квадратного.

Инженерный калькулятор онлайн включает в себя все эти и дополнительные функции, которые необходимы для проведения сложных расчетов. Теперь вам не придется тратить дополнительные деньги на покупку этого устройства, ведь сделать вычисления можно на нашем сайте.

Помимо вышеперечисленных, наш универсальный калькулятор поможет вам выполнить такие расчеты:

Нахождение:

  • синуса угла;
  • тангенса;
  • косинуса;
  • котангенса;
  • арксинуса;
  • арктангенса;
  • арккосинуса;
  • арккотангенса.

Интерфейс инженерного калькулятора онлайн

Выполнить все вышеперечисленные расчеты достаточно просто. Наш инженерный калькулятор онлайн обладает понятным интерфейсом, а потому работать с ним весьма удобно. По своему виду он полностью имитирует настоящий калькулятор, поэтому долгого изучения функций вам не потребуется. Несмотря на это мы прилагаем подробную инструкцию и описание каждой клавиши.

Пользоваться нашей программой выгодно еще и потому, что расчеты производятся моментально – вам не нужно обновлять страницу сайта, ведь калькулятор работает во флеш-режиме. Ежедневно нашей программой пользуется огромное количество людей. Среди них ученики высших заведений, преподаватели, архитекторы-проектировщики, ученые и другие люди, заинтересованные в точности расчетов. Инженерный калькулятор онлайн не требует скачивания и установки дополнительных плагинов, а потому вы можете начать пользоваться им прямо сейчас!

calc.by