Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/40: Рейтинг темы: голосов - 40, средняя оценка - 4.70
0 / 0 / 0
Регистрация: 20.07.2014
Сообщений: 41

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

07.09.2014, 17:28. Показов 7868. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1)напишите программу перевода правильной дроби из системы счисления с основанием Q (Q {от 2 до 9}) в десятичную систему счисления.

2)Напишите программу перевода целого десятичного числа в шестнадцатиричную систему счисления.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.09.2014, 17:28
Ответы с готовыми решениями:

Перевод чисел из одной системы счисления в другую
Перевод чисел из одной системы счисления в другую: Запишите числа в прямом коде (формат 1 байт):на паскале а) 31; б) -63; в) 65; ...

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

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

6
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
07.09.2014, 17:47
Примерно как то так, для целых чисел
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var
  n, k: integer;
  r: integer;
  a, b: string;
begin
a:='';
write(Введите число);
read(n);
write(Введите новое основание);
read(k);
if (k<2) or (k>36) then
writeln('Допустимые значения - от 2 до 36');
while n>0 do begin
r:=n mod k;
n:=n div k;
if r<10 then
b:=r
else
b:=chr(ord('A')-10+r);
a:=b+a;
end;
writeln(a);
end;
0
908 / 756 / 833
Регистрация: 06.09.2013
Сообщений: 1,561
07.09.2014, 18:01
Игорь[Igor], вы комментарии не взяли в скобки (7 и 9 строки), да и в 17 строке строковой переменной b присвоили целое число r. Вот, ваш код с поправками:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
var
  n, k: integer;
  r: integer;
  a, b: string;
 
begin
  a := '';
  write('Введите число: ');
  read(n);
  write('Введите новое основание: ');
  read(k);
  if (k < 2) or (k > 36) then
    writeln('Допустимые значения - от 2 до 36');
  while n > 0 do 
  begin
    r := n mod k;
    n := n div k;
    if r < 10 then
      b := IntToStr(r) //<---
    else
      b := chr(ord('A') - 10 + r);
    a := b + a;
  end;
  writeln(a);
end.
0
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
07.09.2014, 18:06
erl27, IntToStr есть в паскале?
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
07.09.2014, 18:07
1)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
uses crt;
const digit:string[9]='012345678';
var  mn:set of char;
//перевод числа из СС 2-9 в СС 10
function ToDec(n:string;r:byte):integer;
var m,i:integer;
begin
m:=0;
while n[1]='0' do
delete(n,1,1);
for i:=1 to length(n) do
m:=m*r+pos(n[i],digit)-1;
ToDec:=m;
end;
procedure Vvod(var s:string;cc:byte);
var i,k:byte;
begin
repeat
readln(s);
k:=0;
for i:=1 to length(s) do
if not (s[i] in mn) then k:=1;
if k=1 then writeln('Число введено неверно, повторите ввод.');
until k=0;
end;
var p,q:string;
    cc,p1,q1,i:integer;
begin
repeat
writeln('Введите из какой CC от 2 до 9:');
readln(cc);
until cc in [2..9];
mn:=[];
for i:=1 to cc do
mn:=mn+[digit[i]];
writeln('Введите числитель дроби в соответствии с CC:');
vvod(p,cc);
writeln('Введите знаменатель дроби в соответствии с CC:');
vvod(q,cc);
p1:=ToDec(p,cc);
q1:=ToDec(q,cc);
writeln('Перевод дроби из СС ',cc,' в СС 10');
write(p,'/',q,'=',p1,'/',q1)
end.
Добавлено через 57 секунд
Игорь[Igor], В АВС есть
0
0 / 0 / 0
Регистрация: 20.07.2014
Сообщений: 41
13.09.2014, 19:05  [ТС]
Добавлено через 1 минуту
erl27, а что будет обозначать стока b := chr(ord('A') - 10 + r);
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
13.09.2014, 19:18
b:=символ с кодом буквы A -10+остаток от деления n/k
Например n=9 k=4
b=chr(65-10+1)=chr(55)='7'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.09.2014, 19:18
Помогаю со студенческими работами здесь

ПЕРЕВОД дробных чисел из одной системы счисления в другую. СПОСОБЫ ВНУТРЕННЕГО представления чисел с фиксированной точк
2) Создать блок-схему алгоритма программы перевода правильных дробей из одной системы счисления в другую по заданному варианту. 3)...

Перевод из одной системы счисления в другую
Программа для перевода числа со знаком из 2 в 10 систему счисления и обратно. 2=&gt;10=&gt;2. Добавлено через 9 часов 15 минут ...

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

Перевод из одной системы счисления в другую
Подскажите в чем ошибка: Uses crt; const a:array of char=('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D',...

Перевод из одной системы счисления в другую
Есть программа , переводящая число из одной системы счисления в другую , используя текстовые файлы для ввода и вывода. Нужно расписать (...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru