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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2015, 10:20   #11
Anya Lis
Пользователь
 
Регистрация: 19.05.2015
Сообщений: 14
По умолчанию

посмотрите сейчас, не нравиться t2. посоветуйте еще куда засунуть e (точность для вычисления интегралла)
Код:
program kyrsov;
uses crt;
begin
writeln ('vvod a,b,n,e:');
readln (a,b,n,e);
s:=0;
var
t5:array[1..5]of real:=(0.832498,0.374541,0,-0.374541,-0.832498);
t2:array[1..2]of real:=(0.577350,-0.577350);
t3:array[1..3]of real:=(0.707107,0,-0.707107);
t4:array[1..4]of real:=(0.794654,0.187592,-0.187592,-0.794654);
t6:array[1..6]of real:=(0.866247,0.422519,0.266635,-0.266635,-0.422519,-0.866247);
t7:array[1..7]of real:=(0.883862,0.529657,0.321912,0,-0.321912,-0.529657,-0.883862);
x:array[1..n]of real;
y:array[1..n]of real;
s,b,a:real;
i,n:integer;
function f(x:real):real;
var i:integer;
a,b,s:real;
begin
f:=sin(0.4*x)-3*ln(x);
end;

for i:=1 to n do
begin
x[i]:=(b+a)/2+((b-a)/2)*tn[i];
y[i]:=f(i);
s:=s+y[i];
end;
s:=s*(b-a)/2;
writeln('s=',s:10:7);
Readln;
end.
Anya Lis, вы хоть внимание обращайте на то, что ваши посты правят модераторы, оформляя код тегами. Для правильного оформления кода используйте кнопку # вверху

с нулем я решила вопрос, скобку поставить забыла

Последний раз редактировалось Anya Lis; 28.05.2015 в 10:30.
Anya Lis вне форума Ответить с цитированием
Старый 28.05.2015, 10:32   #12
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Цитата:
разве не будет ошибки деления на ноль?! Ведь t[3] равно нулю, если я не ошибаюсь!
Там умножить на 0:
Цитата:
*t[i];
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 28.05.2015, 10:45   #13
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Ошибок - целая куча. Вот как правильно писать на Паскале, с учетом синтаксиса:
Код:
program kyrsov;
uses crt;

function f(x:real):real;
begin
   f:=sin(0.4*x)-3*ln(x);
end;

const n=10;//!!!!!!!!!!!!!!!!! см. ниже, где употребляется
var i:integer;
    a,b,s,e:real;
    t5:array[1..5]of real=(0.832498,0.374541,0,-0.374541,-0.832498);
    t2:array[1..2]of real=(0.577350,-0.577350);
    t3:array[1..3]of real=(0.707107,0,-0.707107);
    t4:array[1..4]of real=(0.794654,0.187592,-0.187592,-0.794654);
    t6:array[1..6]of real=(0.866247,0.422519,0.266635,-0.266635,-0.422519,-0.866247);
    t7:array[1..7]of real=(0.883862,0.529657,0.321912,0,-0.321912,-0.529657,-0.883862);
    x:array[1..n]of real;//!!!!!!!!!!!!!!!!!!! n - const
    y:array[1..n]of real;

begin
   writeln ('vvod a,b,e:');//// здесь пришлось убрать
   readln (a,b,e);//// тут тоже
   s:=0;
   for i:=1 to n do
   begin
      //x[i]:=(b+a)/2+((b-a)/2)*tn[i];// tn не знает (пришлось отключить эту строку - компилятор ругается), рекомендую по очереди писать t2, t3, t4, t5, t6, t7
      y[i]:=f(i);
      s:=s+y[i];
   end;
   s:=s*(b-a)/2;
   writeln('s=',s:10:7);
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]

Последний раз редактировалось newerow1989; 28.05.2015 в 10:50.
newerow1989 вне форума Ответить с цитированием
Старый 28.05.2015, 11:29   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от newerow1989 Посмотреть сообщение
Там умножить на 0:
да, точно, Вы правы! Это меня переклинило что-то...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Приближенное вычисление определенных интегралов методом трапеций (Паскаль) now2 Паскаль, Turbo Pascal, PascalABC.NET 14 30.05.2014 07:42
Приближение функций методом Чебышева. Упрощение многочлена. Visual Basic 6.0 MAV_alex Помощь студентам 0 23.04.2012 22:46
График вычисления интегралла методом прямоугольника. Restinpeace Помощь студентам 0 30.05.2011 10:00
вычисление интеграла методом трапеций Sepherot Помощь студентам 1 21.12.2010 22:18
написать блок схему определённого интегралла посчитанного методом прямоугольников Зимний Помощь студентам 3 04.02.2010 01:27