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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.10.2012, 00:00   #1
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию a*x^2+b*x>0

Решить неравенство a*x^2+b*x>0
С чего начать не знаю. Может условие написать сначала
if ((x > 0) and ((ax + b) > 0)) or ((x < 0) and ((ax + b) < 0)) then
а потом писать что
x:=-b/a;
mimit вне форума Ответить с цитированием
Старый 19.10.2012, 00:31   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Вроде так:
Код:
if a <> 0 then
  begin
    x1 := min(0, -b / a);
    x2 := max(0, -b / a);
    if a > 0 then
      showmessage('(-inf,' + floattostr(x1) + ')U(' + floattostr(x2) + ',+inf)')
    else
    if x1 <> x2 then
      showmessage('(' + floattostr(x1) + ',' + floattostr(x2) + ')')
    else
      showmessage('no solution')
  end
  else
  if b > 0 then
    showmessage('(0,+inf)')
    else
  if b < 0 then
    showmessage('(-inf,0)')
  else
    showmessage('no solution');
Не забудьте написать функции поиска минимума и максимума из 2 чисел.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 19.10.2012, 09:05   #3
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Вроде так:
Код:
if a <> 0 then
  begin
    x1 := min(0, -b / a);
    x2 := max(0, -b / a);
    if a > 0 then
      showmessage('(-inf,' + floattostr(x1) + ')U(' + floattostr(x2) + ',+inf)')
    else
    if x1 <> x2 then
      showmessage('(' + floattostr(x1) + ',' + floattostr(x2) + ')')
    else
      showmessage('no solution')
  end
  else
  if b > 0 then
    showmessage('(0,+inf)')
    else
  if b < 0 then
    showmessage('(-inf,0)')
  else
    showmessage('no solution');
Не забудьте написать функции поиска минимума и максимума из 2 чисел.
я не много не понял что означает showmessage просто я изучаю делфи и только начал. И еще зачем находить min и max
mimit вне форума Ответить с цитированием
Старый 19.10.2012, 09:28   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

showmessage выведет сообщение в окошке (оконный режим дельфи). Минимум и максимум нужны, чтобы выбрать, какой корень левый, а какой правый.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 19.10.2012, 09:38   #5
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
showmessage выведет сообщение в окошке (оконный режим дельфи). Минимум и максимум нужны, чтобы выбрать, какой корень левый, а какой правый.
showmessage нельзя заменить writeln'ом ?
mimit вне форума Ответить с цитированием
Старый 19.10.2012, 10:01   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Можно, просто я подумал, раз дельфи, то оконный режим, а не консольный.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 19.10.2012, 12:14   #7
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

у вас сокращеный вид неравенства. Но вроде оно выглядит так:
a*x*x+b*x+c><0
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 19.10.2012, 12:25   #8
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
у вас сокращеный вид неравенства. Но вроде оно выглядит так:
a*x*x+b*x+c><0
саша40, что это?!

Код:
><
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 19.10.2012, 20:59   #9
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Можно, просто я подумал, раз дельфи, то оконный режим, а не консольный.
Ну я всегда работал с консольным и все задачи так решал
mimit вне форума Ответить с цитированием
Старый 19.10.2012, 21:37   #10
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Можно попробовать как частный случай квадратного уравнения. Значит нужно найти корни. Интервал между ними будет меньше нуля.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


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