Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Построение графика в текстовом режиме





 

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

Задача. Написать программу построения графика заданной функции Y=f(X) для аргумента X, изменяющегося от Xmin до Xmax. Для определенности будем считать, что Y=sin(x), Xmin =–2π, Xmax = 2π.

Если известны минимальное и максимальное значение функции, то областью, в которой располагается реальный (натурный) график, является прямоугольник с координатами (при общепринятом направлении осей):

левый верхний угол – (Xmin, Ymax);

правый нижний угол – (Xmax, Ymin).

На экране для размещения графика тоже должна быть выделена прямоугольная область, координатами которой (с учетом выбранного направления оси Y вниз) будут:

левый верхний угол – (xGmin, yGmin);

правый нижний угол – (xGmax, yGmax),

здесь обозначено:

xGmin – x графическое минимальное,

xGmax – x графическое максимальное,

yGmin – y графическое минимальное,

yGmax y графическое максимальное.

В общем случае " область реального существования " функции должна быть отражена на " область ее экранного существования ". Для этого должны быть вычислены масштабы – коэффициенты, с помощью которых натурные величины (X, Y) будут переводиться в графические координаты (xG, yG).

Масштабы можно определить по следующим формулам:

Mx: = (xGmax-xGmin)/(Xmax-Xmin); { Масштаб по X }

My: = (yGmax-yGmin)/(Ymax-Ymin); { Масштаб по Y }

которые получены из условия, что стороны " экранного " прямоугольника точно будут соответствовать сторонам " реального " прямоугольника.

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

Для перехода к графическим координатам получим следующие соотношения:

xG: =xGmin+Round((x-Xmin)*mx);

yG: =yGmin+Round((Ymax-y)*my);

Здесь функция Round (аргумент) используется для получения целого значения с правильным округлением, а " несимметричность" ее аргумента вызвана тем, что на экране ось Y направлена вниз.

Используя эти формулы, можно провести оси X и Y на графике: оси X соответствует y=0 во второй формуле, а оси Y – x=0 в первой формуле. Аналогично, можно легко нанести на график сетку линий: для горизонтальных линий задают необходимые значения Y во второй формуле, а для вертикальных – значения X в первой.

Приводимая ниже программа не является универсальной, но она демонстрирует приемы, которые могут быть использованы при написании более качественных продуктов.

Для проведения горизонтальных и вертикальных линий в программе используются процедуры, для вычисления заданной зависимости используется функция. Все необходимые действия выполняются последовательно и автономно. При необходимости любое количество используемых констант может быть заменено переменными, значения которых будут запрашиваться у пользователя в режиме диалога. В операторах While условие окончания записано так, чтобы гарантированно выводилась последняя линия или точка. Обратите внимание, что если назначены пределы изменения по оси X на экране (xGmin, xGmax), то количество точек на этой оси будет (xGmax–xGmin+1), и количество интервалов (шагов) нет смысла назначать более (xGmax–xGmin). Константы, определяющие размеры графика на экране (xGmin, xGmax, yGmin, yGmax), назначены с учетом возможности сделать необходимые надписи вне поля графика.







Дата добавления: 2014-12-06; просмотров: 647. Нарушение авторских прав; Мы поможем в написании вашей работы!




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

ТЕРМОДИНАМИКА БИОЛОГИЧЕСКИХ СИСТЕМ. 1. Особенности термодинамического метода изучения биологических систем. Основные понятия термодинамики. Термодинамикой называется раздел физики...

Измерение следующих дефектов: ползун, выщербина, неравномерный прокат, равномерный прокат, кольцевая выработка, откол обода колеса, тонкий гребень, протёртость средней части оси Величину проката определяют с помощью вертикального движка 2 сухаря 3 шаблона 1 по кругу катания...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

Studopedia.info - Студопедия - 2014-2026 год . (0.008 сек.) русская версия | украинская версия