Форум программистов, компьютерный форум CyberForum.ru

графика в борланде - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ case struct http://www.cyberforum.ru/cpp-beginners/thread50670.html
Здравствуйте! Подскажите как аналогичную структуру сделать в С++? type MainTyp=record case integer of 1:(I:integer); 2:(w1,w2:word); 3:(b1,b2,b3,b4:byte); end;
C++ прога на вычисление выражение на С++ Здраствуйте, можете помочь написать прогу на C++ которая бы вычесляла выражение (x-(y-z)/a*d при условии что a*d>50000. http://www.cyberforum.ru/cpp-beginners/thread50668.html
Команды Borland C++ по разделам их назначения C++
Парни помогите. МНе задали задание найти команды Borland C++ по разделам их назначения. Помогите плиз или дайте ссылку на команды, то найти не могу. Заранее спасибо.
C++ Можно ли выразить порядковый номер элемента массива через индексы?
Допустим,есть двумерный массив a, и необходимо получить доступ к элементу a;можно ли как-то узнать его порядковый номер в массиве,полагая,что если бы массив был разложен в линейное множество,его строки следовали бы одна за другой,а элементы нумеровались как в обычном линейном множестве,начиная с нуля(или 1)и до количества элементов? Например: a = { { 1, 0, 1, 0, 8, 0}, { 1, 0, 1, 0, 5,...
C++ Проблему с двумерным динамическим массивов http://www.cyberforum.ru/cpp-beginners/thread50654.html
Написал программку. Считает правильно, но в конце выдаётся ошибка. Цель такая:В массив А(N,М) вставить одномерный массив В(N), расположив его перед последним столбцом, содержащим нулевой элемент. Если такого столбца не окажется, то вставить массив В(N) после последнего столбца. Ввод, вывод элементов двумерного массива и его обработку оформить в виде функций. #include <iostream.h> #include...
C++ Одновременная реализация константного и неконстантного оператора [] в классе string Вобщем, проблема в следующем: нужно реализовать обращение по индексу в классе string двумя вариантами оператора : константный (для чтения) и возвращающий char& для изменения. Со вторым оператором я вроде разобрался. А вот как первый реализовать, и ,чтобы, когда надо было прочитать, включался первый оператор?. Я смог добиться написания обоих - т.е. компилятор не ругается, что у двух методов... подробнее

Показать сообщение отдельно
Катюня
0 / 0 / 0
Регистрация: 01.05.2009
Сообщений: 22

графика в борланде - C++

13.09.2009, 11:28. Просмотров 834. Ответов 0
Метки (Все метки)

Народ, помогите изменить прогу...надо, чтоб после запуска фигуры двигались и изменяли цвет не автоматически, а с помощбю клавиш, то есть пользователь должен ими управлять с клавиатуры..вот мой код...Заранее спасибо)
C++
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
#include <iostream.h>
#include <conio.h>
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <dos.h>
#include <iomanip.h>
#include <math.h>
class TShape {
 protected:  int x, y, color;
 public:
   TShape(int ix, int iy, int icolor);
   ~TShape();
   virtual void Draw(int c)= 0;
   void Show();void Hide();
};
class TPoint : public TShape {
 public:
  TPoint(int ix, int iy, int icolor);
  void Draw(int c);
};
class Ellipse : public TPoint {
 protected:   int sang, endang, xrad, yrad;
 public:
   Ellipse(int ix, int iy, int ixrad, int iyrad, int icolor);
   void Draw(int c);
};
class Ring : public Ellipse {
 protected:  int r;
 public:
   Ring(int ix, int iy, int ir, int icolor);
   void Draw(int c);
};
class Sector : public Ellipse {
 protected:  int sang, eang, xrad, yrad;
 public:
   Sector(int ix, int iy, int isang, int ieang, int ixrad, int iyrad, int icolor);
   void Draw(int c);
};
TShape::TShape(int ix, int iy, int icolor) {
  x=ix; y=iy;
  color=icolor;
}
TShape::~TShape() {
}
void TShape::Show() {
  Draw(color);
}
void TShape::Hide() {
  Draw(BLACK);
}
TPoint::TPoint(int ix, int iy, int icolor): TShape(ix, iy, icolor){
}
void TPoint::Draw(int c) {
  putpixel(x, y, c);
}
 
Ellipse::Ellipse(int ix, int iy, int ixrad, int iyrad, int icolor) :
TPoint(ix, iy, icolor){
 xrad=ixrad; yrad=iyrad;
}
void Ellipse::Draw(int c) {
  setcolor(c);
  ellipse(x, y, 0, 360, xrad, yrad);
  line(x-xrad,y-yrad,x+xrad,y+yrad);
}
Ring::Ring(int ix, int iy, int ir, int icolor) :
Ellipse (ix, iy, ir, ir, icolor ) {
  r=ir;
}
void Ring::Draw(int c) {
  setcolor(c);
  circle(x, y, r);
}
Sector::Sector(int ix, int iy, int isang, int ieang, int ixrad, int iyrad, int icolor):
Ellipse(ix, iy, ixrad, iyrad, icolor) {
  sang=isang; eang=ieang;
  xrad=ixrad; yrad=iyrad;
}
void Sector::Draw(int c) {
  setcolor(c);
  sector(x, y, sang, eang, xrad, yrad);
  }
main() {
  cout<<"color";
  int i,var,j;
  TShape *A[64];
  int graphdriver = DETECT, graphmode, errorcode;
  initgraph(&graphdriver, &graphmode, "C:\\Borlandc\\BGI");
  randomize();
  setfillstyle(1,0);
  cout<<"<---CHOSE_YOUR_DESTINY---> \n";
  cout<<"1) Ellipse \n";
  cout<<"2) Ring \n";     cout<<"3) Sector \n";
  cout<<"4) 2 Dots \n";  cin>>var;
 if (var==1){
    for (i=0; i<64; i++) {
    A[i] = new Ellipse(i*10, 240, random(100), random(80), random(14)+1);
    }
    while (!kbhit()) {
     for (i=0; i<64; i++) {
       A[i]->Show();
       delay(50);
       A[i]->Hide();
     }
    }
  }
 
  if (var==2){
    for (i=0; i<64; i++) {
      A[i] = new Ring(i*10, 240, random(100), random(14)+1);
    }
    while (!kbhit()) {
       for (i=0; i<64; i++) {
      A[i]->Show();
      delay(50);
      A[i]->Hide();
       }
    }
  }
  if (var==3){
    for (i=0; i<64; i++) {  j=random(45);
      A[i] = new Sector(i*10, 240, 315+j, 45-j, 60+i, 60+i, random(14)+1);
    }
    while (!kbhit()) {
       for (i=0; i<64; i++) {
      A[i]->Show();
      delay(50);
      A[i]->Hide();
       }
    }
  }
  if (var==4){
    for (i=0; i<64; i++) {
    A[i] = new TPoint(100+random(500), 100+random(300), random(14)+1);
    }
    while (!kbhit()) {
       for (i=0; i<2; i++) {
      A[i]->Show();
      delay(500);
       }
    }
  }
  getch();
  closegraph();
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru