Путь разработчика    

Найти египетские фракции в C#


Египетская фракция представляет собой долю, выраженную в виде суммы отдельных единичных дробей. Например, вы можете написать 3/7 как 1/3 + 1/11 + 1/231.

Вы можете написать любую фракцию как египетскую фракцию, и может быть несколько способов сделать это.

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

В этом примере используется класс Fraction, описанный в сообщении Сделайте класс фракции в C# . См. Этот пример для большинства деталей этого класса. Для обработки египетских фракций я добавил несколько операторов сравнения. Чтобы упростить сравнение фракций и целых чисел, я также добавил оператора для преобразования из long в Fraction. Следующий код показывает наиболее интересные новые фрагменты кода.

Python

Следующий код показывает, как программа использует пересмотренный класс Fraction для поиска египетских фракций.

Python

Сначала код удаляет из дроби всю целую часть. Например, он преобразует 12/5 в 2 + 2/5.

Источник: http://csharphelper.com/blog/2015/06/find-egyptian-fractions-in-c/



Отзывы (через аккаунты в социальных сетях Вконтакте или Facebook):

Оставить отзыв с помощью аккаунта ВКонтакте:

Оставить отзыв с помощью аккаунта FaceBook:

Преобразование между корпусом Паскаля, верблюжьим футляром и правильным корпусом в C#

В этом примере используются методы расширения строк для преобразования строк между корпусом Pascal, верблюжьим футляром и правильным случаем. В случае Pasc...

18 07 2019 1:38:35

Итерации по элементам в массиве с неизвестными параметрами в C#

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

17 07 2019 16:38:43

Обучение мобильной разработке на Delphi (В. Леонов)

Основной целью данной книги является наглядная демонстрация приёмов создания программ в одной из самых популярных и доступных сред разработки Delphi/C++Bui...

16 07 2019 1:33:56

Как использовать FTP в Python

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

15 07 2019 2:45:14

Switch в Java Синтаксис и примеры

Оператор switch используется для выполнения различных действий на основе разных условий. Оператор switch Java работает с байтовыми, короткими, char и int п...

14 07 2019 7:44:54

C# 4.0 Полное руководство (Герберт Шилдт)

В книге "C# 4.0 Полное руководство" Г. Шилдта по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все осно...

13 07 2019 15:45:41

Break и Continue в Python

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

12 07 2019 9:38:29

Инициализировать двумерные массивы в C#

Пример Инициализация массивов, списков и экземпляров классов в C# объясняется, как инициализировать одномерный массив. Вы можете использовать аналогичный с...

11 07 2019 7:39:19

PHP и MySQL. Исчерпывающее руководство (Бретт Маклафлин)

Если у вас есть опыт разработки сайтов с помощью CSS и Javascript, то эта книга переведет вас на новый уровень веб-разработки — создание динамических веб-с...

10 07 2019 16:31:40

Delphi 6. Учебный курс (В. В. Фаронов)

В книге "Delphi 6. Учебный курс" даются начальные сведения по системе программирования Delphi, разработанной американской корпорацией Borland International...

09 07 2019 6:27:56

Длина строки в C#

Свойство Length в String Class возвращает общее количество символов в String. Синтаксис: int string.length Возвращает: Целое число: количество символов в у...

08 07 2019 12:29:41

Как аннотации работают на Java?

Аннотации Java используются для предоставления метаданных для Java-кода, хотя они не являются частью самой программы. Метаданные - это данные о данных. Так...

07 07 2019 11:44:19

Список USB-устройств в C#

Эта программа использует WMI (инструментарий управления Windows) для запроса на устройства USB. Чтобы использовать WMI, добавьте ссылки на System.Managemen...

06 07 2019 13:45:17

Увеличьте и прокрутите изображение, нарисованное на C#

Эта программа позволяет масштабировать и прокручивать изображение, нарисованное программой. Программа содержит Panel с AutoScale, установленным в true. Вну...

05 07 2019 23:50:33

Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript и CSS (Р. Никсон)

Научитесь создавать современные динамические веб-сайты, даже если у вас нет опыта в программировании. Если вы умеете писать статические сайты на HTML, то с...

04 07 2019 20:29:13

Рисуем гладкий текст в GraphicsPath в C#

Вы можете установить свойство TextRenderingHint объекта Graphics для AntiAliasGridFit, чтобы нарисовать гладкий текст. Однако, если вы поместите текст в об...

03 07 2019 10:20:47

Что такое объектная модель браузера в JavaScript

Модель объекта браузера (BOM) - это соглашение, специфичное для браузера, относящееся ко всем объектам, открываемым веб-браузером. Когда браузер анализируе...

02 07 2019 22:23:57