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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.11.2013, 18:08   #1
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
Восклицание Табуляция функции

Новый точечный рисунок.jpg
АиB промежуток, найти Y используя табуляцию
правильно ли я написл программу(решение есть) или еще что то добавить надо?
Код:
Const min=3;
      max=3;
      h=0.5;
Var x,y:real;
Function F(x:real):real;
begin;
F:=(exp(x)+exp(-x))/exp(x)-exp(-x);
end;
var i:integer;n:real;
Begin;
x:=min;
for i:=min to max do begin;
n:=(max-min)/h;
y:=F(x);
x:=x+h;
end;
writeln('x=',x:5:5,'', 'y=',y:5:5);writeln('n=',n)
end.

Последний раз редактировалось Stilet; 22.11.2013 в 21:53.
dimka123 вне форума Ответить с цитированием
Старый 22.11.2013, 21:09   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Цитата:
правильно ли я написл программу
Нет, не правильно.
min и max - это левая и правая границы области значений X. Тип - real.
Использовать эти значения для переменной цикла For нельзя, так как препод тутже изменит условие, например min = -3.1. И ...?

Шаг задан и вычислять n нет необходимости.
А для какой цели служит данный код в теле твоего цикла?
Код:
n:=(max-min)/h;
Пример решения:
Код:
xmin := -3; {можно запросить ввод}
xmax := 3;  {можно запросить ввод}
h := 0.5;   {можно запросить ввод}
x := xmin;
while x <= x max do
begin
   {вычисляем функцию}
   x := x + h;
  writeln('x =', x:6:2, '  y = ', y:6:2); {Тут формируется таблица}
{которую можно украсить используя знаки, например, '+', '-', 'I'}
end;
...

Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 22.11.2013, 21:23   #3
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

И в описании функции скобки в знаменателе забыли. Внизу дроби..

Последний раз редактировалось type_Oleg; 22.11.2013 в 21:27.
type_Oleg вне форума Ответить с цитированием
Старый 22.11.2013, 23:05   #4
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

Цитата:
Сообщение от ViktorR Посмотреть сообщение
Нет, не правильно.
min и max - это левая и правая границы области значений X. Тип - real.
Использовать эти значения для переменной цикла For нельзя, так как препод тутже изменит условие, например min = -3.1. И ...?

Шаг задан и вычислять n нет необходимости.
А для какой цели служит данный код в теле твоего цикла?
Код:
n:=(max-min)/h;
Пример решения:
Код:
xmin := -3; {можно запросить ввод}
xmax := 3;  {можно запросить ввод}
h := 0.5;   {можно запросить ввод}
x := xmin;
while x <= x max do
begin
   {вычисляем функцию}
   x := x + h;
  writeln('x =', x:6:2, '  y = ', y:6:2); {Тут формируется таблица}
{которую можно украсить используя знаки, например, '+', '-', 'I'}
end;
...

Как-то так, ...
а в цикле for разве не так ,как я написал?
нахождение n хм....так сказать " препод намекнул" но в то же время n всегда 0

Цитата:
Сообщение от dimka123 Посмотреть сообщение
а в цикле for разве не так ,как я написал?
нахождение n хм....так сказать " препод намекнул" но в то же время n всегда 0
я делал с while но сказали for/

Цитата:
Сообщение от ViktorR Посмотреть сообщение
Нет, не правильно.
min и max - это левая и правая границы области значений X. Тип - real.
Использовать эти значения для переменной цикла For нельзя, так как препод тутже изменит условие, например min = -3.1. И ...?

Шаг задан и вычислять n нет необходимости.
А для какой цели служит данный код в теле твоего цикла?
Код:
n:=(max-min)/h;
Пример решения:
Код:
xmin := -3; {можно запросить ввод}
xmax := 3;  {можно запросить ввод}
h := 0.5;   {можно запросить ввод}
x := xmin;
while x <= x max do
begin
   {вычисляем функцию}
   x := x + h;
  writeln('x =', x:6:2, '  y = ', y:6:2); {Тут формируется таблица}
{которую можно украсить используя знаки, например, '+', '-', 'I'}
end;
...

Как-то так, ...
делал вот по этому примеру только функция имела другую формулу
http://www.cyberforum.ru/pascalabc/thread999351.html

Последний раз редактировалось Stilet; 23.11.2013 в 13:24.
dimka123 вне форума Ответить с цитированием
Старый 23.11.2013, 09:29   #5
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Цитата:
я делал с while но сказали for/
Тогда понятно, зачем препод намекнул по поводу использования n.
В этом случае вычисляй n до входа в цикл, а затем в цикле for выполняй вычисления x и самой функции:
Код:
n := Round((Max - Min)/h); {это как уже было}
for i := 0 to n do  {0 - включение в расчет и левой границы области}
begin
   x := Min + i * h;
   y := f(x);
   writeln( ...); {тут пиши что надо вывести}
end;
Использование функции Round() - нужно для совместимости типов данных. В выражении для n переменная h - real. Впринципе и Max с Min надо делать типа real.
Можно использовать и функции Int() или Trunc() (почитай про них).

Как-то так, ...
PS: Подумай, может не стоит цитировать посты целиком. Они ведь и так видны.
Только те части сообщения имеет смысл цитировать, на которые даеш ответ.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 23.11.2013, 14:33   #6
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

VictoR ,: Function Round () :longint как тогда ее расписать (в скобках) не от Х же брать?

Последний раз редактировалось dimka123; 23.11.2013 в 14:50.
dimka123 вне форума Ответить с цитированием
Старый 23.11.2013, 19:57   #7
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Мной дано пояснение к моему же примеру, где использована функция Round().
Т.е. Зачем: для преобразования к целому типу результата деления;
Как использовать:
Код:
n := Round((Max - Min)/h);
И о чем вопрос?



Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Табуляция функции macujin Microsoft Office Excel 5 08.06.2013 12:53
Табуляция функции на заданом интервале lilywka Помощь студентам 1 29.03.2013 11:17
Программа Windows Form Табуляция функции stas_kovel Windows Forms 2 06.11.2012 19:50
Программа Windows Form Табуляция функции stas_kovel Помощь студентам 0 04.11.2012 15:05