Вопрос по Delphi

dreamer

Member
test:=strtofloat(form4.edit1.text); забыл убрать тестовую переменную , эх дырявая бошка , и сидел мучалсо :|:)

есть вопрос к шановному панству как сделать чтобы тип флоат принимал числа через точку а не только через запятую ?
16,66 а 16.66 не принимает?
Для таких случаев есть очень полезная фича в делфе (и не только), называется Debug/Break point/Step into. Выполняешь код по строкам и находишь точно где выбивает ошибку. Это гораздо проще чем постить сюда целое полотно кода.
Так что просьба вопросы типа "где ошибка" не задавать а задавать вопросы типа "в этой строке ошибка, непонятно почему", тогда в 90% случаев вы найдете ответ еще не дойдя сюда.
 
вопрос : есть edit1 в него вводим число типа флоат через запятую , как сделать так что бы можно было вводить число через точку?
 

Hamster

Well-Known Member
Поменять разделитель на . в настройках венды.
 

NetVir

New Member
зависимость SysUtils

число := StrToFloat(StringReplace(ИсходнаяСтрока, ЧтоЗаменять, НаЧтоЗаменять, []));
 
if abs(pt)>abs(pm) or abs(pt)>abs(ggg) then cg2t:=((dt+st)*(abs(pt)))/(2*st) else
if abs(ggg)>abs(pt) or abs(ggg)>abs(pm) then cg2t:=((dt+st)*(abs(pt-pm)))/(2*st) else
if abs(pm)>abs(pt) or abs(pm)>abs(ggg) then cg2t:=((dt+st)*(abs(pm)))/(2*st)
вобщем такой кусочек кода нужна помощь ибо (выдело красным куда выдает компилятор где ошибка)
Unit2.pas(241): Operator not applicable to this operand type
 
Останнє редагування:

serg_pet

New Member
операция and/or имеет больший приоритет чем > < это нужно учитывать при записи составных условий
 
Зверху