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

ООП,движение монеты подброшенной вверх - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Элементы заданного массива b(n) переписать в новый массив a(n) в обратном порядке. http://www.cyberforum.ru/cpp-beginners/thread812267.html
Помогите пожалуйста!! 2. Элементы заданного массива b(n) переписать в новый массив a(n) в обратном порядке.
C++ проверка на четность и массивы Помогите пожалуйста!! 1. Определить, является ли заданное целое число А нечетным двузначным числом. Предусмотреть проверку вводимых данных на отрицательность. http://www.cyberforum.ru/cpp-beginners/thread812244.html
Проверка поля структуры на уникальность C++
В функции добавления элемента нужно сделать проверку на уникальность по полю аудитории. void AddElement(Element *Current) { Element *New; system("CLS"); if(Current==NULL) EnterList(); else { while(Current->NEXT!=NULL) Current=Current->NEXT;
Копировать, перенести, удалить файлы в C++ C++
Здравствуйте ребята, я новичок в С++, и мне нужен ваш совет, как профессиональных программистов. Я пишу консольную программу, которая на определенном этапе переносит файлы из одной папки в другую. Данную операцию я делаю с помощью команды: Пример от балды написал файл text.txt лежащий на с:\ скопировать в c:\new\ system ("COPY c:\text.txt c:\new\");//активируем команду копирования а потом...
C++ Дана матрица размера MxN. Вывести ее элементы, расположенные в столбцах с нечетными номерами http://www.cyberforum.ru/cpp-beginners/thread812231.html
Дана матрица размера MxN. Вывести ее элементы, расположенные в столбцах с нечетными номерами (1, 3, …). Вывод элементов производить по столбцам, условный оператор не использовать. РАБОТА С ФУНКЦИЯМИ.. #include <stdio.h> #include <locale> #include <conio.h> #define MAX 10 int main (void)
C++ Цветной текст Помогите пожалуйста сделать вывод другим цветом всех чисел над диагональю в двумерном массиве int main(){ setlocale(LC_ALL,"Rus"); srand((unsigned)time(NULL)); int size, i, j; подробнее

Показать сообщение отдельно
ildar0722
0 / 0 / 0
Регистрация: 21.05.2012
Сообщений: 13
20.03.2013, 16:31  [ТС]     ООП,движение монеты подброшенной вверх
все исправил
вот код кому интересно
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
#include<graphics.h>
#include<iostream.h>
#include<math.h>
#include<dos.h>
#include<conio.h>
 
class Moneta
 {
  private:
     int X,Y;
     int R;
     double Fi;
     double D;
 
  public:
          Moneta(int,int,int,double,double);
     void PutY(int);
      int GetY();
     void PutFi(double);
     void Show();
     void Hide();
     void Slide(int);
     void Turn(double);
     void Roll(int, double);
 };
 
 
 Moneta::Moneta(int X,int Y,int R,double Fi,double D)
          {
           this->X=X;
           this->Y=Y;
           this->R=R;
           this->Fi=Fi;
           this->D=D;
          }
 
 int Moneta::GetY() {return (Y);}
 
 void Moneta::PutY(int Y) {this->Y=Y;}
 
 void Moneta::PutFi(double Fi) {this->Fi=Fi;}
 
 void Moneta::Show()
  {ellipse(X,Y,0,360,R,abs(R*sin(D)));}
 
 void Moneta::Hide()
  {
   unsigned TempColor;
   TempColor = getcolor();
   setcolor(getbkcolor());
   ellipse(X,Y,0,360,R,abs(R*sin(D)));
   setcolor(TempColor);
  }
 
 
 void Moneta::Slide(int DY)
           {
            Hide();
            PutY(Y+DY);
            Show();
           }
 
 void Moneta::Turn(double DFi)
           {
            Hide();
            D=D+DFi;
            Show();
           }
 
 void Moneta::Roll(int DY, double DFi)
           {
            Turn(DFi);
            Slide(DY);
           }
 
 int main()
  {
   int gdriver=DETECT,gmode,errorcode;
   double Dt=0.1,Dt2=Dt*Dt*0.5,v,g=7.5,Dy;
 
 
   initgraph(&gdriver,&gmode, "");
   errorcode=graphresult();
   if(errorcode!=grOk)
     {
      cout<<"Graphics error: %s"<<grapherrormsg(errorcode)<<endl;
      cout<<"Press any key to halt:"<<endl;
      getch();
      return(1);
     }
   Moneta W1(320,240,50,0,1.5);
   Moneta W2(100,420,50,0,1.5);
   Moneta W3(540,420,50,0,1.5);
   W1.Show();
   W2.Show();
   W3.Show();
   getch();
 
   v=-75;
 while(!kbhit())
 {
     v=v+g*Dt;
     Dy=v*Dt+g*Dt2;
     W1.Turn(0.1);
     W2.Slide(Dy);
     W3.Roll(Dy, 0.1);
     if(W2.GetY()>=450) v=-75;
     if(W3.GetY()>=450) v=-75;
     delay(3);
 };
  getch();
  closegraph();
  return(0);
}

Паскаль почти не знаю,не поможете ли переписать?точнее указать на ошибки
Pascal
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
{$N+}
program figures;
uses Crt,Graph;
type
 
MonetaPtr=^Moneta;
Moneta=object
private
X,Y: integer;
R: integer;
Fi: double;
D: double;
 
public
constructor Init(InitX,InitY,InitR:integer; InitFi: double);
function Get_Y: integer;
procedure PutY(NewY: integer);
procedure PutFi(NewFi: double);
procedure Show;
procedure Hide;
procedure Slide(DY: integer);
procedure Turn(DFi: double);
procedure Roll(DFi: double);
end;
 
constructor Moneta.Init(InitX,InitY,InitR: integer; InitFi: double);
begin
X:=InitX;
Y:=InitY;
R:=InitR;
Fi:=InitFi;
end;
 
function Moneta.Get_Y;
begin
Get_Y:=Y;
end;
 
procedure Moneta.PutY(NewY: integer);
begin
Y:=NewY;
end;
 
procedure Moneta.PutFi(NewFi: double);
begin
Fi:=NewFi;
end;
 
procedure Moneta.Show;
begin
ellipse(X,Y,0,360,R,abs(R*sin(D)));
end;
 
procedure Moneta.Hide;
var TempColor: word;
begin
TempColor:=GetColor;
SetColor(GetBkColor);
ellipse(X,Y,0,360,R,abs(R*sin(D)));
setColor(TempColor);
end;
 
procedure Moneta.Slide(DY: integer);
begin
Hide;
PutY(Y+DY);
Show;
end;
 
procedure Moneta.Turn(DFi: double);
begin
Hide;
D:=D+DFi;
Show;
end;
 
procedure Moneta.Roll(DY: integer,DFi: double);
{var DY: integer;}
begin
Turn(DFi);
{DX:=round(DFi*R);}
Slide(DY);
end;
 
var X,Y,gdriver,gmode,errorcode: integer;
var Dt,Dt2,v,g,Dy: double;
W1,W2,W3:Moneta;
begin
v:=-75;
g:=7.5
v:=v+g*Dt;
Dy=v*Dt+g*Dt2
clrscr;
gdriver:=detect;
gmode:=detect;
initgraph(gdriver,gmode,'');
errorcode:=GraphResult;
if not(errorcode=grOk) then
begin
writeln('Oshibka grafics');
readln;
halt(1);
end;
 
W1.Init(320,240,50,0,1.5);
W2.Init(100,420,50,0,1.5);
W3.Init(540,420,50,0,1.5);
W1.Show;
W2.Show;
W3.Show;
readln;
repeat
W1.Turn(0.1);
W2.Slide(Dy);
W3.Roll(Dy,0.1);
if W2.Get_Y>=450 then v=-75;
if W3.Get_Y>=450 then v=-75;
delay(3)
until KeyPressed;
closegraph;
end.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru