С Новым годом! Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 16.03.2015
Сообщений: 5
1

Перевод числа X, заданного в системе счисления с основанием q в систему счисления с основанием p

13.04.2015, 22:49. Показов 5095. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста, разработать программу, выполняющую перевод действительного числа X заданного в системе счисления с основанием q в систему счисления с основанием p (2≤ q, p ≤16).
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.04.2015, 22:49
Ответы с готовыми решениями:

Перевести число из системы счисления с основанием 19 в десятичную систему счисления
Уважаемые разбирающиеся во всём этом люди, прошу вас помочь мне с этой задачей Примечания...

Найти сумму цифр числа в системе счисления с основанием p
Help people!!!! Нужна программа в Паскале... Вот текст задачи.... Найти сумму цифр числа в системе...

Перевод числа из системы счисления с основанием X в систему счисления с основанием 10
Надо написать программу на Си,которая число с системой счисления X переводит в систему счисления в...

Число, заданное в системе счисления с основанием p перевести в систему с основанием q
Число, заданное в системе счисления с основанием p перевести в систему с основанием q

4
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
14.04.2015, 07:02 2
Перевод в различные системы счисления
0
1647 / 1076 / 1081
Регистрация: 03.07.2013
Сообщений: 4,507
14.04.2015, 10:01 3
Joy,
Цитата Сообщение от Olya177 Посмотреть сообщение
выполняющую перевод действительного числа
0
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
14.04.2015, 10:32 4
Лучший ответ Сообщение было отмечено Olya177 как решение

Решение

кажись так тогда:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
const
     digit:string[16]='0123456789ABCDEF';
 
function DecimalToXStr (aBase : Integer; aVal : double; Precision:integer) : String;
var
  Val : double;
  IntVal : Int64;
  FracVal : double;
  StrInt : String;
  StrFrac : String;
  i : Integer;
begin
  // Получаем целую и дробную части числа.
  IntVal := Trunc(aVal);
  FracVal := Frac(aVal);
 
  //Переводим целую часть.
  StrInt := '';
  repeat
    StrInt := digit[IntVal mod aBase+1] + StrInt;
    IntVal := IntVal div aBase;
  until IntVal = 0;
 
  // Если дробная часть = 0, то перевод закончен.
  if FracVal = 0 then begin
    Result := StrInt;
    exit;
  end;
 
  //Переводим дробную часть. Точность - до Precision цифр после запятой.
  StrFrac := '';
  for i := 1 to Precision do begin
    Val := FracVal * aBase;
    StrFrac := StrFrac + digit[Trunc(Val)+1];
    FracVal := Frac(Val);
    //Если дробная часть = 0, то перевод закончен.
    if FracVal = 0 then Break;
  end;
  if StrFrac<>'' then begin  StrInt:=StrInt + '.' + StrFrac;
    while StrInt[length(StrInt)]='0' do delete(StrInt,length(strint),1);
  end;
  Result:=StrInt;
end;
 
function ToDec(n:string;r:Int64):Int64;
var
  m:Int64;
  i:longint;
begin
Result:=0;
if trim(n)<>'' then begin // пустые строки не обрабатываем
  m:=0;
  while pos('0',n)=1 do  delete(n,1,1);//убираем лидирующие 0
    for i:=1 to length(n) do m:=m*r+pos(n[i],digit)-1;//сама формула перевода
    if (m>=MaxInt64) or (m<0) then begin//введено число больше чем Int64
      writeln('Достигнут максимальный предел вычислений!');
      m:=0;
    end;
    Result:=m;
  end;
end;
 
 
function ToDecNew(n:string;r:Integer):double;
var
  f:double;
  i:integer;
  r1:int64;
begin
//  if pos('.',n)=0 then Result:=ToDec(n,r) else begin
    i:=pos('.',n);
    if i>0 then begin
    f:=ToDec(copy(n,1,i-1),r);
    delete(n,1,i);
    r1:=r;
    for i:=1 to length(n) do begin
      f:=f+(pos(n[i],digit)-1)/r1;//сама формула перевода
      r1:=r1*r;
    end;
    Result:=f;
  end else Result:=ToDec(n,r);
end;
 
var
  p,q:integer;
  n:string;
begin
  write('Число:');readln(n);
  write('система счисления1:');readln(p);
  write('система счисления2:');readln(q);
  writeln('ответ:',DecimalToXStr (q,ToDecNew(n,p),5));
end.
Добавлено через 8 минут
отсюда: Системы счисления
1
0 / 0 / 0
Регистрация: 16.03.2015
Сообщений: 5
14.04.2015, 15:25  [ТС] 5
Спасибо большое!
0
14.04.2015, 15:25
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.04.2015, 15:25
Помогаю со студенческими работами здесь

Задана строка s, представляющая собой запись числа в системе счисления с основанием 16. Осуществить перевод заданного
Задана строка s, представляющая собой запись числа в системе счисления с основанием 16. Осуществить...

Перевод целых чисел,записанных в системе счисления с основание q(2<=q<=16) в систему с основанием p (2<=p<=16)
Разработать программу которая должна предоставлять средства для перевода целых чисел,записанных в...

Перевод целого числа в систему счисления с основанием K
Разработайте программу пересчёта целого числа в систему исчисления на основании числа K. Результат...

Перевод числа в систему счисления с основанием m (Паскаль -> Си)
Const NMax=1000000000; var i,p,x,sys:integer; a:array of byte; begin i:=0; ReadLn(x,sys);...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru