Форум программистов, компьютерный форум, киберфорум
Наши страницы

Pascal ABC

Войти
Регистрация
Восстановить пароль
 
KatrinLuxury
12 / 12 / 5
Регистрация: 14.11.2016
Сообщений: 213
#1

Решение неравенства. Подскажите как исправить - Pascal ABC

21.11.2016, 12:26. Просмотров 166. Ответов 1
Метки нет (Все метки)

Разработать алгоритм и составить программу вычисления таблицы значений функции, заданной в виде разложения в ряд. Значение функции вычислять с точностью >0, т.е. вычисление суммы членов ряда необходимо прекратить, когда абсолютная величина очередного члена ряда разложения окажется меньше :  ак  <.
При вычислении очередного члена целесообразно воспользоваться рекуррентным выражением:
ак+1=скак; к= 0, 1, 3, ...,
где ак - некоторый к-ый член ряда; ак+1 - следующий к+1-ый член ряда; ск - коэффициент, определяемый номером к.
При составлении программы необходимо по возможности воспользоваться операторами организации циклов WHILE, REPEAT, FOR.
Границы интервала вычислений функций a и b, величина шага изменения аргумента h и точность вычисления функции  задаются при вводе. На печать выводятся номер по порядку, значение аргумента, соответствующие ему, значение функции и номер члена ряда, на котором закончилось вычисление значение функции, в форме таблицы:
________________________
№|_Х__|__ f (x)_|_№ чл.р.|
1 |____|_______|________|
2 |____|_______|________|
3 |____|_______|________|
...|____|_______|________|

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
uses crt;
Var a,b,h,e:real;
    ck,x,res:real;
    k:integer;
begin
clrscr;
writeln('Данная программа предназначена для вычисления таблицы значений');
writeln('функции заданной в виде разложения в ряд.');
writeln;
write('Введите границу интервала a=');
readln(a);
repeat
write('Введите правую границу интервала b>',a:0:1,' b=');
readln(b);
until b>a;
repeat
write('Введите величину шага изменения аргумента h<',b-a:0:1,' h=');
readln(h);
until h<b-a;
repeat
write('Введите точность вычисления функции e>0 e=');
readln(e);
until e>0;
clrscr;
writeln('=========================================================');
writeln('|    #    |     X    |      F(x)     |        № чл.р.      |');
writeln('=========================================================');
x:=a;
repeat
k:=0;
res:=x;
ck:=x;
repeat
k:=k+1;
ck:=ck*x*x;
res:=res+ck/(2*k+1);
until abs(ck/(2*k+1))<e;
writeln('|',1:8,'|','|',x:6:3,'|',res:8:5,'|');
x:=x+h;
until x>b+h/2;
writeln('=================');
writeln('Press to ENTER');
readln;
end.
0
Миниатюры
Решение неравенства. Подскажите как исправить  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2016, 12:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Решение неравенства. Подскажите как исправить (Pascal ABC):

Решение неравенства - Pascal
Пожалуйста помогите написать алгоритм решения неравенства Ax^2+Bx+C&gt;0 Очень прошу помочь :help: Зарание благодарен!!! :)

Решение квадратного неравенства - Pascal ABC
Всем привет.Нужно написать программу решения неравенства ax2+bx+c&gt;=0 с условным. Вот что получилось, но хочется как-то упростить, помогите,...

Найти решение неравенства - Pascal
Даны действительные числа a и b.Найти решение неравенства a*x&lt;b

Решение логарифмического неравенства - Pascal ABC
\lg\left(\frac{1}{2}x \right)&gt;3

Решение неравенства в целых числах - Pascal ABC
Необходимо написать программу, определяющую какие из целых чисел от -10 до 2 являются решением неравенства (х+4)(х+1)&lt;0! Заранее большое...

Подскажите как исправить ошибку - Pascal ABC
Здравствуйте! Помогите, пожалуйста, исправить ошибку в этой программе: program kyrs; uses crt; var...

1
JokeR.BY
CAPITAL OF ROCK!
1275 / 702 / 573
Регистрация: 03.03.2010
Сообщений: 2,284
Завершенные тесты: 2
21.11.2016, 13:22 #2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
var
    x, b, h, eps: Single;
    prec: Byte;
    k, count: Word;
    s, si, temp: Real;
    line: String;
begin
    WriteLn('Данная программа предназначена для вычисления таблицы значений');
    WriteLn('функции заданной в виде разложения в ряд.');
    Write('Введите границу интервала a=');
    ReadLn(x);
    repeat
        Write('Введите правую границу интервала b>', x:0:2, ' b=');
        ReadLn(b);
    until (b > x);
    repeat
        Write('Введите величину шага изменения аргумента h<', (b - x):0:2, ' h=');
        ReadLn(h);
    until (h < b - x);
    repeat
        Write('Введите точность вычисления функции e(0..1) e=');
        ReadLn(eps);
    until ((eps > 0) And (eps < 1));
    temp := eps;
    prec := 0;
    while (temp < 0.9999999) do
    begin
        Inc(prec);
        temp := temp * 10;
    end;
    line := '=================================';
    for k := 1 to 2 * prec do
        line := line + '=';
    WriteLn(line);
    WriteLn('|   # | ', 'X':(5 + prec), ' | ', 'F(x)':(5 + prec), ' | № чл.р. |');
    WriteLn(line);
    count := 0;
    repeat
        Inc(count);
        s := 0; si := x; k := 0;
        while (Abs(si) > eps) do
        begin
            s := s + si;
            Inc(k);
            si := si*Sqr(x)/2/k/(2*k + 1);
        end;
        WriteLn('| ', count:3, ' | ', x:5 + prec:prec, ' | ', s:5 + prec:prec, ' | ', k:7, ' |');       
        x := x + h;
    until (x > b);
    WriteLn(line);
end.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2016, 13:22
Привет! Вот еще темы с ответами:

Сортировка массива. Подскажите ошибку и как её исправить - Pascal ABC
Сортировка массива по возрастанию. Массив выводит исходный. Как вывести отсортированный? 3 подпрограммы должны остаться program Mz; ...

Подсчитать количество символов в файле, подскажите,как исправить - Pascal ABC
Помогите исправить:данная вещь должна читать символы из файла(через запятую идут) и в выходной файл выводить их кол-во..... var...

Решение уравнения (работает частично) исправить код - Pascal ABC
Здравствуйте. Можете помочь решить, а то я попытался сделать, а в итоге работает частично. Условие: if x&gt;0 then y:=sqrt(a+x) if...

подскажите решение - Pascal
На сколько дней работнику хватит зарплаты S, если он тратит N р. в день и его расходы каждый день увеличиваются на X р.?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.