Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11

Декартов Лист.

01.11.2009, 21:45. Показов 4947. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Люди пожалуйста,очень прошу помогите!!!!вот задача:
Декартов лист. X = 3*a*tg(t)/(1+tg3t);
Y= 3*a*tg2t/(1+tg3t);
Точка пересечения осей координат должны располагаться в центре экрана. Затем
Получить еще 3 изображения кривой осуществив поворот относительно начала координат на π/2, 3π /2, - π/2 радиан. Залить изображения редкими точками.
Пожалуйстаааааааааааа помогите (((((((((
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.11.2009, 21:45
Ответы с готовыми решениями:

Изобразить декартов лист
помогите пожалуйста с такой задачей: Кривая декартов лист определяется следующим уравнением в полярных координатах: \rho...

Создать программу которая рисует Декартов лист и запустить по ней квадрат
Создайте программу, которая отображает на экране монитора график или поверхности (в соответствии с вариантом задания) в декартовой и...

Декартов лист
Помогите реализовать класс. Я новичок и пытаюсь разобраться :) и если кому не сложно, то напишите какие нибудь подсказки по этой задачи)

18
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
02.11.2009, 07:20
Информация о графике здесь.
http://ru.wikipedia.org/wiki/%... 1%81%D1%82
Почитать о рисовании здесь.
https://www.cyberforum.ru/atta... 1241779566
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
52
53
54
uses crt,graph;
var gd,gm,x0,y0,x,y,kx,ky:integer;
    a,fi,t:real;
    c:char;
begin
clrscr;
{write('a=');{можно а вводить с клавиатуры}
readln(a);}
a:=150;
gd:=0;
initgraph(gd,gm,'');
outtextXY(150,20,'1-I chetv. 2-II chetv. 3-III chetv. 4-IV chetv.  Esc-exit');{выводим информацию о действиях}
x0:=getmaxX div 2;{центр экрана}
y0:=getmaxY div 2;
line(0,y0,630,y0);{оси}
line(x0,50,x0,480);
repeat{в цикле выводим изображение по четвертям}
if keypressed then
 begin
  c:=readkey;
  case c of
  '1':begin
       kx:=1;
       ky:=-1;
      end;
  '2':begin
       kx:=-1;
       ky:=-1;
      end;
  '3':begin
       kx:=-1;
       ky:=+1;
      end;
  '4':begin
       kx:=1;
       ky:=+1;
      end;
  #27:exit;
  end;
fi:=0;{начальный угол}
while fi<=pi/2 do{если  fi<=pi/2 будут лепестки без усиков}
 begin
  t:=sin(fi)/cos(fi);{тангенс}
  x:=x0+kx*round(3*a*t/(1+t*t*t));{координата х}
  y:=y0+ky*round(3*a*t*t/(1+t*t*t));{у}
  if cos(fi)<>0 then
  Putpixel(x,y,12);{рисуем точками красного цвета}
  fi:=fi+0.001;{наращиваем угол в радианах}
 end;
setfillstyle(10,12);{стиль заполнения редкими точками красного цвета}
floodfill(x0+kx*10,y0+ky*10,12);{заполняем}
end;
until c=#27;{выход}
end.
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
02.11.2009, 16:59  [ТС]
Цитата Сообщение от Puporev Посмотреть сообщение
Информация о графике здесь.
http://ru.wikipedia.org/wiki/%... 1%81%D1%82
Почитать о рисовании здесь.
https://www.cyberforum.ru/atta... 1241779566

спасибо тебе ооогромное=*********я конечно понимаю что это свеееерх наглости но всё же можно чучуть поподробней решение объяснить ^____^,извини ((и спасибо спасибо спасибо тебе огромное =***

Добавлено через 11 минут
uses crt,graph-он вот тут ошибку выдаёт ((( Error 15.и фиг знает что делать и почему не так =\
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
02.11.2009, 17:46
Nate, Подробнее это в учебнике, ссылку я дал. Найдите у себя модуль Graph.tpu, скорее всего все еще лежит в папке Units, положите в папку с программой. То же проделайте с модулем EGAVGA.BGI из папки BGI.
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
02.11.2009, 18:58  [ТС]
Puporev спасибо тебе большое =)))и извини меня пожалуйста ^___^
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
04.11.2009, 21:04  [ТС]
Puporev, слушай я вот насчёт книги который ты мне дал,я искала искала разбор этой задачи но так и не нашла,а это точно программа к задаче которая я сказала??чесно ничего не нашла в этом учебнике ((((
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
04.11.2009, 21:11
Nate, Там нет этой задачи. Там описание процедур и функций модуля Graph, которые использованы в программе. А алгоритм я Вам и так написал.
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
05.11.2009, 18:35  [ТС]
аааа ой извеняюсь ((((просто я не поняла что в программе делается,но раз там все эти процедуры есть,то это хорошо ))))дико извиняюсь =)

Добавлено через 1 минуту
блин и всё же,я долго разбирала программу но так и не поняла что это а вообще даёт,что я введу 150 что я веду 0,ничего не менятеся как он рисует эти лепестки без изменения так и рисует,знала что уже достала своей тупостью,но всё же =\
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
06.11.2009, 07:17
Nate,
Вы немного мозг включайте когда работаете. Я Вам по русски написал
Pascal
1
2
3
{write('a=');{можно а вводить с клавиатуры}
readln(a);}
a:=150;
Это значит если Вы хотите вводить а с клавиатуры, нужно убрать a:=150;
и разкомментировать (убрать фигурные скобки) write('a='); readln(a);
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
06.11.2009, 07:19  [ТС]
да блин,да я и их таки убирала,я просто не пойму что это "а" обозначает,вот и всё )
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
06.11.2009, 08:09
Nate, А для чего я Вам ссылки дал? Видимо чтоб почитать, в частности что такое а. Хотя и самой можно додуть что это грубо говоря размер листа или радиус. Вы попробуйте прогнать программу при разных а и сами это увидите.
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
06.11.2009, 23:19  [ТС]
:___: извеняюсь,я просто пока не читала а программу прогоняла,ну вообщем извини меняЮи ещё раз спасибо )
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
24.11.2009, 17:08  [ТС]
хммм...вообщем я разобралась почти со всей программой,спасибо за учебник,но у меня вот вопрос,я не совсем поняла где же осуществляется эти повороты вокруг начала координат,и не совсем поняла почему они все одинаковы??это из-за того что вокруг начала координат идёт поворот=((вообщем если не трудно можеш по этой части разъеснить что чего и куда =(
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
24.11.2009, 18:57
Вот здесь и поворачивет, наращиваем угол, изменяются значения синуса и косинуса. А одинаковые, это такая функция.
Pascal
1
2
3
4
5
6
7
8
9
10
fi:=0;{начальный угол}
while fi<=pi/2 do{если  fi<=pi/2 будут лепестки без усиков}
 begin
  t:=sin(fi)/cos(fi);{тангенс}
  x:=x0+kx*round(3*a*t/(1+t*t*t));{координата х}
  y:=y0+ky*round(3*a*t*t/(1+t*t*t));{у}
  if cos(fi)<>0 then
  Putpixel(x,y,12);{рисуем точками красного цвета}
  fi:=fi+0.001;{наращиваем угол в радианах}
 end;
0
0 / 0 / 0
Регистрация: 01.11.2009
Сообщений: 11
09.12.2009, 17:50  [ТС]
ещё можно маленький вопрорс вот kx и ky это ведь оси так,они являются ограничением,или чем??просто не знаю как правильно указать что они делают =)))

Добавлено через 30 секунд
а воо и что означает x0 и y0??

Добавлено через 29 секунд
и ещё один вопрос маленький зачем нам наращивать угол??
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.12.2009, 18:09
Цитата Сообщение от Nate Посмотреть сообщение
что означает x0 и y0??
Это центр экрана и одновременно начало координат, т.е. точка пересечения осей.
Цитата Сообщение от Nate Посмотреть сообщение
зачем нам наращивать угол??
Затем чтоб рисовать кривую. Если наращивать не будем, нарисуем только 1 точку.
Цитата Сообщение от Nate Посмотреть сообщение
kx и ky
Это коэффициенты -1 или +1, с помощью которых меняем направление кривой и рисуем ее в заданной четверти.
0
0 / 0 / 0
Регистрация: 27.10.2009
Сообщений: 26
23.12.2009, 17:23
у меня тут ещё один вопрос назрел даже 2,можеш сказать какой диапазон у t и почему???и можеш поподробней объяснить про это условие while fi<=pi/2 do,что тут делается и зачем вообще это условие нужно??если можно то лучше поподробней =)))
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
23.12.2009, 17:33
какой диапазон у t и почему???и можеш поподробней объяснить про это условие while fi<=pi/2 do,что тут делается и зачем вообще это условие нужно??если можно то лучше поподробней =)))
t:=sin(fi)/cos(fi);{тангенс, может изменяться от минус бесконечности до плюс бесконечности
в школе не проходили? Область определения fi<>k*pi/2}
fi:=0;{начальный угол}
while fi<=pi/2 do{пока угол fi меньше pi/2(90 градусов)}
begin
t:=sin(fi)/cos(fi);{считаем тангенс угла}
x:=x0+kx*round(3*a*t/(1+t*t*t));{вычисляем координату х, сколько пикселей
влево или вправо от середины экрана}
y:=y0+ky*round(3*a*t*t/(1+t*t*t));{вычисляем координату у, сколько пикселей
вверх или вниз от середины экрана}
if cos(fi)<>0 then{если косинус не равен нолю}
Putpixel(x,y,12);{рисуем точками красного цвета}
fi:=fi+0.001;{наращиваем угол в радианах}
end;
Понимаете, это геометрия. И если Вы ее не знаете, нанимайте репетитора, я пас.
0
0 / 0 / 0
Регистрация: 06.12.2013
Сообщений: 2
10.12.2013, 14:08
Puporev,тебе не сложно будет сделать ту же функцию в делфи?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.12.2013, 14:08
Помогаю со студенческими работами здесь

Построить декартов лист
Помогите пожалуйста!

Изобразить декартов лист на Delphi
Доброго времени, товарищи программисты. Вопрос: кто сможет сделать декартов лист на делфи:? очень прошу, помогите пож-ста :( :( чтобы...

Нужно построить декартов лист
Здравствуйте. Написал программу для рисования декартова листа в Turbo С++. Но при построении получается линия. Что мне нужно сделать...

Декартов лист: исправить отображение
#define pi 3.1415 float x0, y0; /*Наибольшие значения, которые могут принимать абсциссы и ординаты точек, границы области...

Построить декартов график
Задание: Построить декартов график плоской кривой ρ=2∙a/sin(2∙φ) 0 ≤ φ ≤ 2∙π в полярной системе координат. Пересчитать в декартовы, с...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru