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

Алгоритм Брезенхэма - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Марафон http://www.cyberforum.ru/cpp-beginners/thread191716.html
Здраствуйте=) Надо через структуры написать код 3-ех марафанистов. 1-ое их имена. 2-ое они бигут в какиета точки у всех разные 3-ое время. Если при вводе написать Zhenia то вывод должен быть Impossible Заметка (выходные буквы должны быть большими) ввод. 3 Dima Moscow 23:00
C++ Домашняя бухгалтерия Помогите, пожалуйста, создать домашнюю бухгалтерию) совсем не могу разобраться)) Требования: Человек туда заносит свои доходы/расходы, может посмотреть, на что у него сколько денег уходит (еда, квартплата, машина, одежда и т.д.). Запланировать какие-то платежи. Отслеживать взаиморасчеты с другими людьми (скажем, кому дал в долг и когда должен вернуть). Надо делать отчет за месяц, за... http://www.cyberforum.ru/cpp-beginners/thread191711.html
C++ Структура внутри класса
Вообщем необходимо создать класс жидкость, в нём указатель на название (слово) и плотность (целочисл). Определить конструкторы и деструкторы, функцию вывода. Создать производный клас "Алкогольные напитки" имеющего значение крепость (целочисл). Так же конструкторы и деструкторы. Опеределить функцию переназначения крепости и плотности. Из всего этого уважаемы я сейчас делаю то, что выделено...
C++ Ошибка в программе (ввод массива через ф-ию)
input.h #include <stdio.h> void in (int **x, int nx, int mx) { int i, j; for (i = 0; i < nx; i++) for (j = 0; j < mx; j++) scanf ("%d",&x); }
C++ Получить числа строки http://www.cyberforum.ru/cpp-beginners/thread191658.html
Добрый вечер! Такая проблема есть двумерный массив( который я считал из тxt),например такой adfrgh f000fsf fggfgg t67hjk Мне нужно вытянуть из него например 000 во второй строчке и записать это в новый массив(пустой) на первую строчку с отступом в 2 элемента и уже новый массив в файл! Помогите, горю, все выходные просидел и смог только считать их txt в массив, его же еще нужно обработать
C++ Схема Горнера код схемы Горнера /* * 6 * 3 * 1 3 -2 1 -1 1 * * Ответ: 439 */ #include <stdlib.h> /** EXIT_FAILURE **/ подробнее

Показать сообщение отдельно
Valuh
0 / 0 / 0
Регистрация: 04.07.2010
Сообщений: 70
17.11.2010, 21:28  [ТС]     Алгоритм Брезенхэма
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
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
int a,b;
   a=x1;
   b=y1;
   dx=abs(x2-x1);
   dy=abs(y2-y1);
 
 
//первая четверть
if (x1<=x2&&y2<=y1)
if (dx<dy)
{
 while(b>=y2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x2-x1;                                // change
    dy=y1-y2;                                // change
 
      b=b-1;                                    // change
      d1=d1+dx/dy;
      if (d1>=0)
      {
     a=a+1;                                // change
     d1=d1-1;
      }
 };
}
else
{
 while(a<=x2)                           // change
 {
     Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x2-x1;                                // change
    dy=y1-y2;                                // change
 
      a=a+1;                                    // change
      d1=d1+dy/dx;
      if (d1>=0)
      {
     b=b-1;                                // change
     d1=d1-1;
      }
 };
}
 
 
//вторая четверть
if (x2<x1&&y2<=y1)
if (dx<dy)
{
 while(b>=y2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x1-x2;                                // change
    dy=y1-y2;                                // change
 
      b=b-1;                                    // change
      d1=d1+dx/dy;
      if (d1>=0)
      {
     a=a-1;                                // change
     d1=d1-1;
      }
 };
}
else
{
 while(a>x2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x1-x2;                                // change
    dy=y1-y2;                                // change
 
      a=a-1;                                    // change
      d1=d1+dy/dx;
      if (d1>=0)
      {
     b=b-1;                                // change
     d1=d1-1;
      }
 };
}
 
//третья четверть
if (x2<x1&&y2>y1)
if (dx<dy)
{
 while(b<y2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x1-x2;                                // change
    dy=y2-y1;                                // change
 
      b=b+1;                                    // change
      d1=d1+dx/dy;
      if (d1>=0)
      {
     a=a-1;                                // change
     d1=d1-1;
      }
 };
}
else
{
 while(a>x2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x1-x2;                                // change
    dy=y2-y1;                                // change
 
      a=a-1;                                    // change
      d1=d1+dy/dx;
      if (d1>=0)
      {
     b=b+1;                                // change
     d1=d1-1;
      }
 };
}
 
//4 четверть
if (x2>=x1&&y2>y1)
if (dx<dy)
{
 while(b<y2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x2-x1;                                // change
    dy=y2-y1;                                // change
 
      b=b+1;                                    // change
      d1=d1+dx/dy;
      if (d1>=0)
      {
     a=a+1;                                // change
     d1=d1-1;
      }
 };
}
else
{
 while(a<x2)                           // change
 {
    Canvas->Pixels[a][b]=clBlue;
    Sleep(10);
    dx=x2-x1;                                // change
    dy=y2-y1;                                // change
 
      a=a+1;                                    // change
      d1=d1+dy/dx;
      if (d1>=0)
      {
     b=b+1;                                // change
     d1=d1-1;
      }
 };
}
 
 
 
 
// Canvas->MoveTo(x1,y1);
// Canvas->LineTo(x2,y2);
 
}
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::Edit1Change(TObject *Sender)
{
 
   x1=Edit1->Text.ToInt();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Edit2Change(TObject *Sender)
{
    y1=Edit2->Text.ToInt();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Edit3Change(TObject *Sender)
{
   x2=Edit3->Text.ToInt();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Edit4Change(TObject *Sender)
{
   y2=Edit4->Text.ToInt();
}
 
Текущее время: 21:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru