0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 3

Написать программу табулирования сложной функции

07.12.2018, 20:19. Показов 2006. Ответов 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
45
46
Program mid;
const e=0.0010;
function F(x:real):real;
var n:integer;
    s,f,p,v:real;
begin
if x<0.5 then
 begin
  s:=0;
  f:=(sqr(x)+3*x+n)/(5*x+1);
  n:=0;
    Repeat
     v:=(sqr(x)*n)/(4*n+1);
     s:=s+v;
     n:=n+1
    Until abs(v)<e;
  F:=f*s;
 end
else
 begin
  s:=0;
  p:=1;
  for n:=1 to 10 do
   begin
    p:=p*x;
    s:=s+p/n
   end;
  F:=s*x/3
 end
end;
var a,b,h,x,y:real;
    k:integer;
begin
write(x);read(x);
y:=F(x);
a:=0.1;
b:=0.15;
h:=1.6;
x:=a;
while x<=b do
 begin
  writeln('x=',x:4:1,' y=',y:8:3);
  x:=x+h
 end;
readln
end.
Миниатюры
Написать программу табулирования сложной функции  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2018, 20:19
Ответы с готовыми решениями:

Написать программу табулирования функции y=x-3cos(1,04x)*cos(1,04x) на заданном промежутке с шагом 0,2...
Помогите пожалуйста составить программу:-[ Написать программу табулирования функции на заданном промежутке с шагом 0,2; вывод результатов...

Составить программу для табулирования функции y f (x) на промежутке [a, b]
Составить программу для табулирования функции y f (x) на промежутке с шагом h двумя способами, используя: 1) цикл с предусловием; 2)...

Программа табулирования сложной математической функции
Помогите пожалуйста Написать на языке Паскаль программу табулирования сложной математической функции z=(|x|-|y|)/(1+|xy|), зависящей от х...

3
 Аватар для JuriiMW
5093 / 2660 / 2354
Регистрация: 10.12.2014
Сообщений: 10,055
08.12.2018, 08:47
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Для начала то, что у вас в основной программе неправильно:
Pascal
33
34
35
36
37
38
39
40
41
42
43
44
45
46
begin
//write(x);read(x);
y:=F(x);
a:=0.1;
h:=0.15;
b:=1.6;
x:=a;
while x<=b do
 begin
  writeln('x=',x:4:1,' y=', f(x):8:3);
  x:=x+h
 end;
//readln
end.
Только значения x немного привирает!
И результат всегда нулевой…
Потому, что в функции вы ввели доп.переменную с таким же названием, что и сама функция.
Исправить можно так:
Pascal
29
30
31
 end;
 Result := f;
end;
Но и это не даст правильный результат!
Ибо, у вас вычисление суммы при x<0.5 не правильно считается!

Короче, мне надоело исправлять…
Вот так должна выглядеть программа:


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const eps = 1e-4;
 
function s(x : Real; n : Integer) := x**(2*n)/(4*n + 1);
 
function f(x : Real) : Real;
begin
  if x < 0.5 then
    Result := (x*x + 3*x + 4) / (5*x + 1) * SeqWhile(0,n->n+1,n->s(x,n)>eps).Sum(n->s(x,n))
  else
    Result := x / 3 * Range(1,10).Sum(n -> x**n/n);
end;
 
begin
  SeqWhile(0.1,x->x+0.15,x->x<=1.6).Select(x->Format('Y({0,4:f2}) = {1}', x, f(x))).PrintLines;
end.
1
0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 3
08.12.2018, 19:32  [ТС]
Спасибо большое, но можно чуточку по проще.
Что означает вот это SeqWhile и Sum, Select?
0
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
08.12.2018, 19:48
Поставьте на них курсор и нажмите F1. Откроется справка, на нужной странице. А можно и просто описания почитать, наведя на них мышку.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.12.2018, 19:48
Помогаю со студенческими работами здесь

Написать программу для табулирования функции
Написать программу на языке Паскаль для табулирования функции на указанном промежутке и построить ее график: y=sin(3/2x)-ln(10x) где x є...

Написать и отладить программу для табулирования функции
Выручайте. Очень нужно сделать а я в этот абсолютно не понимаю. Заранее очень благодарен 1. Написать и отладить программу для...

Написать и отладить программу для табулирования функции
Значений функций y=2sin(3x-0,8) для х в интервале с шагом 0,25

Написать программу, сложить схему табулирования функции y=f(x) на заданном промежутке xЭ[a; b] с заданным шагом h.
Написать программу и сложить схему табулирования функции y=f(x) на заданном промежутке xЭ(в обратную сторону =) с заданным шагом h. а=...

Выручайте нужно написать программу для табулирования функции перевода километров в американские мили
Нужно написать программу для табулирования функции перевода километров в американские мили (mi) для расстояний от 1км до 20 км шагом 0,5 км...


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

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

Новые блоги и статьи
Трассировка корутин Kotlin с OpenTelemetry
mobDevWorks 14.07.2025
Асинхронное программирование меняет правила игры, особенно когда речь заходит о трассировке операций. В Kotlin с его корутинами эта проблема приобретает особый оттенок, который я хотел бы детально. . .
Облачные приложения на Rust: руководство по архитектуре микросервисов
golander 13.07.2025
Когда я впервые взялся за проектирование облачной платформы для одного из наших клиентов, выбор стоял между привычными Go и Java. Но после нескольких месяцев разработки микросервисной системы,. . .
Как Node.js выполняет асинхронные операции
Reangularity 13.07.2025
Каждый раз, когда я рассказываю про Node. js, возникает один и тот же вопрос: "Как эта штука может быть быстрой, если JavaScript — однопоточный язык?" И это действительно кажется парадоксом. Ведь в. . .
Как писать чистый, тестируемый и качественный код на Python
py-thonny 12.07.2025
Помню свой первый проект на Python. Работал тогда быстро, грязно, лишь бы работало. Код был похож на запутанный клубок - переменные по одной букве, функции на 200 строк, комментарии отсутствовали как. . .
Blazor и контроллер сервопривода IoT Meadow Maple
Wired 11.07.2025
Я решил разобраться, как можно соединить современные веб-технологии с миром "железа". Интересная комбинация получилась из Blazor в качестве веб-интерфейса и микроконтроллера Meadow с его веб-сервером. . .
Генерация OpenQASM из кода Q#
EggHead 10.07.2025
Летом 2024-го я начал эксперименты с библиотекой Q# Bridge, и знаете что? Она оказалась просто находкой для тех, кто работает на стыке разных квантовых экосистем. Основная фишка этой библиотеки -. . .
Изучаем новый шаблон ИИ-чата .NET AI Chat Web App
stackOverflow 10.07.2025
В . NET появилось интересное обновление - новый шаблон ИИ-чата под названием . NET AI Chat Web App. Когда я впервые наткнулся на анонс этого шаблона, то сразу понял, что Microsoft наконец-то. . .
Результаты исследования от команды ARP (июль 2025 г.)
Programma_Boinc 10.07.2025
Результаты исследования от команды ARP (июль 2025 г. ) Африканский проект по дождям (ARP) World Community Grid снова запущен! Мы рады поделиться обновленной информацией о нашем прогрессе с осени. . .
Angular vs Svelte - что лучше?
Reangularity 09.07.2025
Сегодня рынок разделился на несколько четких категорий: тяжеловесы корпоративного уровня (Angular), гибкие универсалы (React), прогрессивные решения (Vue) и новая волна компилируемых фреймворков. . .
Code First и Database First в Entity Framework
UnmanagedCoder 09.07.2025
Entity Framework дает нам свободу выбора, предлагая как Code First, так и Database First подходы. Но эта свобода порождает вечный вопрос — какой подход выбрать? Entity Framework — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru