Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.03.2008, 19:44
kobezzza kobezzza вне форума
Прохожий
 
Регистрация: 28.03.2008
Сообщения: 13
Репутация: 10
По умолчанию Перевод из двоичной СИ в десятичную

Вообщем сам перевод я по сути сделал:

Код:
procedure TForm1.BinToDecClick(Sender: TObject);
var
i,result:integer;
bin:string;
begin
bin:=BinDec.Text;
result:=0;
for i:=1 to length(bin) do
begin
result:=result+(1 shl(length(bin)-i));
end;
tr.Caption:=IntToStr(result);
end;

Но вот такой вопрос: как указать, что если вводится числа отличные от 0 или 1, то программа выводит сообщение и сбрасывается, я делал так:

Код:
if not (bin in ['0','1']) then
begin
  ShowMessage('Ошибка');
  Exit;
end;

но не получается, выдаёт ошибку о несовместимости типов данных String и Сhar (((

И как сделать так, что программа считает по формуле
Код:
result:=result+(1 shl(length(bin)-i));
только лиш когда соответственный элемент строки равен 1 . Заранее благодарен.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:38.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter