русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

В рамках данной статьи мы рассмотрим первые четыре этапа комплексной диагностики локальной сети, а именно: диагностику канального уровня сети.


Дата добавления: 2013-12-23; просмотров: 824; Нарушение авторских прав


END.

BEGIN

Procedure DrawGraphic;

Procedure DrawAxes;

Var

Program grafic;

End;

Begin

End;

Begin

Декартовая система координат проецируется на указанную область экрана

End;

Begin

End;

Begin

Декартовая система координат проецируется на всю область экрана

function getgrx(x:real):integer;

getgrx:=round(GetMaxX/(maxx-minx)*(x-minx));

function getgry(y:real):integer;

getgry:=round(GetMaxY)/(maxy-miny)*(y-miny));

function getgrx(x:real):integer;

getgrx:=round((grmaxx-grminx)/(maxx-minx)*(x-minx))+grminx;

function getgry(y:real):integer;

getgry:=round((grmaxy-grminy)/(maxy-miny)*(y-miny))+grminy;

где minx, maxx – минимальное и максимальное значение координаты х в декартовой системе координат;

miny, maxy – минимальное и максимальное значение координаты y в декартовой системе координат

grminx, grmaxx – минимальное и максимальное значение координаты х в графической системе координат;

grminy, grmaxy– минимальное и максимальное значение координаты y в графической системе координат

Пример. Написать программу для построения графика функции y(x)=a*sin(x). Построение графика осуществлять в заданной области экрана. Нарисовать оси координат.

{Программа выполняет построение графика функции y=a*sin(x).}

uses crt,graph;

grminx,grminy, { графические границы области }

grmaxx,grmaxy : integer; { построения графика }

a, { число в уравнении функции }

stepx, { шаг изменения x}

minx,miny, { физические границы области }

maxx,maxy : real; { построения графика }



s : string; { для ввода чисел с клавиатуры}

ercode : integer; { код ошибки при преобразовании строки в число}

 

{Процедура инициализации графического режима. Возвращает true - графический режим инициализирован; при возникновении ошибки - false}

function grinit:boolean;

var

grdriver, {графический адаптер}

grmode, {графический режим}

ercode :integer; {код ошибки}

begin

grinit := True;

grdriver:= Detect;

initgraph(grdriver,grmode,''); { инициализация графики}

ercode:=graphresult; { результат инициализации}

if ercode<>grok then

begin

writeln('ошибка графики:',grapherrormsg(ercode));

writeln('программа остановлена. ');

grinit := False;

end;

end;

 

{Функция перевода физического значения х в графическое x(в пикселы).

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

график функции.}

function getgrx(x:real):integer;

begin

getgrx:=round((grmaxx-grminx)/(maxx-minx)*(x-minx))+grminx;

end;

 

{Функция перевода физического значения y в графическое y(в пикселы).

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

график функции.}

function getgry(y:real):integer;

begin

getgry:=round((grmaxy-grminy)/(maxy-miny)*(y-miny))+grminy;

end;

 

{Функция вычисления значения функции при аргументе х}

function f(a:real; x:real):real;

begin

f:=a*sin(x);

end;

 

{Процедура вычисления минимального и максимального значений функций

на заданном отрезке [minx,maxx] по оси х.

Функция возвращает значения:

miny - минимальное значение;

maxy - максимальное значение;}

procedure GetMaxMinY(var miny : real; var maxy : real);

var

x,y : real; {физические значения х и функции y(x)}

begin

{вычисление минимального и максимального значений функции}

miny := f(a,minx);

maxy := f(a,minx);

x := minx+stepx;

repeat

y:=f(a,x);

if y<miny then miny:=y;

if y>maxy then maxy:=y;

x:=x+stepx;

until x>maxx;

end;

 

{Рисование осей OX и OY графика

Для расчета используются следующие данные:

minx,maxx,miny,maxy - физические значения минимума и

максимума х и y(x)}

var

s : string; {название графика функции}

axisx, axisy : integer; {графические координаты осей}

begin

{определение координат осей ОХ и OY}

axisx := grminx;

axisy := grminy;

 

{Рисование оси ОХ}

setcolor(white);

line(getgrx(minx)-20,axisy,getgrx(maxx)+20,axisy);

 

{Рисование стрелки по оси ОХ}

moveto(getgrx(maxx)+20,axisy);

linerel(-10,2);

linerel(3,-2);

linerel(-3,-2);

linerel(10,2);

 

{Рисование подписи оси ОХ}

outtextxy(getgrx(maxx)+15,axisy-10,'x');

 

{Рисование оси ОY}

line(axisx,getgry(miny)+20,axisx,getgry(maxy)-20);

 

{Рисование стрелки по оси ОY}

moveto(axisx,getgry(maxy)-20);

linerel(2,10);

linerel(-2,-3);

linerel(-2,3);

linerel(2,-10);

 

{Рисование подписи оси ОY}

outtextxy(axisx-15,getgry(maxy)-10,'y');

 

{Вывод названия графика функции}

str(a:4:2,s);

s := ' y(x)='+s+'*sin(x)) - синусоида';

outtextxy(GetMaxX div 2 - 100 ,GetMaxY-25,s);

end;

{Функция рисования графика функции с шагом stepx.

Для рисования используются следующие данные:

minx,maxx - физические значения минимума и максимума х}

var

first : boolean; {признак рисования первой точки на графике}

grx,gry : integer; {графич. координаты (x,y) (в пикселах)}

x,y : real; {физические координаты точки (x,y)}

begin

{Задание цвета графика функции}

setcolor(LightBlue);

first:=true;

x:=minx;

{Цикл рисования графика функции}

repeat

y:=f(a,x);

{получение граф. координат точки (x,y)}

grx:=getgrx(x);

gry:=getgry(y);

if first then

begin {рисование первой точки на графике}

moveto(grx,gry);

putpixel(grx,gry,getcolor);

first:=false;

end {рисование линии о текущей точки к точке (grx,gry)}

else lineto(grx,gry);

x:=x+stepx; {переход к следующей точки на графике}

until x>maxx;

end;

 

clrscr;

repeat

 

repeat

writeln('Введите минимальное значение х (в радианах) -> ');

readln(s);

val(s,minx,ercode);

if (ercode <> 0) then

writeln('Ошибка при вводе минимального значения х!');

until (ercode=0);

 

repeat

writeln('Введите максимальное значение х (в радианах) -> ');

readln(s);

val(s,maxx,ercode);

if (ercode <> 0) then

writeln('Ошибка при вводе максимального значения х!');

until (ercode=0);

 

if (minx>=maxx) then

writeln('Минимальное значение х должно быть меньше максимального!');

 

 

until (minx<maxx);

repeat

writeln('Введите значение коэффициента а -> ');

readln(s);

val(s,a,ercode);

if (ercode <> 0) then

writeln('Ошибка при вводе коэффициента а!');

until (ercode=0);

 

if (grinit) then {вызов процедуры инициализации графического режима}

begin

grminx:=48; {задание минимального х для окна графика}

grmaxx:=getmaxx-48; {задание максимального х для окна графика}

grminy:=getmaxy-48; {задание минимального у для окна графика}

grmaxy:=24; {задание максимального у для окна графика}

 

stepx:=(maxx-minx)/150; {шаг изменения аргумента x}

 

GetMaxMinY(miny,maxy); {вычисление минимального и максимального y}

DrawAxes; {рисование осей графика}

DrawGraphic; {рисование графика функции}

readkey;

closegraph; {закрытие графического режима}

end;

 

Мы не будем подробно описывать методику тестирования кабельной системы сети. Несмотря на важность этой проблемы, ее решение тривиально и однозначно: полноценно кабельная система может быть протестирована только специальным прибором - кабельным сканером. Другого способа не существует. Нет смысла заниматься трудоемкой процедурой выявления дефектов сети, если их можно локализовать одним нажатием клавиши AUTOTEST на кабельном сканере. При этом прибор выполнит полный комплекс тестов на соответствие кабельной системы сети выбранному стандарту.

Хотелось бы обратить ваше внимание на два момента, тем более что о них часто забывают при тестировании кабельной системы сети с помощью сканера.

Режим AUTOTEST не позволяет проверить уровень шума создаваемого внешним источником в кабеле. Это может быть шум от люминесцентной лампы, силовой электропроводки, сотового телефона, мощного копировального аппарата и др. Для определения уровня шума кабельные сканеры имеют, как правило, специальную функцию. Поскольку кабельная система сети полностью проверяется только на этапе ее инсталляции, а шум в кабеле может возникать непредсказуемо, нет полной гарантии того, что шум проявится именно в период полномасштабной проверки сети на этапе ее инсталляции.

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

В рамках предлагаемой методики мы не будем рассматривать ставшую хрестоматийной методику упреждающей диагностики сети (см. врезку "Методика упреждающей диагностики сети"). Не подвергая сомнению важность упреждающей диагностики, заметим только, что на практике она используется редко. Чаще всего (хоть это и неправильно) сеть анализируется только в периоды ее неудовлетворительной работы. В таких случаях локализовать и исправить имеющиеся дефекты сети требуется быстро. Предлагаемую нами методику следует рассматривать как частный случай методики упреждающей диагностики сети.



<== предыдущая лекция | следующая лекция ==>
Перевод мировых координат в графические | Организация процесса диагностики сети


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.126 сек.