Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

разобрать число


anton773 ©   (2007-01-07 22:18:00) 

Вопрос на засыпку: Есть число например "4563" как его разобрать на числа например '4'  '5'  '6'  '7' Единственное что приходить на ум это  преобразовать число в строку и уже строку разобрать на запчасти. Может есть более изящьный вариант


anton773   (2007-01-08 08:12:00) [1]

To LapGod Спасибо!


sniknik   (2007-01-08 00:40:00) [2]

> а лучше сайт исправить...
это интересно как? разрыв между постами(9-10) 5мин, это что запретить второй раз с IP постить меньше чем через 10? а найдется такой что и так умудрится "обновить" то на полчаса добавить?

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


ors_archangel   (2007-01-07 23:48:00) [3]


> Извиняюсь. Больше никогда не буду нажимать кнопку 'обновить'.

Не ты должен извиняться, а разработчики сайта должны перед тобой извиниться, а лучше сайт исправить... а! бесполезно :(


LapGod   (2007-01-07 23:32:00) [4]

Извиняюсь. Больше никогда не буду нажимать кнопку 'обновить'.


LapGod   (2007-01-07 23:30:00) [5]

Более "элегантное" решение это делить с остатком на 10. Вот примерный план :

//a - исходное число
m := a;
while m > 0 do
begin
k := m mod 10;//очередная цифра
m := m div 10;
end;

Все цифры будут идти с конца.


LapGod   (2007-01-07 23:30:00) [6]

Более "элегантное" решение это делить с остатком на 10. Вот примерный план :

//a - исходное число
m := a;
while m > 0 do
begin
k := m mod 10;//очередная цифра
m := m div 10;
end;

Все цифры будут идти с конца.


LapGod   (2007-01-07 23:25:00) [7]

Более "элегантное" решение это делить с остатком на 10. Вот примерный план :

//a - исходное число
m := a;
while m > 0 do
begin
k := m mod 10;//очередная цифра
m := m div 10;
end;

Все цифры будут идти с конца.


anton773   (2007-01-07 23:04:00) [8]


> в том числе тем решением, что ты привел.

Так я и хотел узнать более элегантное решение


anton773   (2007-01-07 22:59:00) [9]


> Да делить число на 10, потом умножать на 10 и вычислять
> разницу

Тогда уж проще преобразовать число в строку выдернуть каждый символ и уже каждый символ обратно преобразовать в число например StrToINT()


Anatoly Podgoretsky   (2007-01-07 22:55:00) [10]

> Степан  (07.01.2007 22:50:03)  [3]

Количество вариантов займет не одну страницу.


Anatoly Podgoretsky   (2007-01-07 22:54:00) [11]

> anton773  (07.01.2007 22:50:02)  [2]

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


  (2007-01-07 22:51:00) [12]

Удалено модератором


anton773   (2007-01-07 22:50:00) [13]


> Этим вопросом можно засыпать первоклассника. А вот пятиклассника
> вряд ли - он знает десятичную систему счисления.

вопрос не правильно понят Мне нужны отдельные цыфры из этого числа,а не разложить его на множители


Степан   (2007-01-07 22:50:00) [14]

Да делить число на 10, потом умножать на 10 и вычислять разницу


try   (2007-01-07 22:38:00) [15]

Этим вопросом можно засыпать первоклассника. А вот пятиклассника вряд ли - он знает десятичную систему счисления.


Наверх

Титульная страница Поиск, карта сайта Написать письмо