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

Графики в pascal

22.04.2007, 22:10. Показов 9566. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет программеры, выручайте парня.
Задача такая, нужно нарисовать график y=sin(x)+2 на Pascal, все остальнок сделал, кроме прорисовки самой функции на координатной оси. Помогите
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.04.2007, 22:10
Ответы с готовыми решениями:

Turbo Pascal, Pascal ABC, Free Pascal, PascalABC.NET - в чем разница?
Всем привет, решил изучать Паскаль, но на форуме увидел 4 его версии - Turbo Pascal, Pascal ABC, Free Pascal, PascalABC.NET и не понял, в...

Различия трансляторов Pascal ABC.Net и Turbo/Borland Pascal
Пожалуйста, объясните различия между компиляторами Pascal ABC.Net и Turbo/Borland Pascal

Нужен Turbo pascal или Free pascal на русском
Нужен Turbo pascal или Free pascal на русском языке, есть такой или нет? По книге обучаюсь по Turbo pascal, а установлен pascalABC, в книге...

3
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
23.04.2007, 05:19
Насколько я понял, саму ось уже нарисовал. Тогда просто: x у тебя меняется в определенных пределах (что, конечно, в цикле делать). Так, зная х, вычислим у. А это уже координаты новой точки. LineTo рисуем к ней.
0
Yome
24.04.2007, 00:38
получилось что-то вроде этого
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
Program xz_1;
uses Graph;
const Xc = 320; Yc = 240; zoom = 10;
var c, a1, b1, a, b, Gd, Gm, ErrorCode, int_x, int_y, step:Integer;
x, y, sinx:real;
begin
Gd := Detect;
InitGraph(Gd, Gm, '');
ErrorCode := GraphResult;
If ErrorCode ; 0 Then
Begin
    WriteLn('Owibka: ', GraphErrorMsg(ErrorCode));
    Halt(1);
End;
{Koordinati i wkala}
Line(Xc, Yc-210, Xc, Yc+210);
Line(Xc-290, Yc, Xc+290, Yc);
Line(Xc, Yc-210, Xc-10, Yc-190);
Line(Xc, Yc-210, Xc+10, Yc-190);
Line(Xc+290, Yc, Xc+270, Yc-10);
Line(Xc+290, Yc, Xc+270, Yc+10);
OutTextXY(Xc+280, Yc+10, 'X');
OutTextXY(Xc-20, Yc-200, 'Y');
OutTextXY(Xc-10, Yc+5, '0');
Line(Xc-29*Zoom, Yc-8*Zoom, Xc+29*Zoom, Yc-8*Zoom);
Line(Xc-10*Zoom, Yc-12*Zoom, Xc+10*Zoom, Yc-12*Zoom);
Line(Xc-3*Zoom, Yc, Xc-3*Zoom, Yc-8*Zoom);
Line(Xc-(38), Yc-2*Zoom, Xc, Yc-2*Zoom);
Line(Xc-38, Yc-135, Xc+4*Zoom, Yc-25);
SetLineStyle(3, 2, 1);
Line(Xc-6*Zoom, Yc, Xc-6*Zoom, Yc-8*Zoom);
Line(Xc+6*Zoom, Yc, Xc+6*Zoom, Yc-8*Zoom);
x:= Xc-6*Zoom;
sinx:=Pi;
step:=0;
While sinx ; -Pi do
  begin
    step := step+1;
    sinx:=sinx-Pi/120;
    y:= Yc-8*Zoom+4*Zoom*Sin(sinx);
    int_x := trunc(x);
    int_y := trunc(y);
    x:= x+0.5;
    PutPixel(int_x, int_y, white);
  end;
For a:=Xc-6*zoom+1 to Xc-1 do
  for b:=Yc-8*zoom+1 to Yc-4*zoom-1 do begin
  if sin(a)+2=b then
  PutPixel(a, b, red);
  end;
ReadLn;
end.
Зашрихованная красным цветом часть, не должна выходить за памки sin(x), у меня то там прямоугольник закрашен а мен надо от оси х и до дуги вколючительно
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
24.04.2007, 02:24
Думаю, для создания заштрихованной области лучше воспользоваться функцией FillPoly. Т. е., создашь массив координат, вычислишь их, и передашь массив в функцию. Перед этим нужно настроить параметры заполнения функцией SetFillStyle.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.04.2007, 02:24
Помогаю со студенческими работами здесь

Чем отличаются Turbo Pascal и Pascal ABC?
Чем отличаются турбо паскаль и abc? Просто у меня windows7 последняя теперь стоит, и там турбо паскаль не идет, а нам по нему задания...

Нужно перевести программу с Turbo Pascal в Pascal ABC.NET
Вот есть программный код , но он для турбо паскаля, помогите перевести его в АБС.NET Program graphics; uses graph; var...

Можно как-то переделать код из Turbo Pascal чтобы он работал в pascal abc.net?
Сделайте пожалуйста, я просто не вникаю uses Graph, Crt; var grDriver: integer; grMode: integer; ErrCode: integer; ...

Перевод программы с Turbo Pascal на Pascal ABC.NET
написала программу в паскаль турбо на рабочем компьютере. перенесла в паскаль авсNet так как дома стоит эта версия /перестала работать что...

Нужно переделать программу,написанную на Turbo Pascal в ту,чтобы работала на Pascal ABC.NET пожалуйста
program lab3; uses Crt; const Output_File_Name = 'output.txt'; { ima faila dlya vivoda perestanovok } Nmax = 12; {...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru