![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Даны три числа. Нужно найти среднее из них(расположенное между меньшим и большим). При вводе чисел выдается окно с ошибкой
"is not valid integer point value Помогите разобраться Код:
procedure TForm1.Button2Click(Sender: TObject); begin a2:=StrtoInt(Edit1.Text); b2:=StrtoInt(Edit2.Text); c2:=StrtoInt(Edit3.Text); if (a2>b2)and(b2<c2) or(a2<b2)and(b2>c2) then ShowMessage(InttoStr(b2)); if (a2>c2)and(c2<b2) or(a2<c2)and(c2>b2) then ShowMessage(InttoStr(c2)); if (c2>a2)and(a2<b2) or(c2<a2)and(a2>b2) then ShowMessage(InttoStr(a2)) end; |
|
#2
|
||||
|
||||
|
Разумно предположить, что пустая строка не является правильным числом. А именно пустой строке может быть равен один из операндов.
Мораль: Проверяйте вводимые пользователем значения. |
|
#3
|
|||
|
|||
|
Уже проверяла. Ввожу в строки целые числа, но ошибка все равно вылетает..(
|
|
#4
|
|||
|
|||
|
Именно при вводе или при нажатии на кнопку?
|
|
#5
|
|||
|
|||
|
Цитата:
при нажатии на кнопку |
|
#6
|
|||
|
|||
|
Сейчас скопировала код, ошибок не выдает... А числа большие?
З.Ы. И у Вас немного напутано с условиями... |
|
#7
|
|||
|
|||
|
Цитата:
Цитата:
|
|
#8
|
|||
|
|||
|
а числа не большие однозначные
|
|
#9
|
|||
|
|||
|
Я вобщем-то тоже только учусь поэтому не могу больше ничего предположить...
P.S. вот это работает: Код:
if ((a2>b2)and(b2>c2)) or((a2<b2)and(b2<c2)) then ShowMessage(InttoStr(b2)) else if ((a2>c2)and(c2>b2)) or((a2<c2)and(c2<b2)) then ShowMessage(InttoStr(c2)) else if ((c2>a2)and(a2>b2)) or((c2<a2)and(a2<b2)) then ShowMessage(InttoStr(a2)); |
|
#10
|
|||
|
|||
|
Ничего не пойму, у меня и этот вариант не работает..((
А попробую установить Delphi может в этом причина, код один и тот же... |
|
#11
|
|||
|
|||
|
А что делает первая кнопка?
И вообще, было бы интересно глянуть на весь текст программы. Еще можно создать новый проект, кинуть на него 3 эдита и две кнопки и скопировать в онклик второй кнопки только этот код. Если и так будет та же ошибка, то может и правда, с делфи фигня. |
|
#12
|
|||
|
|||
|
вот программа
|
|
#13
|
|||
|
|||
|
У Вас процедура ссылается на Edit1, Edit2 и Edit3. А должна на Edit2, Edit3 и edit4.
Код:
procedure TForm1.Button2Click(Sender: TObject); begin a2:=StrtoInt(Edit2.Text); b2:=StrtoInt(Edit3.Text); c2:=StrtoInt(Edit4.Text); if ((a2>b2)and(b2>c2)) or((a2<b2)and(b2<c2)) then ShowMessage(InttoStr(b2)) else if ((a2>c2)and(c2>b2)) or((a2<c2)and(c2<b2)) then ShowMessage(InttoStr(c2)) else if ((c2>a2)and(a2>b2)) or((c2<a2)and(a2<b2)) then ShowMessage(InttoStr(a2)); end; |
|
#14
|
|||
|
|||
|
Ой, действительно, спасибо большущее,
начало работать))))) |
|
#15
|
|||
|
|||
|
Ура =) Рада была помочь =)
|