Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.28;
Скачать: CL | DM;

Вниз

разобрать число   Найти похожие ветки 

 
anton773 ©   (2007-01-07 22:18) [0]

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


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

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


 
anton773 ©   (2007-01-07 22:50) [2]


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

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


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

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


 
имя   (2007-01-07 22:51) [4]

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


 
Anatoly Podgoretsky ©   (2007-01-07 22:54) [5]

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

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


 
Anatoly Podgoretsky ©   (2007-01-07 22:55) [6]

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

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


 
anton773 ©   (2007-01-07 22:59) [7]


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

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


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


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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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


 
ors_archangel ©   (2007-01-07 23:48) [13]


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

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


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

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

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


 
anton773 ©   (2007-01-08 08:12) [15]

To LapGod Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2007.01.28;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.042 c
2-1168184460
AndrewHz
2007-01-07 18:41
2007.01.28
ASM


15-1168006020
IMHO
2007-01-05 17:07
2007.01.28
Вечная компьютерная игра


2-1168209961
kingsoft
2007-01-08 01:46
2007.01.28
Время простоя программы


1-1165418608
newbie2
2006-12-06 18:23
2007.01.28
Модераторы почему закрыли тему?


15-1168343600
vasIzmax
2007-01-09 14:53
2007.01.28
Тест на уникальный ник :)