Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
nilanerda
0 / 0 / 0
Регистрация: 25.01.2012
Сообщений: 12
#1

перевод числа в строку - Delphi

26.04.2012, 11:24. Просмотров 1346. Ответов 4
Метки нет (Все метки)

Подскажите, как реализовать функцию перевода числа в строку не используя стандартных функций delphi?

функция должна выглядеть:

function intstroka ( nomer: integer): string;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2012, 11:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос перевод числа в строку (Delphi):

Перевод числа в строку и обратно - Delphi
Дело в следующем: когда считаются погрешности и переводятся в строку числа странные получаются. Например: 1,99-1,96 получается результат...

Перевод каретки на новую строку - Delphi
С помощью какой функции каретка переводится на новую стоку?

Перевод на новую строку длинного SQL-запроса - Delphi
Пишу SQL запрос, он очень длинный,как продолжить его на новой строке? Спасибо!

1. простые числа в массиве 2. перевод числа в строку - Delphi
Здравствуйте. очень нужна помощь по программированию 1. удалить простые числа из массива у меня получилось вот так: a: array...

Как при экспорте делать перевод содержимого ячейки на новую строку? - Delphi
Подскажите как при экспорте делать переход содержимого ячейки на новую строку, т.е. в гриде у меня в первом столбце данные выглядят вот так...

Перевод числа - Delphi
С клавиатуры вводится целое число. Необходимо вывести его двоичное представление на экран. Программа должна поддерживать все...

4
DenNik
Непрофессионал
1375 / 1091 / 172
Регистрация: 26.07.2011
Сообщений: 6,621
26.04.2012, 11:31 #2
дельфийская IntToStr осуществляет конвертацию числа в строку посредством ассемблера. Сомневаюсь, что можно еще как-то по-другому более эффективно это реализовать, да и зачем это нужно? если это задание какого-то препода, так это ненормальный препод.
0
nilanerda
0 / 0 / 0
Регистрация: 25.01.2012
Сообщений: 12
26.04.2012, 11:59  [ТС] #3
мне на собеседовании дали такое задание, у меня вообще нет никаких мыслей как это сделать, но раз дали значит есть способ, вот и интересно, может кто знает...
0
DenNik
Непрофессионал
1375 / 1091 / 172
Регистрация: 26.07.2011
Сообщений: 6,621
26.04.2012, 12:10 #4
Цитата Сообщение от nilanerda Посмотреть сообщение
мне на собеседовании дали такое задание, у меня вообще нет никаких мыслей как это сделать, но раз дали значит есть способ, вот и интересно, может кто знает...
дали затем, чтобы посмотреть, как ты выкрутишься из подобной ситуации! Проверка на креативность
0
Lirrk
Нарушитель
393 / 310 / 4
Регистрация: 16.07.2011
Сообщений: 1,110
26.04.2012, 22:28 #5
Самый простой и не очень оптимизированный способ с целым числом без знака (DWord)
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function int2str(int_:DWord):string;
var
K:Dword;
D_:Dword;
f:boolean;
begin
if int_ = 0 then Result:='0' else begin
f:=false;
K:=1000000000;
 
While K<>0 do begin
                D_:= int_ div K;
 
                if (D_ <> 0) or f  then begin
                   f:=true;
 
                          Result:= Result + Char($30+D_);
                          int_:= int_ - D_*K;
                          end;
                   K:= K div 10;
              end;
 
end;                              end;
Если целое со знаком (integer), тогда так
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function int2str(int_:Integer):string;
var
K:Dword;
D_:Dword;
f:boolean;
begin
if int_ = 0 then Result:='0' else begin
f:=false;
K:=1000000000;
if int_ < 0 Then Result:='-' else Result:='';
int_:=ABS(int_);
While K<>0 do begin
                D_:= int_ div K;
 
                if (D_ <> 0) or f  then begin
                   f:=true;
 
                          Result:= Result + Char($30+D_);
                          int_:= int_ - D_*K;
                          end;
                   K:= K div 10;
              end;
 
end;                              end;
1
26.04.2012, 22:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2012, 22:28
Привет! Вот еще темы с ответами:

Перевод числа в символ - Delphi
Посмотрите код пожалуйста. почему пишет ошибку??????? sim1:=192; sim2:=224; if Form1.Memo1.Lines.Text=(Chr(sim1)) or...

Перевод числа в обыкновенную дробь - Delphi
Подскажите пожалуста как реализовать функцию перевода числа в обыкновенную дробь К примеру есть число 34,0952380952 данное число...

Перевод двоичного числа в десятичное - Delphi
Дан массив рандомных чисел 10 на 10. С помощью процедур и функций каждый четный элемент массива заменяется на 0, нечетный - на 1. Оба...


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

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

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