Форум программистов, компьютерный форум CyberForum.ru Форум программистов | Компьютерный форум | Форум web-программистов | Форум по электронике и бытовой технике | Форум о софте | Научный форум | Карьера и бизнес
CyberForum.ru - форум программистов и сисадминов > >
Восстановить пароль Регистрация

Ответ Создать новую тему
 
RAVE
Новичок
0 / 0 / 0
Регистрация: 06.10.2008
Сообщений: 12
06.10.2008, 16:24     перевести из десятичной в восьмеричную систему и обратно
  #1
Помогите пожалуйста перевести из десятичной в восьмеричную систему и обратно
AdAgent
Объявления
06.10.2008, 16:24
AziAd
Новичок
3 / 3 / 0
Регистрация: 01.10.2008
Сообщений: 12
06.10.2008, 17:20
  #2
Только что выложил исходник на Делфи. Оттуда можно вырвать функцию для Паскаля, ссылка на тему
Sergei
Форумчанин
1380 / 614 / 23
Регистрация: 22.04.2008
Сообщений: 1,608
06.10.2008, 18:02
  #3
Спасибо большое AziAd
RAVE
Новичок
0 / 0 / 0
Регистрация: 06.10.2008
Сообщений: 12
19.10.2008, 12:15  [ТС]
  #4
Я конешно извиняюсь но вот потребовался код по переводу (в Delphi) именно из десятичной в восьмеричную систему и обратно, а не универсальный.
ПС Пожалуйста помогите очень надо
Lurker
Форумчанин
6120 / 1878 / 11
Регистрация: 07.07.2008
Сообщений: 10,447
19.10.2008, 12:34
  #5
у тебя есть универсальный... обрежб его до из 8 в 10 и наоборот
RAVE
Новичок
0 / 0 / 0
Регистрация: 06.10.2008
Сообщений: 12
19.10.2008, 14:21  [ТС]
  #6
В том и дело что я незнаю как. Я только начинаю учить Делфи и ничего практически не знаю,но если кому не трудно помогите переделать эту функцию

Код Code
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
function Convert(numstring: string; fromdigit: integer; todigit: integer): string;
var
  i,k: longint;
  num: extended;
  onesymbol: string;
  strbin,strtemp: string;
  module: string;
  num2: longint;
begin
  num:=0;
  k:=length(numstring)-1;
  for i:=1 to length(numstring) do begin
    onesymbol:=numstring[i];
    if LowerCase(onesymbol)='a' then onesymbol:='10' else
    if LowerCase(onesymbol)='b' then onesymbol:='11' else
    if LowerCase(onesymbol)='c' then onesymbol:='12' else
    if LowerCase(onesymbol)='d' then onesymbol:='13' else
    if LowerCase(onesymbol)='e' then onesymbol:='14' else
    if LowerCase(onesymbol)='f' then onesymbol:='15';
    num:=num+strtoint(onesymbol)*Power(fromdigit,k);
    dec(k);
  end;
  strtemp:=FloatToStr(num);
  num2:=StrToInt(strtemp);
  strtemp:='1';
  strbin:='';
  while strtemp='1' do begin
    if num2 = 0 then break
    else begin
      module:=inttostr(num2 mod todigit);
      if todigit=16 then begin
        if module='10' then module:='A' else
        if module='11' then module:='B' else
        if module='12' then module:='C' else
        if module='13' then module:='D' else
        if module='14' then module:='E' else
        if module='15' then module:='F' else
        if module='16' then module:='10';
      end;
      strbin:=strbin+module;
      num2:=num2 div todigit;
    end;
  end;
  strtemp:='';
  for i:=length(strbin) downto 1 do
    strtemp:=strtemp+strbin[i];
  Convert:=strtemp;
end;
RAVE
Новичок
0 / 0 / 0
Регистрация: 06.10.2008
Сообщений: 12
21.10.2008, 19:45  [ТС]
  #7
Вот з переводом из 10-ой в 8-ю типа разобрался
но вот нашел перевод из 2-й в 10-ю если можна как-то переделать в (из 8-ой в 10-ю) - помогите пожалуйста
Код Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
begin
sum:=0;
write('Enter 2 SS = '); Readln(s);
For i:=Length(s)-1 DownTo 1 Do
  Begin
  If s[i]='1' Then
    Begin
    sum2:=1;
    For j:=1 To Length(s)-i Do sum2:=sum2*2;
    End
    Else sum2:=0;
  sum:=sum+sum2;
End;
If s[Length(s)]='1' Then Inc(sum);
writeln('Translated 10 SS = ',IntToStr(sum));
end
else writeln('That menu is not exist');
readln;
end.
RAVE
Новичок
0 / 0 / 0
Регистрация: 06.10.2008
Сообщений: 12
19.11.2008, 22:13  [ТС]     перевести из десятичной в восьмеричную систему и обратно
  #8
Вот как в этой части проги можна сделать проверку чтоб можна было вводить только числа от 0 до 9, а если вводить буквы то чтоб выводило сообщения что не верное значение и т.п. У меня не получилось - помогите плис
Код Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
uses
  SysUtils;
var
  vis,s: string;
  iMod, des, misc, i, j, result :integer;
begin
writeln('Press 1: 10 sysnem to 8 sysnem');
writeln('Press 2: 8 system to 10 system');
readln(misc);
if misc=1 then
begin
Write('Input 10 system = ');
  Readln(des);
  while des >= 8 do
    begin
      iMod := des mod 8;
      des := des div 8;
      vis := IntToStr(iMod) + vis;
    end;
  vis := IntToStr(des) + vis;
  Writeln('Converted 8 system = ', vis);
  end
Yandex
Объявления
19.11.2008, 22:13
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Раздел Автор Дата
Pascal ABC Из десятичной системы перевести в двоичную или восьмеричную
Использовать процедуры. Написать программу, которая переводит число из десятичной системы счисления в двоичную или восьмеричную. (сделать выбор "перевести в двоичную" или "перевести в восьмеричную"....
Pascal ABC Andrey619 22.05.2014 09:06
C (СИ) Перевод с десятичной в восьмеричную систему счисления
Написал такую вот программу: #include <stdio.h> #include <stdafx.h> void main(void) { int n; scanf("%d", &n); printf("%o", n);
C для начинающих flex5221 20.04.2014 22:31
Turbo Pascal Перевести число из десятичной системы счисления в шестнадцатиричную и обратно
Используя нетипизированный параметр подпрограмм перевести число из десятичной системы счисления в шестнадцатиричную и обратно.
Turbo Pascal gremb 21.02.2014 18:30
Turbo Pascal Как перевести число из десятичной в восьмеричную систему счисления без деления?
Как перевести число из десятичной в восьмеричную систему счисления без деления?
Turbo Pascal ShashaPr 23.09.2012 00:02
C++ Перевод из десятичной в двоичную, восьмеричную и шестнадцатеричную систему
Задание: написать программу которая переводит десятичное число в 2, 8 и 16 систему счисления. #include "stdafx.h" #include <iostream.h> void main() { int var, dvo, vos, she, var1,...
С++ для начинающих yoghurt92 21.05.2012 19:55
PHP Как из десятичной перевести в восьмеричную?
Как из десятичной перевести в восьмеричную число? К примеру число 12. Напишите плизз алгоритм, а то что то перевожу и вставляю в echo, выводит другое число.
PHP для начинающих dimiby 14.12.2010 17:46
Pascal перевод систем счисления из десятичной в восьмеричную и обратно в Pascal !
Помогите написать программу : - " перевод систем счисления из десятичной в восьмеричную и обратно" ! Плиз.
Pascal (Паскаль) Natal'ya 22.10.2010 19:14
Pascal Перевод числа с десятичной системы в восьмеричную систему
Составить программу, которая переводит число А с десятичной системы исчесления в восмиричную, используя метод деления в столбик. Промежуточные и итоговые результаты перевода отобразить на экране....
Pascal (Паскаль) Yarikdik 21.01.2010 10:19
Опции темы

Текущее время: 22:13. Часовой пояс GMT +4.

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.