![]() |
|
#1
|
|||
|
|||
![]() Здравствуйте!
Я сейчас делаю программу "Метод Ньютона". Цель: разработать программу, которая решает линейные алгебраические уравнения методом Ньютона. Вид уравнений, которые будет решать программа, такой: Ax(3)+Bx(2)+Cx+D=0, где: x - неизвестное; A,B,C,D - заданные числа. Сейчас делаю защиту "от дурака". Надо сделать так, чтобы в поле "TEdit", можно было вводить только цифры, знаки "-", "." или ",". Так вот, я сделал только то, что можно ввести: 1) цифры. 2) "-", но только чтобы выводился на первом месте и чтобы нельзя было ввести повторно это символ. 3) "." или ",", чтобы если пользователь введет "." или ",", то автоматически вместо это символа появлялся тот, который по умолчанию стоит в Windows для ввода действительных чисел, также чтобы нельзя было ввести "," на первом месте. А вот чтобы "," или "." можно было ввести только 1 раз никак не получается. Помогите, пожалуйста, кто знает, как это сделать. Вот код защиты, которую я сделал: Код:
|
#2
|
||||
|
||||
![]() Код:
|
#3
|
|||
|
|||
![]() еще сделай проверку чтобы нельзя было вводить
3.078.888 (т.е. 2 запятые или точки в одном числе) так чтобы не более одного знака подряд. ++- (нельзя) короче гемор ![]() |
#4
|
|||
|
|||
![]() Ребят, спасибо всем, кто пытался помочь мне.
Защиту от дурака я уже сделал. У меня для Вас есть еще 1 вопрос: Как сделать, так, чтобы выводилось действительное число с определенным количеством символов, т.е. "X=0,983928383", нужно вывести "X" в таком виде "X=0,98". В "Borland Pascal 7.0" это делается вот так: Код:
|
#5
|
|||
|
|||
![]() Насчет вывода действительного числа с определенным количеством знаков я уже решил:
Label13.Caption:='x [ '+FloatToStr (RoundTo (x1,-3))+' , '+FloatToStr (RoundTo (x2,-3))+' ]'; {Вывод промежутка, в котором лежит ответ} А вот возникла такая проблема: при выводе результата выводится сообщение: NAN. Что это такое может быть? |
#6
|
|||
|
|||
![]() Спасибо всем, кто мне помогал.
Программу я сделал все-таки. |