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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2015, 07:19   #1
Роман_Андреевич
Новичок
Джуниор
 
Регистрация: 20.01.2015
Сообщений: 2
По умолчанию Вычислить интеграл!!!

Код:
program lab_5;
function integral(a,b,a1,b1:real):real;
   var k,igrl:real;
      begin
      k:=sqrt(sqr(a)-sqr(b));
      if sqr(a)>sqr(b) then
      igrl:=((-1)*(1/k))*ln(abs(b*b1+a+k*sqrt(sqr(a)-sqr(b1))/(b1+b)))-((-1)*(1/k))*ln(abs(b*a1+a+k*sqrt(sqr(a)-sqr(a1))/(a1+b)));
      if sqr(a)<sqr(B) then
      igrl:=((-1)*(1/k))*arctan((sqrt(sqr(b)-sqr(a))*sqrt(sqr(a)-sqr(b1)))/(sqr(a)+b*b1))-((-1)*(1/k))*arctan((sqrt(sqr(b)-sqr(a))*sqrt(sqr(a)-sqr(a1)))/(sqr(a)+b*a1));
      integral:=igrl;
      end;
var a2,b2,a3,b3,i:real;
   begin
   Writeln('введите переменные a,b');
   Readln(a2,b2);
   Write('введите нижний предел A=');
   readln(a3);
    Write('введите нижний предел B=');
   readln(b3);
   i:=integral(a2,b2,a3,b3);
   write('интеграл=',i);
   end.
Выдает NaN в чем проблема подскажите!!!
Изображения
Тип файла: jpg Безымянный.jpg (20.8 Кб, 89 просмотров)

Последний раз редактировалось Stilet; 24.01.2015 в 10:58.
Роман_Андреевич вне форума Ответить с цитированием
Старый 24.01.2015, 10:23   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,602
По умолчанию

Корректные данные (a,b) предоставьте. И пределы интегрирования.
Тогда можно будет посмотреть.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 25.01.2015, 21:44   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,304
По умолчанию

Кроме корректных данных следует поправить и формулы.
Например:
igrl:=((-1)*(1/k))*ln(abs((b*b1+a+k*sqrt(sqr(a)-sqr(b1)))/(b1+b)))-((-1)*(1/k))*ln((abs(b*a1+a+k*sqrt(sqr(a)-sqr(a1)))/(a1+b)));


Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 28.01.2015, 06:28   #4
abit
Пользователь
 
Регистрация: 21.10.2014
Сообщений: 43
По умолчанию

Цитата:
Сообщение от ZX Spectrum-128 Посмотреть сообщение
Корректные данные (a,b) предоставьте. И пределы интегрирования.
Тогда можно будет посмотреть.
зачем? там же всё вводится с клавиатуры... пронаблюдайте - a,b спрашивают, альфа-бетта тоже, под видом A B, это всё равно что вас попросят написать программу вычисления квадрата числа, а вы спросите конкретное число... толку от вашей программы?

исходя из логики описанного здесь, сравниваем a^2 c b^2 (кстати не ясно что делать коли они равны, считать честно методом трапеций?), и отдельный вопрос почему вдруг в вычислениях x становится альфой (через a1)...

Последний раз редактировалось abit; 28.01.2015 в 06:46.
abit вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вычислить определенный интеграл) iris_ka Помощь студентам 4 17.02.2012 15:03
вычислить интеграл Инфинити Помощь студентам 0 10.12.2011 12:35
вычислить интеграл в C++ ai\ekcah^p Помощь студентам 10 17.04.2010 18:33
[b];Вычислить интеграл Олюшка Помощь студентам 2 22.02.2010 08:31