Конвертер десятичных чисел

Автор работы: Пользователь скрыл имя, 14 Декабря 2017 в 00:01, курсовая работа

Описание работы

Целью работы является разработка конвертера, переводящего числа из десятичной системы счисления в шестнадцатеричную и двоичную системы, на языке программирования высокого уровня С в среде программирования Borland C++ 3.1

Для достижения поставленной цели требуется осуществить следующие задачи:

1 Провести обзор языков программирования
2 Выполнить анализ предметной области
3 Разработать алгоритм и программу

Содержание работы

Введение
1 Обзор языков программирования
1.1 История языков программирования
1.2 Обзор языка С
2 Анализ предметной области
2.1 Проектирование программы
2.2 Процедуры и функции программы
3 Разработка алгоритма и программы
3.1 Спецификации программы
3.2 Описание программы
3.3 Тестирование программы
Заключение
Список использованной литературы

Файлы: 1 файл

Kursovaya.docx

— 116.89 Кб (Скачать файл)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Головная программа

 

int main()

{

int num;

printf("Enter the number: ");

scanf("%d", &num);

printf("Dec: %d\n", num);

toBin(num);

toHex(num);

}

 

 

 

 

 

 

 

 

 

 

 

 

 

3 Разработка алгоритма и программы

 

 

3.1 Спецификация программы

 

Исполняемый файл приложения Конвертер имеет название Main.exe.

Исходный код программы доступен в файле Main.c.

 

3.2 Описание программы

 

Программа предназначена для перевода чисел из десятичной системы счисления в двоичную и шестнадцатеричную. Программа функционирует на любых современных компьютерах типа IBM PC. Дополнительных устройств для работы программы не требуется.

Программа запускается с помощью запуска файла Main.exe. После открытия главного окна приложения пользователь приглашается ко вводу десятичного числа, после чего будет выведены его аналоги в 2- и 16-ричных с.с.

 

 

3.3 Тестирование программы

 

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

 

Запускаем файл Main.exe. Далее вводим число в десятичной системе счисления, нажимаем «Ввод» и получаем числа в 2 и 16 с.с.

 

Тестирование работы приложения проводится визуально, т.е. проведением операций с переводом чисел.

При тестировании программы ошибок не обнаружено.

 

 

 

 

 

 

 

 

 

 

 

Запускаем программу

\

 

Вводим необходимое нам число

 

 

 

 

 

 

 

 

 

Получаем результат

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Исходный код программы.

 

#include "stdio.h"

 

//прототипы используемых  далее функций

void toBin(int); //функция перевода в 2сс

void toHex(int); //функция перевода в 16сс

 

int main()

{

int num; //число, используемое для конвертации

printf("Enter the number: ");

scanf("%d", &num);   //считываем введенное в консоли число

printf("Dec: %d\n", num); //выводим это число

toBin(num);  //перевод в 2сс

toHex(num); //перевод в 16сс

 

}

void toBin(int d) //2сс

{

char temp[256], n_new[256]; //2 СИ-строки

int cur = 0; //индекс текущего элемента в строке

while (d > 0) //пока наше число больше 0

{

temp[cur] = '0' + d % 2; //записываем в строку остаток от деления числа на 2

cur++;  //увеличиваем счетчик

d /= 2;  //записываем в число целую часть от деления его на 2

}

for (int i = 0; i < cur; i++)

n_new[i] = temp[cur - 1 - i]; //инверсируем порядок сиволов в строке с помощью 2ого массива

n_new[cur] = 0;  //конец СИ-строки

printf("Bin: %s\n", n_new); //выводим число в консоль

}

 

void toHex(int d) //16сс

{

char n_new[256]; //СИ-строка

int s = 1, div, cur = 0; //s-наибольшая степень 16, меньше заданного числа,

//div - целая часть от деления заданного на s, cur - счетчик

while (s < d) //находим s

s *= 16;

if (s >= 16)

s /= 16;

while (d > 0) //пока d больше 0

{

div = d / s; //целая часть

if (div >= 10 && div <= 15 //если больше 9, то записываем буквами

n_new[cur] = (char)('A' - 10 + div);

else //если нет - цифрами

n_new[cur] = '0'+div;

cur++; //увеличиваем счетчик

d = d % s; //заносим остаток от деления и работаем дальше с ним

s /= 16; //понижаем степень

}

n_new[cur] = 0; //конец СИ-строки

printf("Hex: %s\n", n_new); //вывод в консоль


Заключение

 

Разработан конвертер, переводящий числа из десятичной системы счисления в шестнадцатеричную и двоичную системы, на языке программирования высокого уровня С.

Проведён обзор языков программирования. Язык С является языком высокого уровня, который стал основой для других языков программирования С++, С#, Java.Но несмотря на это, язык также имеет недостатки: сложная структура и некоторые синтаксические конструкции могли быть лучше.

Проведен анализ предметной области.Разработан алгоритм и скомпилирована программа. Программа Main.exe работает корректно и без ошибок.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список использованной литературы

 

1. Трой Д. Программирование на языке Си для персонального компьютера IBM PC: Пер. с англ. - М.: Радио и связь, 1991, - 432 с.

2. Прата С., Язык программирования C. Лекции и упражнения; Вильямс, 2015, - 928 с.

3. Керниган Б. Язык программирования Си; Вильямс, 2016 – 288 с.

 

 

 


Информация о работе Конвертер десятичных чисел