Введение
В школьном курсе информатики в разделе «Кодирование информации. Системы счисления» рассматриваются способы перевода целых чисел из десятичной системы счисления в машинные системы счисления с основанием 2, 8, 16 и обратный – из двоичной, восьмеричной, шестнадцатеричной систем счисления в десятичную. Перевод дробных чисел, как более сложный, рассматривается факультативно. Программа Калькулятор из набора стандартных программ Windows предоставляет возможность взаимного перевода только целых чисел в десятичной, двоичной, восьмеричной и шестнадцатеричной системах счисления.
Цельюмоей работыстало написание расширенной программы перевода как целых, так и дробных чисел из десятичной системы счисления в системы счисления с основанием 2, 3, 4, …, 15, 16. Исходя из этого я поставил перед собой следующие задачи:
Разобраться в алгоритме перевода целых десятичных чисел в другие системы счисления.
Разобраться в алгоритме перевода дробных десятичных чисел в другие системы счисления.
Написать программу перевода как дробных, так и целых чисел в другие системы счисления.
Протестировать программу, доказав правильность её работы.
План реализации проекта:
Найти достоверные источники с описанием перевода целых и дробных десятичных чисел в другие системы счисления и освоить их.
Изучить возможность реализации найденных алгоритмов на языке программирования Паскаль. Для этого повторить и изучить новые понятия языка программирования, необходимые для реализации поставленной задачи (подпрограммы-функции, стандартные процедуры и функции).
Разработать и отладить программу.
Составить инструкцию по работе с программой для заинтересованных пользователей.
Итогом исследования стала программа «Калькулятор перевода чисел (целых и с десятичной запятой) из десятичной системы счисления в систему счисления с основанием от 2 до 16».
Программа была протестирована при написании и отладке. Кроме этого для проверки правильности её работы были привлечены обучающиеся 9, 11 классов МБОУ СОШ №5, которым я выражаю благодарность за проделанную работу.
Материалы и методика исследования
1. Математическая постановка задачи
В Интернете можно найти онлайн калькуляторы перевода чисел в системах счисления, в том числе и дробных [5], [6]. Но тексты программ не приведены. Мне было интересно самому разработать такую программу.
1.1 Алгоритм перевода целых десятичных чисел в другие системы счисления
Математический способ перевода целых десятичных чисел в другие системы счисления заключается в следующем [1, с.47]. Для перевода целого десятичного числа в другую систему счисления необходимо:
1) основание новой системы счисления записать в десятичной системе счисления и все последующие действия производить в десятичной системе счисления;
2) последовательно выполнять деление сначала исходного числа, а затем получаемых целых частных от деления, на основание новой системы счисления до тех пор, пока не получим, частное, меньшее делителя (основания новой системы счисления);
3) полученные остатки, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления;
4) составить из остатков от деления число в новой системе счисления, записывая его, начиная с последнего остатка, т.е. справа налево.
Примеры:
Алфавит десятичной системы счисления:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Алфавит восьмеричной системы счисления:
0, 1, 2, 3, 4, 5, 6, 7
Алфавит шестнадцатеричной системы счисления:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13), E(14), F(15)
Алфавит двоичной системы счисления:
0, 1
Алфавит системы счисления с основанием четырнадцать:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13)
Алфавит системы счисления с основанием пять:
0, 1, 2, 3, 4
1.2 Алгоритм перевода правильной десятичной дроби
в другие системы счисления
Математический способ перевода правильной десятичнойдроби в другие системы счисления заключается в следующем [1, с.48]:
1) основание новой системы счисления выразить цифрами исходной системы счисления и все последующие действия производить в исходной системе счисления;
2) последовательно умножать данное число и получаемые дробные части произведений на основание новой системы до тех пор, пока дробная часть произведения не станет равной нулю или будет достигнута требуемая точность представления числа;
3) полученные целые части произведений, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления;
4) составить дробную часть числа в новой системе счисления, начиная с целой части первого произведения.
Примеры:
1.3 Алгоритм перевода произвольных десятичных чисел,
содержащих целую и дробную части, в другие системы счисления
Математический способ перевода произвольных чисел [1, с.49], то есть чисел, содержащих целую и дробную части, осуществляется в два этапа. Отдельно переводится целая часть числа, отдельно – дробная. В итоговой записи полученного числа целая часть отделяется от дробной запятой.
Примеры:
2. Реализация математических алгоритмов на языке программирования Паскаль
После вывода на дисплей функционального названия программы, запрашивается десятичное число и основание системы счисления для перевода. Программа реализует перевод только в системы счисления с основанием от 2 до 16, как самых востребованных. Это связано ещё и с задачей представления чисел в алфавитах, количество знаков в которых больше 10. В этом случае в машинных системах счисления все знаки, следующие за цифрой 9, обозначаются заглавными буквами латинского алфавита.
В программе проводится проверка на корректность ввода основания системы счисления и самого числа на присутствие в нём символов, отличных от цифр и десятичной запятой.
Выполнение программы зацикливается с целью многократного повторения перевода чисел при однократном запуске программы. Выход из программы – стандартный способ закрытия окна.
Если число вводится с десятичной запятой, то появляется дополнительный запрос на ввод точности вычисления дробной части – количества знаков после запятой в результате. Если во ведённом числе присутствует десятичная запятая, то из него выделяются целая и дробная части и пересылаются в соответствующие подпрограммы-функции перевода целого числа (CCh) и дробной части числа (DCh). Результат перевода выводится на экран. Если во введённом числе отсутствует десятичная запятая, то вызывается только подпрограмма-функция перевода целого числа (CCh). Результат перевода выводится на экран.
В подпрограмму-функцию CCh перевода целой части числа в систему счисления с заданным основанием пересылаются: число – выделенная из исходного числа целая часть и основание системы счисления. Так как при переводе числа в систему счисления с основанием большим 10 в представлении числа могут появиться латинские буквы, результатом подпрограммы-функции CCh является строка, которая может состоять из цифр от 0 до 9 и латинских букв A, B, C, D, E, F. Алгоритм перевода целой части числа: если целая часть числа не равна нулю, то находится остаток от деления целой части на основание системы счисления, переводится в строковый тип и добавляется в начало итоговой строки. Затем дробная часть отсекается и вновь находится остаток от деления на основание системы счисления до тех пор, пока число больше нуля. Результат формируется в строковой переменной s из остатков, записанных в обратном порядке. Если длина строки равна нулю, то функции CCh присваивается значение ноль, в противном случае – значение строки s.
В подпрограмму-функцию DCh перевода дробной части числа в систему счисления с заданным основанием пересылаются: строка – выделенная из исходного числа дробная часть, основание системы счисления и количество знаков после десятичной запятой, которые необходимо вычислить и которые задают точность вычислений. Алгоритм перевода дробной части числа: определяется длина дробной части числа (количество цифр в дробной части) исходное число умножается на основание системы счисления, выделятся целая часть, которая является первой цифрой итогового числа. Полученная целая часть произведения, являющаяся цифрой числа в новой системе счисления, переводится в соответствии с алфавитом новой системы счисления. Этот процесс продолжается столько раз, сколько цифр нужно получить после запятой в итоговом числе. Результат формируется в строковой переменной b, значение которой присваивается функции DCh. Описание переменных и листинг программы представлены в Приложении 1 и Приложении 2.
В программе используются стандартные функции:
length(b) – определяет длину строки;
leftstr(ch,n) – возвращает первые n символов строки;
rightstr(ch,n) – возвращает последние n символов строки;
val(s,v,err) – преобразует строку в целое число;
inttostr(a) – преобразует целое число в строку;
3. Тестирование программы
Алгоритм перевода целых десятичных чисел в любую систему счисления стандартен, поэтому, в процессе разработки программы, было сделано предположение, что если программа корректно работает с системами счисления с основанием 2, 8 и 16, то она будет корректно работать и системами счисления с основанием 3, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15. Однако данное предположение требовало практического подтверждения.
Для тестирования разработанной программы было привлечено 25 учащихся 9 и 11 классов Средней школы № 5 города Кстово. Каждому из них было предложено выполнить задание по переводу 10 разных чисел, представленных в десятичной системе счисления в систему счисления указанную в задании (см. Приложение 3).
При проверке работоспособности программы у тестируемых возникли определённые трудности с проверкой правильности перевода дробной части чисел с десятичной запятой. Так как стандартное приложение ОС Windows «Калькулятор» (в режиме «Программист») позволяет производить перевод только целых чисел в системах счисления с основанием 10, 2, 8, 16, то его можно было использовать для проверки работы программы при переводе целых чисел. Поэтому, для перевода были использованы онлайн-калькуляторы, размещенные в сети Интернет [4], [5] и примеры из учебных пособий Угриновича Н.Д. [1], [2] (см. Приложение 3).
При несовпадении результатов с онлайн-калькуляторами были проведены ручные расчёты по математическому алгоритму, доказавшие правильность работы программы Калькулятор (см. Приложение 4).
Обзор литературы
Целью моей работы было написание расширенной программы перевода как целых, так и дробных чисел из десятичной системы счисления в системы счисления с основанием 2, 3, 4, …, 15, 16. В качестве источников необходимой информации были выбраны два пособия Угриновича Н.Д. [1], [2], так как они удовлетворяли основным требованиям:
содержали чёткий и понятный математический перевод десятичных чисел в другие системы счисления, причем как целых, так и содержащих дробную часть;
математические алгоритмы подтверждались большим количеством примеров с числами, содержащими дробную часть, которые можно было использовать для тестирования созданной программы Калькулятор (см. Приложение 3);
пособия были допущены министерством образования Российской Федерации в качестве учебников по информатике для учащихся 10-11 классов естественно-математического профиля общеобразовательных учреждений, что подтверждает надёжность приведённых в них алгоритмов.
Результаты и их обсуждение
При написании программы и её отладке были использованы тесты из пособий Угриновича Н.Д. [1], [2]. Они подтвердили правильность работы программы (см. Приложение 3).
Для дальнейшего тестирования программы «Калькулятор» были привлечены обучающимися 9 и 11 классов МБОУ СШ №5. Они работали по карточкам: сначала производился расчёт в программе «Калькулятор», а затем в двух онлайн-калькуляторах в Интернете [4], [5].
При тестировании в онлайн-калькуляторе PLANETCALC [4] по карточке №1 были несовпадения с результатами программы Калькулятор в трёх примерах (2, 6, 8), по карточке №3 – в одном примере (2). При тестировании по этим же карточкам в онлайн-калькуляторе [5] совпадение было полным. Ручной расчёт по математическому алгоритму [1], [2] также доказал правильность работы программы Калькулятор. Поэтому для расчётов по карточкам №2, №4, №5 и №6 использовался только онлайн-калькулятор umath.ru. Совпадение было во всех примерах.
Таким образом программа «Калькулятор» отлажена и работает правильно.
В ходе тестирования получены дополнительные результаты по онлайн-калькуляторам:
онлайн-калькулятор PLANETCALC [4] не может считаться надёжным, так как не во всех примерах давал верные результаты (см. Приложение 4);
онлайн-калькулятор umath.ru [5] во всех примерах давал верные результаты (см. Приложение 4). Поэтому по нему можно производить расчёты, хотя точность вычислений в нём не задаётся и одинакова для всех расчётов – 13 знаков после запятой.
Заключение
Для того, чтобы написать расширенную программу перевода как целых, так и дробных чисел из десятичной системы счисления в системы счисления с основанием 2, 3, 4, …, 15, 16 я выполнил следующее:
1) изучил математический алгоритм перевода целых десятичных чисел в другие системы счисления [1], [2];
2) изучил математический алгоритмы перевода правильных десятичных дробей и смешанных десятичных чисел в другие системы счисления [1], [2];
3) реализовал математические алгоритмы перевода на языке программирования Паскаль. Используя встроенный справочник [3], я продолжил изучение Паскаля, использовав в своей программе процедуры-функции, чтобы разбить одну сложную задачу на несколько конкретных подзадач, познакомился с работой и применил в программе несколько новых стандартных функций;
4) с целью проверки правильности работы программы подобрал различные тесты из пособий Угриновича Н.Д. [1], [2] (см. Приложение 3) и разработал свои (см. Приложение 4), которые помогли выявить и исправить ошибки. Кроме этого для тестирования разработанной программы 25 учащихся 9, 10 и 11 классов Средней школы № 5 города Кстово выполнили задания по переводу 10 разных чисел, представленных в десятичной системе счисления, в систему счисления указанную в задании (см. Приложение 4), используя программу «Калькулятор» и онлайн-калькуляторы из Интернета;
5) составил инструкцию по работе с программой.
Итоги исследования: Итогом исследования стала программа «Калькулятор», переводящая числа (как целые, так и с дробной частью) из десятичной системы счисления в систему счисления с основанием от 2 до 16 (см. Приложения 1, 2, 5).
Источники информации
Списоклитературных источников
Угринович Н.Д., Босова Л.Л., Михайлова Н.И. Практикум по информатике и информационным технологиям. Учебное пособие для общеобразовательных учреждений – М.: БИНОМ. Лаборатория знаний, 2004. – 394 с.
Угринович Н.Д. Информатика и информационные технологии. Учебник для 10-11 классов – М.: БИНОМ. Лаборатория знаний, 2005. – 511 с.
Язык программирования Паскаль – встроенный справочник программной среды PascalABC.NET
Список интернет-источников
Онлайн калькуляторы. Перевод дробных чисел из одной системы счисления в другую – Сайт PLANETCALC. [Электронный ресурс]. URL: https://planetcalc.ru/862/ (Дата обращения 19.02.2018 г.)
Калькуляторы. Перевод дробных чисел из одной системы счисления в другую – Сайт umath.ru Изучаем математику вместе. [Электронный ресурс]. URL: https://umath.ru/calc/perevod-drobnyx-chisel/ (Дата обращения 20.02.2018 г.)
Приложения
Приложение 1
Описание переменных
Главная программа
Переменные:
ch – строка, исходное десятичное число
l1 – целое, целая часть исходного десятичного числа
l2 – целое, дробная часть исходного десятичного числа
raz – целое, основание системы счисления для перевода
zn – целое, при переводе дробного числа, количество цифр после запятой в результате
r – целое, промежуточная константа для функции var, при успешном преобразовании строки в число r=0
Алгоритм:
1. На дисплей выводится название программы.
2. Выполнение программы зацикливается с целью многократного повторения перевода чисел при однократном запуске. Выход из программы – стандартный способ закрытия окна.
3. Программа запрашивает ввод числа и основание системы счисления для перевода. Если число вводится с десятичной запятой, то появляется дополнительный запрос на ввод точности вычисления дробной части – количества знаков после запятой в результате.
4. Если во ведённом числе присутствует десятичная запятая, то из него выделяются целая и дробная части и пересылаются в соответствующие подпрограммы-функции перевода целого числа и дробной части числа. Результат перевода выводится на экран. Если во ведённом числе отсутствует десятичная запятая, то вызывается только подпрограмма-функция перевода целого числа. Результат перевода выводится на экран.
Подпрограмма-функция перевода целого числа – CCh(a,n)
CCh – подпрограмма-функция, значение которой – строка (число, переведённое в систему счисления с основанием n)
Переменные:
a – целое, исходное десятичное число
n – целое, основание системы счисления для перевода
a1 – целое, целая часть числа при делении a на n
i – целое, количество цифр в итоговом числе в системе счисления с основанием n
i1 – целое, счётчик цикла
s – строка, результат перевода целого числа в систему счисления с основанием n (состоит из остатков от деления числа a1 на n)
Алгоритм:
Исходное число делится на основание системы счисления пока оно больше нуля. Остатки от деления записываются в строку s в обратном порядке. Если длина строки равна нулю, то функции CCh присваивается значение ноль, в противном случае – значение строки s.
Подпрограмма-функция перевода дробной части числа – DCh(a,raz,zn)
DCh – Подпрограмма-функция, значение которой – строка (дробная часть переведенного числа)
Переменные:
а - дробная часть исходного числа
raz – Основание системы счисления для перевода
zn – Количество знаков после запятой у переведённого числа
a1 – целое, дробная часть для вычислений
i – целое, счетчик цикла
i2 – целое, число для перевода
l – целое, длина дробной части
b – строка, итоговое значение числа
Алгоритм:
Исходное число умножается на основание системы счисления, выделятся целая часть, которая является первой цифрой итогового числа. Этот процесс продолжается столько раз, сколько цифр нужно получить после запятой в итоговом числе.
Приложение 2
Листинг программы
varch: string;
l1,l2,raz,zn,r1,r2,r3:integer;
l3:string;
function DCh(a:string;raz,zn:integer):string;
var
a1,i,i2,l,err:integer;
b:string;
begin
l:=length(a);
b:='';
i2:=10;
for i:=2 to l do
begin
i2:=i2 * 10;
end;
val(a,a1,err);
for i:=1 to zn do
begin
case ((a1*raz)div i2) of
0..9: b:=b+inttostr((a1*raz)div i2);
10: b:=b+'A';
11: b:=b+'B';
12: b:=b+'C';
13: b:=b+'D';
14: b:=b+'E';
15: b:=b+'F';
end;
a1:=(a1*raz)mod i2;
end;
DCh:=b;
end;
function CCh(a,n:integer):string;
var
a1,i,i1:integer;
s:string;
begin
a1:=a;
i:=0;
s:='';
while a1>0 do
begin
i:=i+1;
case a1 mod nof
0..9: s:=inttostr(a1 mod n)+s;
10: s:='A'+s;
11: s:='B'+s;
12: s:='C'+s;
13: s:='D'+s;
14: s:='E'+s;
15: s:='F'+s;
end;
a1:=a1 div n;
end;
if s''
then CCh:=s
else CCh:='0';
end;
begin
writeln('Программа перевода из 10-чной системы счисления');
writeln('в систему счисления от 2-чной до 16-чной.');
writeln;
while 2>1 do
begin
write('Введите число: ');
repeat
readln(ch);
if pos(',',ch)0
then
begin
r3:=0;
val(leftstr(ch,pos(',',ch)-1),l1,r1);
val(rightstr(ch,length(ch)-pos(',',ch)),l2,r2);
end
else
begin
r1:=0;
r2:=0;
val(ch,l1,r3);
end;
if ((r10) or (r20) or (r30)) then write('Введите корректное число: ');
until (r1=0) and (r2=0) and (r3=0);
write('Введите основание системы счисления: ');
readln(raz);
if (raz16)
then while (raz16) do
begin
write('Введите корректное основание системы счисления: ');
readln(raz);
end;
if pos(',',ch)0
then begin
write('Задайте точность вычислений - введите число знаков после запятой: ');
readln(zn);
val(leftstr(ch,pos(',',ch)-1),l1,r1);
l3:=rightstr(ch,length(ch)-pos(',',ch));
writeln('Результат: ',CCh(l1,raz),',',DCh(l3,raz,zn))
end
else begin
val(ch,l1,r1);
writeln('Результат: ',CCh(l1,raz));
end;
writeln('Для продолжения нажимите ');
readln;
end;
end.
Приложение 3
Задания для тестирования программы из пособий Угриновича Н.Д.
Примеры перевода чисел для систем счисления с основанием 2, 8 и 16
Примеры из пособий Угриновича Н.Д. |
Вычисления программы «Калькулятор» |
0,6562510=0,528 |
0,52 |
0,6562510=0,A816 |
0,A8 |
0,562510=0,10012 |
0,1001 |
0,3510=0,0102 |
0,010 |
47,8510=101111,1102 |
101111,110 |
3,510=3,816 |
3,8 |
0,710=0,10112 |
0,1011 |
0,710=0,1011012 |
0,101101 |
17,2510=1001,012 |
1001,01 |
0,3510=0,2638 |
0,263 |
47,8510=57,6638 |
57,663 |
12,3410=1100,01012 |
1100,0101 |
124,2510=174,28 |
174,2 |
2,7510=10,112 |
10,11 |
55,62510=67,58 |
67,5 |
0,3510=0,59916 |
0,599 |
47,8510=2F,D9916 |
2F,D99 |
12,3410=C,570A16 |
C,570A |
0,210=0,0012 |
0,001 |
0,210=0,1468 |
0,146 |
0,210=0,33316 |
0,333 |
3,510=11,12 |
11,1 |
3,510=3,48 |
3,4 |
56,7810=70,61728 |
70,6172 |
Приложение 4
Образцы заданий для тестирования программы
Задание.
Используя предложенную программу «Калькулятор» осуществите перевод десятичных чисел в указанную систему счисления.
Провести проверку правильности перевода чисел с помощью онлайн калькуляторов: https://planetcalc.ru/862/ и https://umath.ru/calc/perevod-drobnyx-chisel/
Скриншот окна программы при тестировании
Карточка №1
№ |
Десятичное число |
Система счисления |
Точ-ность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор PLANETCALC |
||||
1 |
265 |
2 |
0 |
100001001 |
100001001 |
2 |
265,23 |
2 |
4 |
100001001,0011 |
100001001,0100 |
3 |
12 |
8 |
0 |
14 |
14 |
4 |
12,25 |
8 |
2 |
14,20 |
14,20 |
5 |
1024 |
2 |
0 |
10000000000 |
10000000000 |
6 |
1024,12345 |
2 |
4 |
10000000000,0001 |
10000000000,0010 |
7 |
1024 |
16 |
0 |
400 |
400 |
8 |
1024,12345 |
16 |
5 |
400,1F9A6 |
400,1F9A7 |
9 |
340 |
3 |
0 |
110121 |
110121 |
10 |
34,56 |
3 |
3 |
1021,120 |
1021,120 |
Карточка №1
№ |
Десятичное число |
Система счисления |
Точ-ность |
Полученное число |
|
«Калькулятор» |
umath.ru |
||||
1 |
265 |
2 |
0 |
100001001 |
100001001 |
2 |
265,23 |
2 |
4 |
100001001,0011 |
100001001,0011101011100 |
3 |
12 |
8 |
0 |
14 |
14 |
4 |
12,25 |
8 |
2 |
14,20 |
14,2 |
5 |
1024 |
2 |
0 |
10000000000 |
10000000000 |
6 |
1024,12345 |
2 |
4 |
10000000000,0001 |
10000000000,0001111110011 |
7 |
1024 |
16 |
0 |
400 |
400,0 |
8 |
1024,12345 |
16 |
5 |
400,1F9A6 |
400,1F9A6B50B0F27 |
9 |
340 |
3 |
0 |
110121 |
110121,0 |
10 |
34,56 |
3 |
3 |
1021,120 |
1021,1200100201102 |
Карточка №2
№ |
Десятичное число |
Система счис-ления |
Точ-ность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор umath.ru |
||||
1 |
256 |
5 |
0 |
2011 |
2011,0 |
2 |
256,002 |
5 |
8 |
2011,00011111 |
2011,0001111111111 |
3 |
10 |
13 |
0 |
A |
A,0 |
4 |
10,000235 |
13 |
10 |
A,0006933B94 |
A,0006933B9477A |
5 |
457 |
6 |
0 |
2041 |
2041,0 |
6 |
457,0457 |
6 |
5 |
2041,01351 |
2041,0135121024124 |
7 |
721 |
7 |
0 |
2050 |
2050,0 |
8 |
721,58016 |
7 |
2 |
2050,40 |
2050,4026651464313 |
9 |
111111111 |
10 |
0 |
111111111 |
111111111,0 |
10 |
111111111,11111 |
10 |
3 |
111111111,111 |
111111111,1111099999999 |
Карточка №3
№ |
Десятичное число |
Система счисления |
Точность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор PLANETCALC |
||||
1 |
265 |
4 |
0 |
10021 |
10021 |
2 |
265,23 |
4 |
4 |
10021,0322 |
10021,0323 |
3 |
12 |
9 |
0 |
13 |
13 |
4 |
12,25 |
9 |
2 |
13,22 |
13,22 |
5 |
1024 |
11 |
0 |
851 |
851 |
6 |
1024,12345 |
11 |
4 |
851,13A3 |
851,13A3 |
7 |
1024 |
12 |
0 |
714 |
714 |
8 |
1024,12345 |
12 |
5 |
714,1593A |
714,1593A |
9 |
340 |
13 |
0 |
202 |
202 |
10 |
34,56 |
13 |
3 |
28,738 |
28,738 |
Карточка №3
№ |
Десятичное число |
Система счисления |
Точность |
Полученное число |
|
«Калькулятор» |
umath.ru |
||||
1 |
265 |
4 |
0 |
10021 |
10021,0 |
2 |
265,23 |
4 |
4 |
10021,0322 |
10021,0322320110132 |
3 |
12 |
9 |
0 |
13 |
13,0 |
4 |
12,25 |
9 |
2 |
13,22 |
13,2222222222222 |
5 |
1024 |
11 |
0 |
851 |
851,0 |
6 |
1024,12345 |
11 |
4 |
851,13A3 |
851,13A3482294AA2 |
7 |
1024 |
12 |
0 |
714 |
714,0 |
8 |
1024,12345 |
12 |
5 |
714,1593A |
714,1593A38845552 |
9 |
340 |
13 |
0 |
202 |
202,0 |
10 |
34,56 |
13 |
3 |
28,738 |
28,738421069B594 |
Карточка №4
№ |
Десятичное число |
Сист.сч. |
Точность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор umath.ru |
||||
1 |
256 |
14 |
0 |
144 |
144,0 |
2 |
256,002 |
14 |
8 |
144,0056B910 |
144,0056B91017D48 |
3 |
10 |
15 |
0 |
A |
A,0 |
4 |
10,000235 |
15 |
9 |
A,000BD6BE4 |
A,000BD6BE46BE4 |
5 |
457 |
3 |
0 |
121221 |
121221,0 |
6 |
457,457 |
3 |
5 |
121221,11010 |
121221,1101000110101 |
7 |
721 |
4 |
0 |
23101 |
23101,0 |
8 |
721,58016 |
4 |
3 |
23101,211 |
23101,2110201111312 |
9 |
111111111 |
5 |
0 |
211421023421 |
211421023421,0 |
10 |
111111111,11111 |
5 |
5 |
211421023421,02342 |
211421023421,0234210213244 |
Карточка №5
№ |
Десятичное число |
Сист.сч. |
Точность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор umath.ru |
||||
1 |
0,265 |
2 |
5 |
0,01000 |
0,0100001111010 |
2 |
0,23 |
4 |
4 |
0,0322 |
0,0322320110132 |
3 |
0,1278 |
8 |
3 |
0,101 |
0,1013360015066 |
4 |
0,2 |
9 |
2 |
0,17 |
0,1717171717171 |
5 |
0,1024 |
11 |
6 |
0,114326 |
0,1143269346162 |
6 |
0,12345 |
12 |
7 |
0,1593A38 |
0,1593A38845552 |
7 |
0,1024 |
13 |
8 |
0,143C8531 |
0,143C8531AA450 |
8 |
0,12345 |
14 |
5 |
0,1A2A6 |
0,1A2A6530D6B04 |
9 |
0,340 |
15 |
9 |
0,517777777 |
0,5177777777777 |
10 |
0,56 |
16 |
3 |
0,8F5 |
0,8F5C28F5C28F6 |
Карточка №6
№ |
Десятичное число |
Система счисления |
Точность |
Полученное число |
|
«Калькулятор» |
Онлайн-калькулятор umath.ru |
||||
1 |
0,0256 |
2 |
5 |
0,00000 |
0,0000011010001 |
2 |
0,002 |
4 |
4 |
0,0000 |
0,0000200301021 |
3 |
0,0009 |
8 |
3 |
0,000 |
0,0003537337510 |
4 |
0,000235 |
9 |
2 |
0,00 |
0,0001477887300 |
5 |
0,0457 |
10 |
6 |
0,045700 |
0,0456999999999 |
6 |
0,457 |
12 |
7 |
0,5598428 |
0,559842830A44B |
7 |
0,721 |
13 |
8 |
0,94B06339 |
0,94B06339AC18A |
8 |
0,58016 |
14 |
5 |
0,819D5 |
0,819D5D86A2C3A |
9 |
0,111 |
15 |
9 |
0,19E959595 |
0,19E9595959595 |
10 |
0,11111 |
16 |
3 |
0,1C7 |
0,1C71B4784230F |
Приложение 5
Инструкция по работе с программой «Калькулятор»
Программа предназначена для перевода десятичных чисел (целых и с десятичной запятой) в системы счисления с основанием 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16.
Если нужно перевести целые числа, вводятся два числа: исходное целое десятичное число и основание системы счисления для перевода.
При переводе смешанных чисел (содержащих целую и дробную части) вводятся три числа: исходное число с десятичной запятой, основание системы счисления для перевода и число, указывающее точность вычисления дробной части десятичного числа (сколько цифр после запятой должно быть выведено на экран).
При однократном запуске программы можно переводить любое количество чисел. Для перехода к очередному расчёту – нажать клавишу [Enter] на клавиатуре.
Для выхода из программы необходимо воспользоваться кнопкой рабочего окна программы «Закрыть».
Программа проверяет правильность ввода данных. При неверном наборе чисел появляется подсказка о необходимости повторного корректного ввода.