Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 24.04.2013, 00:14   #1 (permalink)
Sandra 2000
Member
 
Аватар для Sandra 2000
 
Регистрация: 04.10.2012
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Exclamation Построение графика нелинейного уравнения, Turbo Pascal

Помогите пожалуйста написать программу построенния графика.
Задано нелинейное уравнение : lg(x+2) = cos2x
Если перенести все вправо получается F(x) = lg(x+2)-cos2x (или F:=ln(x+2)/ln(10)-(cos(2*x)))
Только вот как строить? Можно разделить на два f1(x) = lg(x+2) и f2(x)=cos2x, но не уверена.

P.S. Тема связана с численными методами(метод половинного деления)
Вложения
Тип файла: zip График.zip (8.1 Кб, 23 просмотров)
Sandra 2000 вне форума   Ответить с цитированием

Старый 24.04.2013, 00:14
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Это схожие темы, в них вы можете поискать информативные ответы

Построение фигур в Turbo Pascal
Построение блок схем по коду Pascal
Задача в Паскале на построение графика функции
Решение нелинейного уравнения на Паскале
Построение графика ФНЧ, LR Фильтр
Turbo Pascal

Старый 24.04.2013, 09:43   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Sandra 2000 Посмотреть сообщение
Только вот как строить? Можно разделить на два f1(x) = lg(x+2) и f2(x)=cos2x, но не уверена.
Можно. Только вот зачем? Вы написали функцию в явном виде, ну так и считайте таблицу F(x).
Цитата:
Сообщение от Sandra 2000 Посмотреть сообщение
P.S. Тема связана с численными методами(метод половинного деления)
Так Вам график или решение уравнения?
Vladimir_S вне форума   Ответить с цитированием
Старый 24.04.2013, 10:00   #3 (permalink)
Sandra 2000
Member
 
Аватар для Sandra 2000
 
Регистрация: 04.10.2012
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

только график, корни я уже нашла
Sandra 2000 вне форума   Ответить с цитированием
Старый 24.04.2013, 10:35   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Sandra 2000 Посмотреть сообщение
только график, корни я уже нашла
Чудесно. Так в чем проблемы? Таблицу в файл не скинуть? Или Вам графическая программа нужна?
Vladimir_S вне форума   Ответить с цитированием
Старый 24.04.2013, 10:38   #5 (permalink)
Sandra 2000
Member
 
Аватар для Sandra 2000
 
Регистрация: 04.10.2012
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Sandra 2000 Посмотреть сообщение
Помогите пожалуйста написать программу построенния графика.
да мне нужна программа, которая строит этот график
Sandra 2000 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 24.04.2013, 10:41   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Sandra 2000 Посмотреть сообщение
да мне нужна программа, которая строит этот график
Ух... ну ладно, нарисую. По возможности. Сейчас я на работе, и потому приходится еще и работать.
Vladimir_S вне форума   Ответить с цитированием
Старый 24.04.2013, 11:54   #7 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Так, ну вот, получите:
Код:
Uses CRT, Graph;
Var
 i:Integer;
 x,y:Real;
 S:String;
Function F(z:real):real;
begin
 F:=Ln(z+2)/Ln(10)-Cos(z*2);
end;

Begin
 InitGraph(...); {Здесь - самостоятельно}
 SetLineStyle(SolidLn,0,ThickWidth);
 Line(20,240,620,240);
 Line(200,20,200,460);
 SetTextStyle(DefaultFont,HorizDir,1);
 SetTextJustify(CenterText,TopText);
 For i:=-3 to 7 do
  if i<>0 then
   begin
    Line(200+60*i,240-4,200+60*i,240+4);
    STR(i,S);
    OutTextXY(200+60*i,240+10,S);
   end;
 SetTextJustify(RightText,CenterText);
 For i:=-2 to 2 do
  if i<>0 then
   begin
    Line(200-4,240-110*i,200+4,240-110*i);
    STR(i,S);
    OutTextXY(200-10,240-110*i,S);
   end;
 SetLineStyle(SolidLn,0,NormWidth);
 SetColor(Yellow);
 x:=-3.0+61/60;
 y:=F(x);
 MoveTo(Round(200+x*60),Round(240-y*110));
 For i:=62 to 600 do
  begin
   x:=-3.0+i/60;
   y:=F(x);
   LineTo(Round(200+x*60), Round(240-y*110));
  end;
 ReadKey;
 CloseGraph;
End.
Миниатюры
lgcos.jpg  
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 07:49.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.