• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Срочно нужно написать программу в pascal для решения неравенства a^x<b

  • Автор темы Автор темы Lolbem
  • Дата начала Дата начала

Lolbem

Ученик
Регистрация
21 Май 2020
Сообщения
3
Реакции
0
Баллы
0
Срочно нужно написать программу в pascal для решения неравенства a^x<b

Нужно написать программу в pascal для решения неравенства a^x<b(a в степени x<b) помогите пожалуйста
 
Нужно написать программу в pascal для решения неравенства a^x<b(a в степени x<b) помогите пожалуйста
Ну что ж, нужно, так нужно, куда ж денешься... В простейшем случае вещественных a, b и x это выглядит так:
Код:
Var
 a,b:real;

Begin
 Write(' a = '); Readln(a);
 Write(' b = '); Readln(b);
 if (a<=0) or (b<=0) then
  Writeln(' No solution')
 else
  Writeln(' x < ',Ln(b)/Ln(a):0:8);
 Readln
End.
Если же нужно рассмотреть более сложную задачу, например, с целыми a и x (тут допустимы отрицательные значения основания), сообщите.
 
Спасибо большое,но как с вами связаться?
 
Здравствуйте,помогите опять пожалуйста,я сейчас скину пример и нужно на подобие его сделать мой(a^x<b).
var a,b,c:real;
begin
writeln('Введите a и b');
readln (a,b);
if (a<0) or (b<0)or (a<>1)
then writeln('Решения нет')
else
begin
c:=ln(b)/ln(a);
if a=1 then writeln('Решения нет');
if a>1
then writeln('x>',c)
else writeln('x<',c);
end;
end.
Вот математическая модель (это для a^x>b,а мне нужно a^x<b):
Для решения показательного неравенства a^x>b приведем его к виду a^x>a^c. Тогда: если a>1, то x>c, если 0<a<1, то x<c.

ОДЗ: a>0,b>0,a≠1
Выразим b как степень числа a: b=a^log_a⁡b
Обозначим: 〖с=log〗_a⁡b
Получим: a^x>a^с
Если a>1, то x>c, если 0<a<1, то x<c.

Итак, для решения задачи нам нужно:
Знать значения a и b, то есть ввести их с клавиатуры;
Проверить ОДЗ
Найти с, то есть вычислить 〖с=log〗_a⁡b
Решить неравенство.
 
Да, признаю — поторопился. Не учел ситуации с a<=1. По-моему, правильно так:
Код:
Var
 a,b:real;

Begin
 Write(' a = '); Readln(a);
 Write(' b = '); Readln(b);
 if (a<=0) or (b<=0) or ((a=1) and (b<=1)) then Writeln(' No solution')
 else
 if (a=1) and (b>1) then Writeln(' x - random')
 else
 if (a<1) then Writeln(' x > ',Ln(b)/Ln(a):0:8)
 else Writeln(' x < ',Ln(b)/Ln(a):0:8);
 Readln
End.
То, что Вы представили — там чего-то накручено лишнего, к тому же масса ошибок. Ну вот что это такое:
if (a<0) or (b<0)or (a<>1) then
writeln('Решения нет')
Т.е. решения нет, если a<0 или b<0 (это правильно), но также если... a отлично от единицы! (?). Ну что за ерунда, ей-Богу! Когда ж, в таком случае, решение есть? Когда a=1?
 
Назад
Сверху