Name: ____________________________________________________ Alpha: _____________________
Describe help received: _________________________________________________________________
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("hwdata.txt");
int n;
fin >> n;
double **D = new double*[n];
for(int i = 0; i < n; i++)
D[i] = new double[2]; // index 0 is x-coord, index 1 is y-coord
for(int i = 0; i < n; i++)
fin >> D[i][0] >> D[i][1];
double* w = new double[2];
cin >> w[0] >> w[1];
int k = search(D,n,w);
if (k == n)
cout << "No point found!" << endl;
else
cout << "Point: (" << D[k][0] << ',' << D[k][1] << ')' << endl;
}
search(D,n,w)
would return index k provided that the point
described by array element D[k] was within distance .01 of the point defined
by w. Note: We mean "Euclidean distance"
here, i.e. the distance between points (a,b) and (c,d) is
sqrt((a - c)^2 + (b - d)^2).
ints
from the
user and prints them into order so that all the odd numbers come
first (in increasing size) followed by all the even numbers
(in increasing size). For example:
~/$ ./hw
18 2 7 14 29 3 5 8 16 11
3 5 7 11 29 2 8 14 16 18
It is expected that you use selection sort (as described in
the notes), and there is a "good" way to do this, and an
"ugly hack" way to do it. Try to do it the good way!