Показать сообщение отдельно
Старый 12.09.2006, 23:11   #1
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Перевод в десятичное число

 
int=ToInt("10011",2)
print int
 
waitkey()
 
 
Function ToInt#(inputnum$,base)
 If base=10 Return inputnum
 If base>10 Return 0
 l=Len(inputnum$)
 
 For i=0 To l-1
  rightnum=Right(inputnum$,1)
 
  If rightnum<base Then
   If rightnum>0 Then 
    intnum#=intnum#+base^i*rightnum
   EndIf
  Else Return 0
  EndIf
  inputnum$=Left$(inputnum$,Len(inputnum$)-1)
 Next
 
 Return intnum#
End Function
Описание: переводит в десятичное число НЕОТРИЦАТЕЛЬНОЕ число с основанием НЕ БОЛЬШЕ 10
Возможно медленно (т.к. переводит прямо в лоб), но как сделать по другому не знаю...
(Offline)
 
Ответить с цитированием