Код программы перевода из десятичной в двоичную

Добрый день!
Мне нужен перевод целого числа из десятичного представления в двоичное. Как вывести на экран результат (и то задам наперед) я знаю

for(;b>0;b/=2)
подскажите, плиз, как вывести результат в цело-численную переменную.
Спасибо!
Форумчанин
Регистрация: 29.01.2009
Сообщений: 175
1. как-то так
while (chislo != 0) < ost=chislo%2; chislo=chislo/2; r*=10+ost; i++; >
2. Аналогично
http://programmersforum.ru/showthread.php?t=80769
Все люди делятся на 10 типов: те, кто понимают двоичную систему счисления и те, кто нет.
Последний раз редактировалось Veselyn; 14.01.2010 в 16:37 . Причина: добавил линк
Пользователь
Регистрация: 14.01.2010
Сообщений: 19

вы имели в виду это?

#include int main() < int a, n, b, c; scanf(«%d», n=a; while (n!=0) < c=n%2; n=n/2; b=b*10+c; >printf(«nbin = %dn», b); >
но это не работает..
и для чего в вашем коде счетчик «i»?
Форумчанин
Регистрация: 02.12.2009
Сообщений: 309
вот пример перевода целого положительного числа из десятичной сис. счисл. в двоичную.

Из двоичной в десятичную


#include #include #include char * decToBin(int x) < char *t = (char *)malloc(100); int i = 0; do < t[i++] = x % 2 + ‘0’; x = x / 2; >while (x != 0); t[i] = ‘’; // инвертируем t int k = strlen(t) — 2; int m = k / 2; for (int i = 0; i return t; > int main()
Последний раз редактировалось Alex_FF; 14.01.2010 в 18:10 .
Пользователь
Регистрация: 14.01.2010
Сообщений: 19
вот пример перевода целого положительного числа из десятичной сис. счисл. в двоичную.
#include #include #include char * decToBin(int x) < char *t = (char *)malloc(100); int i = 0; do < t[i++] = x % 2 + ‘0’; x = x / 2; >while (x != 0); t[i] = ‘’; // инвертируем t int k = strlen(t) — 2; int m = k / 2; for (int i = 0; i return t; > int main()

Alex, спасибо за этот пример, но мне необходимо решить эту задачу используя только переменные типа integer.

Форумчанин
Регистрация: 02.12.2009
Сообщений: 309
переменной типа int, вы ноль слева не запишите.
тогда нужно массив типа int делать.
Пользователь
Регистрация: 14.01.2010
Сообщений: 19
переменной типа int, вы ноль слева не запишите.
тогда нужно массив типа int делать.
ок, с массивом я знаю решение. спасибо.
Форумчанин
Регистрация: 29.01.2009
Сообщений: 175
счетчик нужен для того чтобы
вывести на экран результат (и то задам наперед)

for(i; i!=0; i—)
Все люди делятся на 10 типов: те, кто понимают двоичную систему счисления и те, кто нет.
Пользователь
Регистрация: 14.01.2010
Сообщений: 19

счетчик нужен для того чтобы

for(i; i!=0; i—)
Veselyn, не совсем понятно что вы предлагаете. Можете привести полный код? Заранее благодарю.
Форумчанин
Регистрация: 29.01.2009
Сообщений: 175
Попробуйте так
#include int main() < int a, n, b=1, i=0, c; scanf(«%d», n=a; while (n!=0) < c=n%2; n=n/2; if(c==1) b=b*10+1; else b=b*10+0; i++; >printf(«nbin = %dn», b); >
Попытаюсь объяснить на примере зачем нужен счетчик

Перевод из двоичной в десятичную систему счисления


// переворачиваем Б b/=10; // отбрасываем последний разряд (он всегда равен 1) и заносим его в Д //еще можно предыдущий цикл сдеать while (n!=1) и тогда этот шаг можно будет пропустить int d=1; //перевернутая Б for(i—; i!=0; —i) //идем по каждому разряду Б (пока они не закончатся) < d=d*10+b%10 //переписываем в конец Д последнюю цифру Б b/=10; //удаляем последнюю цифру из Б >
PS. Поставьте задержку
#include int main() < //. getch(); return 0; >
и включите библиотеку #include math.h
Все люди делятся на 10 типов: те, кто понимают двоичную систему счисления и те, кто нет.
Последний раз редактировалось Veselyn; 15.01.2010 в 13:39 .

Читайте также:
Программа поставить картинку на фон

Источник: www.programmersforum.ru

Блок-схема (алгоритм программы для перевода чисел из десятичной в двоичную систему исчисления и на оборот)

Процесс перевода числа из десятичного в двоичное по разрядам.

Если число цифр в строке меньше следующего разряда для вычисления

Перевод числа в строку;

Вычисление длины строки.

Получение остатка от деления;

Запись в массив остатка; Увеличение I.

Запись результата в ячейку

Запись результата в ячейку

Рабочий вид программы (принцип действия)

  1. Ячейка для ввода исходного числа.
  2. Ячейка, в которую выводится результат вычисления.
  3. Флажок выбора системы исчисления (двоичная).
  4. Флажок выбора системы исчисления (десятичная).
  5. Кнопка после нажатия которой происходит вычисление.

Код программы

Private Sub CommandButton1_Click()

Dim a As Integer, d As Integer, e(10) As Integer, i As Integer, m As Integer, tmp As Integer ‘переменные

Dim ch As String ‘переменные

a = Cells(1, 1) ‘Запись в a числа из первой ячейки (исходное число)

If OptionButton1 = True Then ‘Если выбран пункт «В двоичную»

i = 1 ‘Стартовое число, количество цифр в числе

Do Until a = 0 ‘Пока a не будет равно 0, цикл будет продолжаться

d = a Mod 2 ‘Получение остатка от деления

a = a 2 ‘Само деление (нацело)

e(i) = d ‘Запись в массив остатка (массив будет выводиться в виде строки)

i = i + 1 ‘Повышение количества чисел на одно

m = i ‘Запоминание количества чисел

For i = 1 To m — 1 ‘Начало цикла записи в строку результата

ch = ch + Str(e(m — i)) ‘Соппсна запись результата в строку

Cells(2, 1) = ch ‘Вывод результата в ячейку

If OptionButton2 = True Then ‘Если выбран пункт «В десятичную»

ch = Cells(1, 1) ‘Запись значения строкового

a = Cells(1, 1) ‘Запись значения цифрового

m = Len(ch) ‘Вычисление длины строки

d = 0 ‘Установка начальной суммы

For i = 1 To m ‘Начало цикла вычисления

d = d + ((a 10 ^ (m — i)) * (2 ^ (m — i))) ‘Много букв (много цыфер?): получение числа из наивысшего разряда и умножение его на 2 в степени порядка разряда

a = a — 10 ^ (m — i) ‘Уменьшение числа на разряд, присвоение a следующего значения

ch = CStr(a) ‘Установка числа в строку

tmp = Len(ch) ‘Вычисление длины строки

i = i + 1 ‘увеличение на 1 разряда для вычисления

Cells(2, 1) = d ‘Запись результат в ячейку

Источник: studfile.net

Защита курсовой. Составить программу для перевода чисел из десятичной системы счисления в двоичную

Единственный в мире Музей Смайликов

Самая яркая достопримечательность Крыма

Скачать 215.69 Kb.

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное

Кубанский государственный технологический университет

(ФГБОУ ВО «КубГТУ»)

Институт компьютерных систем и информационной безопасности

Кафедра информационных систем и программирования.

к курсовой работе

по дисциплине Программная инженерия

на тему: Составить программу для перевода чисел из десятичной системы счисления в двоичную

Выполнил студент группы 17-КБ-ПИ1 Пилюгов Иван Олегович

Допущен к защите ____________________________________________________

Руководитель, нормоконтролер работы препод

Защищен _______________________Оценка ______________________________

Члены комиссии ______________________________________________________

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное

учреждение высшего образования

Кубанский государственный технологический университет

(ФГБОУ ВО «КубГТУ»)

Институт компьютерных систем и информационной безопасности

Читайте также:
Установка программы в обход администратора

Кафедра информационных систем и программирования
УТВЕРЖДАЮ

Зав. кафедрой ИСП д-р. техн. наук,

на курсовое проектирование

Студенту Пилюгов И. О. группы 17-КБ-ПИ1 первого курса

Института компьютерных систем и информационной безопасности

направления 09.03.04 – Программная инженерия

Тема работы: Составить программу для перевода чисел из десятичной системы счисления в двоичную Содержание задания: разработать программу в среде VisualStudio на языке C#, которая переводит числа из десятичной системы счисления в двоичную.

а) пояснительная записка к проекту ____ с.;

Рекомендуемая литература Павловская Т.А. C#. Программирование на языке высокого уровня. Учебник для вузов — СПб. : Питер , 2016. – 432 с.

Срок выполнения работы с «___»________2018 г. по «___»________2018 г.

Срок защиты _______________________________________________________

Дата выдачи задания __________________________________________2018 г.

Дата сдачи работу на кафедру «_____» ___________________________2018 г.

Руководитель работы _______________________________________________.

Задания принял студент _____________________________________________.

Пояснительная записка курсовой работы: ___стр., ____изображений, ___источников.
С#, ПРОГРАММА, СИСТЕМЫ СЧИСЛЕНИЯ, МЕТОД, ДЕСЯТИЧНАЯ, ДВОИЧНАЯ.
Объект – число, записанное в десятичной системе счисления.

Цель – разработать программу для перевода числа в двоичную систему счисления.

К полученным результатам относится – программа, число в двоичной системе счисления.

Список литературы 17

Приложение А 18

Данная курсовая работа по дисциплине «Программная инженерия».

Ее целью является углублённое изучение языка C#, а так же основных правил конструирования программ. А так же получение практических навыков программирования.

Так как в современных ЭВМ любая информация представлена в двоичном коде, то перевод чисел в различные системы счисления актуален в настоящее время.

Чтобы написать программу необходимо иметь достаточно знаний в программировании.

После написания кода нужно проверить его работоспособность. А так же сделать блок-схему.

  1. Задание .
  1. Спецификация.

str– число в двоично-десятичной системе счисления

sum – число str в десятичной системе счисления

k– переменная, хранящая степень

Перевод числа из двоично-десятичной системы счисления в десятичную. Метод заключается в последовательном умножении каждой n-ой цифры числа на 2 в степени n-1. Применяется для каждой тетрады в числе.

Lenth() – процедура, возвращающая кол-во символов в строке.

transferNum – метод для перевода числа в десятичную систему счисления.

Двоично-десятичный код (англ. binary — coded decimal ), BCD , 8421-BCD — форма записи рациональных чисел, когда каждый десятичный разряд числа записывается в виде его четырёхбитного двоичного кода .[3]

  • для ее реализации нужны технические устройства с двумя устойчивыми состояниями (есть ток — нет тока, намагничен — не намагничен и т.п.), а не, например, с десятью, — как в десятичной;
  • представление информации посредством только двух состояний надежно и помехоустойчиво;
  • возможно применение аппарата булевой алгебры для выполнения логических преобразований информации;
  • двоичная арифметика намного проще десятичной
  • быстрый рост числа разрядов, необходимых для записи чисел.

Выполнить деление исходного числа на 2. Если результат деления больше или равен 2, продолжать делить его на 2 до тех пор, пока результат деления не станет равен 1. Выписать результат последнего деления и все остатки от деления в обратном порядке в одну строку.
(см. Рисунок 1).[3]

https://cf.ppt-online.org/files/slide/r/ribqgfeh2llu1u8jwbp6xtndq4mszvw3vzhc5m/slide-10.jpg

  1. Среда разработкиVisual Studioи.NetFrameWork

Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода . Встроенный отладчик может работать как отладчик уровня исходного кода, так и отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных .

Читайте также:
Топ программ для Айпад

Visual Studio имеет простой и интуитивно-понятный интерфейс(см. рисунок 2).

Рисунок 2- Среда разработки Visual Studio
.NET Framework — программная платформа, выпущенная компанией Microsoft в 2002 году. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), которая подходит для разных языков программирования. Функциональные возможности CLR доступны в любых языках программирования, использующих эту среду.

Считается, что платформа .NET Framework явилась ответом компании Microsoft на набравшую к тому времени большую популярность платформу Java компании Sun Microsystems (ныне принадлежит Oracle).

Основной идеей при разработке .NET Framework являлось обеспечение свободы разработчика за счёт предоставления ему возможности создавать приложения различных типов, способные выполняться на различных типах устройств и в различных средах.

Вторым принципом стала ориентация на системы, работающие под управлением семейства операционных систем Microsoft Windows.

  1. Язык программированияC#

Появление языка C# и инициативы .NET отнюдь не случайно пришлось на начало лета 2000 г. Именно к этому моменту компания Microsoft подготовила промышленные версии новых компонентных технологий и решений в области обмена сообщениями и данными, а также создания Internet-приложений (COM+, ASP+, ADO+, SOAP, Biztalk Framework ).

Название «Си шарп» (от англ. sharp — диез) происходит от буквенной музыкальной нотации, где латинской букве C соответствует нота До, а знак диез(англ. sharp) означает повышение соответствующего ноте звука на полутон, что аналогично названию языка C++, где «++» обозначает инкрементпеременной. Название также является игрой с цепочкой C → C++ → C++++(C#), так как символ «#» можно представить состоящим из 4 знаков «+».

Из-за технических ограничений на отображение (стандартные шрифты, браузеры и т. д.) и того, что знак диеза ♯ не представлен на стандартной клавиатуре компьютера, при записи имени языка программирования используют знак решётки (#). Это соглашение отражено в Спецификации языка C# ECMA-334. Тем не менее, на практике (например, при размещении рекламы и коробочном дизайне), «Майкрософт» использует знак диеза.

Названия языков программирования не принято переводить, поэтому язык называют, используя транскрипцию, — «Си шарп».

  • Полная поддержка классов и объектно-ориентированного программирования, включая наследование интерфейсов и реализаций, виртуальных функций и перегрузки операторов.
  • Полный и хорошо определенный набор основных типов.
  • Встроенная поддержка автоматической генерации XML-документации.
  • Автоматическое освобождение динамически распределенной памяти.
  • Возможность отметки классов и методов атрибутами, определяемыми пользователем. Это может быть полезно при документировании и способно воздействовать на процесс компиляции (например, можно пометить методы, которые должны компилироваться только в отладочном режиме).
  • Полный доступ к библиотеке базовых классов .NET, а также легкий доступ к Windows API (если это действительно необходимо).
  • Указатели и прямой доступ к памяти, если они необходимы. Однако язык разработан таким образом, что практически во всех случаях можно обойтись и без этого.
  • Поддержка свойств и событий в стиле VB.
  • Простое изменение ключей компиляции. Позволяет получать исполняемые файлы или библиотеки компонентов .NET, которые могут быть вызваны другим кодом так же, как элементы управления ActiveX (компоненты СОМ).
  • Возможность использования С# для написания динамических web-страниц ASP.NET.
  • Нет необходимости в указателях;
  • Управление памятью производится автоматически;
  • Возможность работы с перечислениями, структурами, и свойствами классов;
  • Перегрузка операторов;
  • Полная поддержка использования программных интерфейсов;
  • Наличие атрибутов.

Источник: topuch.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru