469,286 Members | 2,402 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,286 developers. It's quick & easy.

Question about delta?

Hi,
I am a little confused on something.
I am using DevC++.
I am working on a project to make a "dinosaur walk across a map".
I am not sure about the distance formula....i have no clue how to
figure delta.
I had it moving before I changed it to user input.
any help would be greatly appreciated.

I have included all my code

************************************************** ******
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
#include "windows.h"
#include "location.h"
#include "dinosaur.h"
#include "map.h"

int x = static_cast<int>(x);
int y = static_cast<int>(y);

int main()
{
int xx, yy, s;
map M;
location L1, L2;
float D;
int tempi=-1,tempj=10;
dinosaur * bronto=new dinosaur(x, y);

cout << "Please select a starting location for you dino:";
cin >x >y;
cout << endl;

cout << "Please select a starting destination for you dino:";
cin >xx >yy;
cout << endl;

cout << "Please select the speed you want the dino to move:";
cin >s;
cout << endl;

L1.setxy(x,y);
L2.setxy(xx,yy);

D=L2.distance_to(L1);
cout<<D<<endl;

cout<<endl;
D=L1.distance_to(L2);
cout<<D<<endl;
M.adddino(bronto);
int co = 0;
float xn, yn;
while(co < 20)
{
x=xn;
y=yn;
L1.setxy(x,y);
L2.setxy(xx,yy);
M.movedino(bronto,x,y);
M.display();
yn = y + (yy - y)/D);
xn = x + ((xx - x))/D);
Sleep(2000);
system("cls");
co++;
}
system("pause");
return 0;
}

************************************************** *********************
************
class map
{
public:
map();
void display();
void adddino(dinosaur * d);
void movedino(dinosaur * d, int i, int j);
private:
location * M[10][10];

};
map::map()
{
for(int i=0;i<10; i++)
for(int j=0; j<10; j++)
{M[i][j]=new location;
M[i][j]->setxy(i,j);
}
}

void map::display()
{cout<<endl<<endl<<endl;

for(int i=0;i<10; i++)
{cout<<setw(41)<<setfill('_');
cout<<'\n';
for(int j=0; j<10; j++)
{M[i][j]->display();}
cout<<"|"<<endl;
}
cout<<setw(41)<<setfill('_');
cout<<'\n';
cout<<endl<<endl;
}

void map::adddino(dinosaur * d)
{
int i, j;
char t;
i=d->getx();
j=d->gety();
t=d->gettype();
M[i][j]->settype(t);

}

void map::movedino(dinosaur * d, int i, int j)
{ int iold, jold;
char t;
iold=d->getx();
jold=d->gety();
M[iold][jold]->settype(' ');
t=d->gettype();
d->setxy(i,j);
M[i][j]->settype(t);
}
************************************************** *********************
*************************
class dinosaur
{
public:
dinosaur (int i, int j) {Curr.settype ('D');
Curr.setxy (i,j);}
void setxy(int i, int j){Curr.setxy(i,j);}
char gettype(){Curr.gettype();}
int getx () {Curr.getx();}
int gety () {Curr.gety();}
private:
location Curr;
};
************************************************** *********************
****************************
class location
{
public:
location(){xx=0; yy=0;type=' ';}
void setxy(int x, int y){xx=x; yy=y;}
void settype (char t){type=t;}
char gettype(){return type;}
float distance_to(location l);
double getx (){return xx;}
double gety(){return yy;}
void display();

private:
double xx, yy;
char type;
};
void location::display()
{
cout<<"| "<<type<<" ";

}
float location::distance_to(location l)
{
float D;
D=sqrt( pow(l.getx()-xx,2) + pow(l.gety()-yy,2) );

return D;
}

************************************************** *********************
********

Jan 30 '07 #1
3 2629
b6****@gmail.com wrote:
I am not sure about the distance formula....i have no clue how to
figure delta.
What is your C++ question?

--
Maksim A Polyanin
Jan 31 '07 #2
That was my question....this is for my C++ class that is why I was
asking here....sorry

Jan 31 '07 #3
On Jan 31, 2:50 pm, b69...@gmail.com wrote:
That was my question....this is for my C++ class that is why I was
asking here....sorry
1. Try to keep enough from the post you are replying to to keep
context.

2. You've got the wrong newsgroup for such questions, this one is for
question about the C++ language, not it's applications (though where
one ends and the other begins can sometimes be hard to tell). Take a
look in the FAQ* for suggestions where to post your question. And when
you do, you might want to consider to revise you question to better
describe the problem, like what the delta you are looking for is.

* http://www.parashift.com/c++-faq-lit...t.html#faq-5.8

--
Erik Wikström

Jan 31 '07 #4

This discussion thread is closed

Replies have been disabled for this discussion.

By using this site, you agree to our Privacy Policy and Terms of Use.