Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
suslikman98
0 / 0 / 2
Регистрация: 09.11.2016
Сообщений: 17
#1

Двоичные и десятичные системы исчисления - Pascal

25.04.2017, 17:49. Просмотров 124. Ответов 5
Метки нет (Все метки)

Здравствуйте , нужен простой вариант функции bintodec. Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2017, 17:49
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Двоичные и десятичные системы исчисления (Pascal):

системы исчисления
напишите пожалуйста как перевести число из 8ричной системы в 16ричную

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

Формулы двоичные
Составить алгоритм, записанный в виде блок-схемы для вычисления суммы...

Двоичные деревья, хеш таблицы
Доброго времени суток! Помогите пожалуйста со следующими задачами. 1)....

из 10 в 16 систему исчисления
Доброго времени суток! Помогите пожалуйста число введенное с клавиатуры из...

Разработать подпрограмму, позволяющую распознавать двоичные числа.
Разработать подпрограмму, позволяющую распознавать двоичные числа. Используя...

5
ZX Spectrum-128
Модератор
Эксперт Pascal/Delphi
3858 / 2845 / 3631
Регистрация: 05.06.2014
Сообщений: 13,943
25.04.2017, 18:31 #2
А эта тема чем не устроила?
http://www.cyberforum.ru/pascal/thread238701.html
0
VladimirD
74 / 74 / 78
Регистрация: 30.12.2015
Сообщений: 226
26.04.2017, 08:22 #3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
program ddd;
 
function BinToDec(x:integer):integer;
var n,c,d,m:integer;
begin
  n:=1; m:=0;
  repeat
    c:=x mod 10; 
    d:=x div 10;
    x:=d;m:=m+n*c;n:=n*2;
  until d=0;
  BinToDec:=m;
end;
 
var a:integer; 
begin 
  a:=BinToDec(10101);
  writeln(a);     
end.
0
bormant
Модератор
Эксперт Pascal/DelphiЭксперт NIX
3755 / 2452 / 2034
Регистрация: 22.11.2013
Сообщений: 6,821
26.04.2017, 08:49 #4
VladimirD,
тогда уж:
Pascal
1
2
3
4
5
6
7
8
9
10
11
function BinToDec(x: Longint): Integer;
var n, m: Integer;
begin
  m:=0; n:=1;
  repeat
    m:=m+x mod 10*n;
    n:=n*2;
    x:=x div 10;
  until x=0;
  BinToDec:=m;
end;
Но все-равно малоэффективно, максимальное десятичное число в подобном варианте 1023.
Лучше строки:
Pascal
1
2
3
4
5
6
7
function BinToDec(const x: String): Longint;
var r, i: Integer;
begin
  r:=0; for i:=1 to Length(x) do
    if s[i] in ['0','1'] then r:=r*2+Ord(s[i]='1');
  BinToDec:=r;
end;
0
VladimirD
74 / 74 / 78
Регистрация: 30.12.2015
Сообщений: 226
26.04.2017, 11:03 #5
bormant, согласен. Я впервые перевод делал.

Добавлено через 1 час 46 минут
мы же знаем что переводим бинарное число то от условия можно отказаться

Pascal
1
2
3
4
5
6
function BinToDec(const x: String): Longint;
var r, i: Integer;
begin
  r:=0; for i:=1 to Length(x) do r:=r*2+Ord(x[i]='1');
  BinToDec:=r;
end;
0
bormant
Модератор
Эксперт Pascal/DelphiЭксперт NIX
3755 / 2452 / 2034
Регистрация: 22.11.2013
Сообщений: 6,821
26.04.2017, 11:08 #6
Цитата Сообщение от VladimirD Посмотреть сообщение
от условия можно отказаться
Можно-то можно, но станет выдавать ошибочные результаты на форматированных числах, считая "не 1" за 0, наподобие:
Pascal
1
  WriteLn(BinToDec('1010 1111'));
0
26.04.2017, 11:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2017, 11:08
Привет! Вот еще темы с решениями:

двоичные файлы...Определить, входит ли в файл сочетание abcdefgh.
Дан символьный файл f. Определить, входит ли в файл сочетание abcdefgh. не...

перевести число в факториальную систему исчисления
Как перевести число в факториальную систему исчесления???? помогите плиз...

Выведите число в десятичной системе исчисления с помощью div и mod
Введите с клавиатуры натуральное число и систему исчисления, в которой это...

сформировать массив из чисел в 8ричной, десятичной или 16ричной системах исчисления.
Вот где здесь ошибка? В файле записана информация, состоящая из 0 и 1. По...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru