Шпоры по с++ |
Bar void -bar(int xl, int yl, int x2, int у2); х2 и у2 — правого нижнего. Цвет и- стиль заливки прямоугольника задаются функцией setfillstyle. Заголовочный файл: <graph.h> bar3d -void bar3d(int xl,int yl,int x2, int y2, int Глубина, int В Грань); Вычерчивает параллелепипед. Параметры xl и yl задают положение левого верхнего, а х2 и у2 — правого нижнего угла ближней грани параллелепипеда. Параметр Глубина задает расстояние между передней и задней гранями, параметр в_ _Грань определяет, нужно ли вычерчивать границу верхней грани. Если параметр в_Грань равен нулю, то линия границы верхней грани не вычерчивается. Цвет и стиль закраски ближней грани параллелепипеда можно задать при помощи функции setf illstyle, цвет линий границы — при помощи функции setcolor. Заголовочный файл: <graph.h> Circle- void circle(int x, int y, int r) Вычерчивает окружность радиуса г с центром в точке с координатами (х, у). Цвет окружности можно задать при помощи функции setcolor. Заголовочный файл: <graph.h> draw poly- void drawpoly(int КолТочек, int * Координаты);Вычерчивает замкнутую ломаную линию, состоящую из отрезков прямых. Параметр КолТочек задает количество точек в результате последовательного соединения которых получается ломаная. Параметр Координа ты задает массив координат узловых точек ломаной. Нулевой и первый элементы массива Координаты содержат координаты первой точки (х и у), второй и третий элементы содержат координаты второй точки и т. д.Заголовочный файл: <graph.h> ellipse -void ellipse(int x, int y, int УголНачала, int УголКонца, int РадиусХ, int РадиусУ ) ;Вычерчивает эллипс или дугу эллипса с центром в точке с координатами (х, у). Параметры УголНачала и УголКонца задают круговые координаты начальной и конечной точек линии эллипса, которая вычерчивается против часовой стрелки от начальной. точки к конечной. Угловые координаты задаются в градусах. Значение угловой координаты возрастает против часовой стрелки. Параметры РадиусХ и РадиусУ задают горизонтальный и вертикальный радиусы эллипса. Линия эллипса или дуги вычерчивается цветом, установленным функцией setcolor. Заголовочный файл: <graph.h> getmaxx, getmaxy -int getmaxx(void); int getmaxy(void) ; Функция getmaxx возвращает координату х крайней правой точки экрана, функция getmaxy — координату у крайней нижней точки экрана.Заголовочный файл: <graph. h> initgraph - initgraph(int* Driver, int* Mode, ‘egavga.bgi’);Инициализирует графический режим. Параметр Driver определяет драйвер видеосистемы, параметр Mode — режим работы видеосистемы, egavga.bgi- драйвер. Замечание Обычно в качестве параметра Driver используют указатель на целую константу, значение которой равно detect. В этом случае функция initgraph сама определяет тип графического адаптера и устанавливает для него наилучший режим. Заголовочный файл: <graph.h>
line
- void line(int
xl,
int yl,
int x2,
int y2);Вычерчивает
линию из точки с координатами xl, yl в точку с координатами х2, у2. lineto - void lineto(int x, int y) ;Вычерчивает линию от текущего положения указателя вывода до точки, координаты которой
указаны при вызове. Линия вычерчивается
стилем, установленным функцией setlinestyle. Цвет линии можно задать, вызвав
функцию setcolor. moveto- void moveto(int x, int y) Перемещает указатель вывода в точку с указанными координатами.Заголовочный файл: <graph. h> outtext -void outtext(const char* Текст) ; Выводит строку символов Текст от текущего положения указателя вывода и перемещает указатель вывода в точку, расположенную за последним выведенным символом.Замечание Строка, передаваемая функции outtext, не должна содержать символов форматирования, например \n. Цвет выводимых символов можно задать при помощи функции setcolor, шрифт — settextstyle. Заголовочный файл: <graph.h> putpixel -void putpixel (int ;, int у, int Цвет) Окрашивает пиксел, точку с координатами (х, у), цветом Цвет. В качестве параметра Цвет обычно используют именованную константу (см. setcolor). Заголовочный файл: <graph.h> settexstyle-void settexstyle(int Шрифт, int Ориентация, int Размер); Устанавливает шрифт, размер и ориентацию текста, выводимого функциями outtextxy и outtext. В качестве параметра Шрифт можно использовать одну из перечисленных ниже констант DEFAULT FONT, TRIPLEX FONT SMALL FONT SANSSERIF FONT GOTHIC FONT
Структура программы
Программа на языке C++ представляет собой
набор функций, одна из которых имеет имя main. int main(int argc, char* argv[]) /*здесь инструкции */ return(значение) ;Если функция main не получает параметры и не возвращает результат, то она объявляется так: void main() {/*здесь инструкции */ Основные типы данных основным типам данных языка C/C++ относятся: целые числа (int и др.); дробные (действительные) числа (float и др.); символы (char). Целые числа и числа с плавающей точкой могут быть представлены в различных форматах. Int = -32 768 ...32 767, float = 3,4х10-38...3,4х10+38, char =-128... 127 pow(double x, double y); Возвращает значение x в степени y.. Заголовочный файл: <math.h> sqrt-double sqrt(double к); Возвращает значение, равное квадратному корню из аргумента. Заголовочный файл: <math.h> printf - int printf(Формат, СписокПеременых); Выводит на экран значения переменных. Формат вывода задается в строке форматирования, которая помимо спецификатора формата может содержать текст и управляющие символы. Значение первой переменной
выводится в соответствии с первым спецификатором формата, второй — со вторым,
и т. д. Puts - puts(const char* Строка); Выводит на экран строку символов и переводит курсор в начало следующей строки экрана. В качестве параметра функции можно использовать строковую константу или строковую переменную. Заголовочный файл: <stdio.h> Getch - int getch(void); Возвращает код символа нажатой клавиши. Если нажата служебная клавиша, то функция getch возвращает 0. этом
случае, для того, чтобы определить, какая служебная клавиша нажата, нужно
обратиться к функции getch еще раз. Оператор do while Оператор цикла do while называется оператором цикла с постусловием и используется в тех случаях,когда необходимо выполнить тело цикла хотя бы один раз. Формат оператора имеет следующий вид: do тело while (выражение);Оператор return Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающуюфункцию, в точку, непосредственно следующую за вызовом. Функция main передает управление операционной системе. оператора:return [выражение] ;Оператор for Оператор for - это наиболее общий способ организации цикла. Он имеет следующий формат: for ( выражение 1 ;выражение 2 ; выражение 3 ) тело Выражение 1 обычно используется для установления начального значения переменных, управляющих циклом.Выражение 2 - это выражение, определяющее условие, при котором тело цикла будет выполняться. Выражение 3 определяет изменение переменных,управляющих циклом после каждого выполнения тела цикла.Директива #include Директива #include включает в текст программы содержимое указанного файла. Эта директива имеет две формы:#include "имя файла" и #include <имя файла>. Имя файла должно соответствовать соглашениям операционной системы и может состоять либо только из имени файла, либо из имени файла с предшествующим ему маршрутом.
Если имя файла указано в кавычках, то поиск файла осуществляется в соответствии с заданным маршрутом,
а при его отсутствии в текущем каталоге. Если имя файла задано в угловых скобках, то поиск файла производится
в стандартных директориях операционной системы, задаваемых командой PATH.
Директива #include может быть вложенной, т.е. во включаемом файле тоже может содержаться директива #include, которая замещается после включения файла, содержащего эту директиву. Директива #include широко используется для включения в программу так называемых заголовочных файлов, содержащих прототипы библиотечных функций, и поэтому большинство программ на СИ начинаются с этой директивы. Директива #define Директива #define служит для замены часто использующихся констант, ключевых слов, операторов или выражений некоторымиидентификаторами. Идентификаторы, заменяющие текстовые или числовые константы, называют именованными константами. Идентификаторы, заменяющиефрагменты программ, называют макроопределениями, причем макроопределения могут иметь аргументы.
Задачи #define идентификатор текст #include <math.h>1ELLIPS #include <graphics.h> #include <stdio.h> int gd=DETECT,gm,i; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {putpixel(340+200*cos(i),240+100*sin(i),15);} getch();closegraph();} --------------------------------- #include <math.h>2ulitka #include <graphics.h> int i,gd=DETECT,gm;float u,r; #define pi 3.14 void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180; putpixel(320+cos(u)*(100*cos(u)+150),240+cos(u)*(100*sin(u)+150),15);} getch();closegraph();} ---------------------------- #include <math.h>3kardioida #include <graphics.h> #define pi 3.14 int i,gd=DETECT,gm; float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180;putpixel(320+150*cos(u)*(1+cos(u)),240+150*sin(u)*(1+cos(u)),15);} getch();closegraph();} ---------------------------- #include <math.h>4epicikloida #include <graphics.h> #define pi 3.14 int i,gd=DETECT,gm;float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/120; putpixel(320+(20+120)*cos(u)-20*cos((20+120)*u/20),240+(20+120)*sin(u)-20*sin((20+120)*u/20),15);} getch();closegraph(); } ------------------------------- #include <math.h>5epicik #include <graphics.h> float i; int gd=DETECT,gm; void main() {initgraph(&gd,&gm," "); do {putpixel(320+(71+91)*cos(i)-71*cos((71+91)*i/71),240+(71+91)*sin(i)-71*sin((71+91)*i/71),15); i+=0.0019;}while(!kbhit()); getch();closegraph();} ---------------------- #include <math.h>6asteroida #include <graphics.h> #define pi 3.14 int i,gd=DETECT,gm; float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180;putpixel(320+200*pow(cos(u),3),240+200*pow(sin(u),3),15);} getch();closegraph();} ----------------------------- #include <graphics.h>7cissoida float i;int gd=DETECT,gm; void main() {initgraph(&gd,&gm," "); for (i=-100;i<100;i+=0.001) {putpixel(320+500*i*i*(1+i*i),240+500*i*i*i/(1+i*i),15);} getch();closegraph();} -------------------------- #include <graphics.h>8strofoida
#include <stdio.h> float i;int gd=DETECT,gm; void main() {initgraph(&gd,&gm," "); for (i=-100;i<100;i+=0.008) {putpixel(320+200*(i*i-1)*(i*i+1),240+200*i*(i*i-1)*(i*i+1),15);} getch();closegraph(); return 0;} ------------------------------ #include <math.h>9konhoida #include <graphics.h> #define pi 3.14 int i,gd=DETECT,gm;float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i+=1) {u=i*pi/180; putpixel(320+50+100*cos(u),240+50*tan(u)+100*sin(u),15);} getch();closegraph();return 0;} ------------------------- //pri C=1, A=2 10_1oval #include <math.h> #include <graphics.h> #define pi 3.14 int i,x,y,gd=DETECT,gm; float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180; r=sqrt(cos(2*u)+sqrt(pow(cos(2*u),2)+15)); x=320+70*r*cos(u); y=240+70*r*sin(u);putpixel(x,y,15);} getch();closegraph();} -------------------------------- // pri C koren iz 2-uh ,a A=1.7 10_2oval #include <math.h> #include <graphics.h> #define pi 3.14 int i,x,y,gd=DETECT,gm;float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180; r=sqrt(2*cos(2*u)+sqrt(4*cos(2*u)*cos(2*u)+pow(1.7,4)-4)); x=320+70*r*cos(u); y=240+70*r*sin(u);putpixel(x,y,15);} getch(); closegraph();} --------------------------------------- //pri C=2 . A=1.99 10_3oval #include <math.h> #include <graphics.h> #define pi 3.14 int i,x,y,gd,gm;float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i++) {u=i*pi/180; r=sqrt(4*cos(2*i)+sqrt(16*pow(cos(2*i),2)+pow(1.99,4)-15)); x=320+70*r*cos(u); y=240+70*r*sin(u); lineto(x,y);} getch();closegraph();return 0;} ---------------------- 11lemiskata #include <math.h> #include <graphics.h> #define pi 3.14 int i,x,y,gd=DETECT,gm;float u,r; void main() {initgraph(&gd,&gm," "); for(i=0;i<361;i+=1) {u=i*pi/180;r=50*sqrt(fabs(2*cos(2*u))); x=320+r*cos(u); y=240+r*sin(u);putpixel(x,y,15);} getch();closegraph();return 0;}
|