Файл ELECTRO.cpp – исходный текст программы


/* Редактор построения электрических схем.

Данная программа позволяет конструировать схемы, применяемые в электронике и электротехнике. */

// Объявление используемых стандартных библиотек

#include <stdio.h>

#include <conio.h>

#include <math.h>

#include <graphics.h>

#include <printgr.h>

#include "mouse.cpp"

// Объявление используемых функций (названия функций означают те // элементы, которые они конструируют).

void rezistor(int,int,int,int);

void condensator(int,int,int,int);

void catushka(int,int,int,int);

void reostat(int,int,int,int,int,int);

void ampermetr(int,int,int,int);

void voltmetr(int,int,int,int);

void zazemlitel(int,int,int,int);

void diod(int,int,int,int);

void eds(int,int,int,int);

void lampochka(int,int,int,int);

void galvanometr(int,int,int,int);

void antena(int,int,int,int);

void zazhim(int,int,int,int);

void kluch(int,int,int,int);

void provod(int,int,int,int);

void tranzistor(int,int,int,int,int);

void correct(int,int,int,int);

int pozition(int,int,int,int);

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

static int i,j;

void main (void){

/* Инициализация графического режима */

int driver=DETECT,mode,gerr;

initgraph(&driver,&mode,"c:\\work\\bc\\bgi");

gerr=graphresult();

if(gerr!=grOk){

puts("Ошибка инициализации графики");

}

cleardevice();

/* Инициализация манипулятора «мышь» */

initmouse();

set_graph_cursor(0,0,mask1);// выбор цвета курсора (белый)

// и определение горячего пятна

cursor_on();// включить курсор «мыши»

cursor_off();//выключить курсор

setbkcolor(7);// устанавливается цвет фона (серый)

setcolor(15);// устанавливается цвет линии (белый)

/* Разметка рабочего стола */

// Оформление рамки

line(8,7,8,470);//левая вертикальная линия

line(8,7,630,7);//верхняя горизонтальная линия

line(630,7,630,470);//правая вертикальная линия

line(630,470,8,470);//нижняя горизонтальная линия

// Место на рабочем столе для кнопок

line(108,7,108,470);

line(58,50,58,400);

line(8,365,108,365);

line(8,50,630,50);

line(108,435,630,435);