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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2009, 18:09   #1
HouK
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 16
По умолчанию Тригонометрические фишки (pascal,delphi)

В общем есть задача.

Вычислить значение функция = tg (3x) на отрезке [-π /3;π] в точках, отстоящих друг от друга на шаг равный 0,1.

т.к. tg=sin/cos, то tg(3x)=sin(3x)/cos(3x), но делфи ругаеться на такую запись.

Использую 2 циклы, т.к. это задание по лабе в инсте, нада сделать 3 цикла, for,while,repeat и чтобы можно было выбрать 1 из циклов через case, но мне в общем то нужно понять как записывать tg.

Ну и не большой вопросик по задаче нада ли pi выделять константой, или как нить еще его вводить, или он автоматом выставиться в 3.14.........

Код:
var
  x,y,c:real;
  i:integer;
begin
  Readln(c);
  X:=pi/3;
  for i:=1 to round(((pi/3)-pi)/c) do
    begin
      y:=(sin(3x))/(cos(3x));
      Writeln(y:7:2)
      X:=x+c;
    end;
  X:=pi/3;
  while x<=pi do
    begin
    Writeln(sin(3x)/cos(3x):7:2);
    X:=x+c;
    end;
end.
Мой пост последний мб не видите
Код:
  for i:=1 to round(((pi/3)-pi)/c) do
    begin
      y:=sin(3x)/cos(3x);
      Writeln(y:7:2);
      X:=x+c;
    end;
таже задача только вопрос в другом, он не выводит никаких значений для этого цикла.... так и должно быть в данном примере или нет???

Последний раз редактировалось HouK; 16.11.2009 в 19:28.
HouK вне форума Ответить с цитированием
Старый 16.11.2009, 18:11   #2
VilAm
Пользователь
 
Аватар для VilAm
 
Регистрация: 14.11.2009
Сообщений: 56
По умолчанию

Код:
sin(3*x)/cos(3*x)
Мы чужды себе, мы, познающие, мы сами чужды себе
VilAm вне форума Ответить с цитированием
Старый 16.11.2009, 18:16   #3
HouK
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 16
По умолчанию

Спасибо, а как насчет pi не подскажте?
HouK вне форума Ответить с цитированием
Старый 16.11.2009, 18:19   #4
Juffin
Форумчянин
Форумчанин
 
Аватар для Juffin
 
Регистрация: 05.04.2009
Сообщений: 446
По умолчанию

pi - функция, возвращает значение числа пи в формате Extended? т.е. просто так и пищи pi/3
Nobody expects Spanish Inquisition!
Juffin вне форума Ответить с цитированием
Старый 16.11.2009, 18:43   #5
HouK
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 16
По умолчанию

Код:
  for i:=1 to round(((pi/3)-pi)/c) do
    begin
      y:=sin(3x)/cos(3x);
      Writeln(y:7:2);
      X:=x+c;
    end;
таже задача только вопрос в другом, он не выводит никаких значений для этого цикла.... так и должно быть в данном примере или нет???

Последний раз редактировалось HouK; 16.11.2009 в 18:50.
HouK вне форума Ответить с цитированием
Старый 16.11.2009, 19:28   #6
Juffin
Форумчянин
Форумчанин
 
Аватар для Juffin
 
Регистрация: 05.04.2009
Сообщений: 446
По умолчанию

выведите перед началом выполнения цикла:
Код:
writeln(round(((pi/3)-pi)/c));
и возможно, все станет ясно
Nobody expects Spanish Inquisition!
Juffin вне форума Ответить с цитированием
Старый 16.11.2009, 19:31   #7
HouK
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 16
По умолчанию

равно -21, и мне пока что ничего не ясно

Кстате при репите он выводит только 0.00

Хотя кажись понял, -21 точка по которой проходит вычисления чтоли???

Последний раз редактировалось HouK; 16.11.2009 в 19:34. Причина: понимаение небольшое
HouK вне форума Ответить с цитированием
Старый 16.11.2009, 19:50   #8
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Код:
равно -21, и мне пока что ничего не ясно
ваш цикл
Код:
 for i:=1 to round(((pi/3)-pi)/c) do
то есть вычисление по вашему должно идти от 1 до -21 но это ж бред
попробуйте
Код:
for i:=1 to round(((pi/3)+pi)/c) do
и будет вам счастье
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 16.11.2009, 19:54   #9
HouK
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 16
По умолчанию

ну эта единственная формула, которую я знаю для определения точек, в которых нада произвести вычисления. но если взять шаг равный -0.1 как предлогаеться в лабе, чтобы при деление число вышло положительным, цикл не прекрашаеться.

Не пойму в чем же подвох
HouK вне форума Ответить с цитированием
Старый 16.11.2009, 19:56   #10
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

а вы пост №8 еще раз внимательно прочитайте
да и должно быть
Код:
  X:=-pi/3;
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фишки Windows Гриха Windows 15 05.08.2009 11:54
Подскажите как записать обратные тригонометрические функции на паскале....)))) Polo Паскаль, Turbo Pascal, PascalABC.NET 2 04.11.2008 11:05
тригонометрические , логарифмические, экспоненциальные функции Dimon88 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 13.09.2008 01:38
Фишки в паскале DjRog Паскаль, Turbo Pascal, PascalABC.NET 3 15.03.2008 14:38
Обратные тригонометрические функции Melok Паскаль, Turbo Pascal, PascalABC.NET 6 24.10.2007 13:06