Java to C++

I have a java code that needs to work in C++

This is what the code should do:

Define a struct called "Car" with the following member variables:
 Total Odometer Miles
 Speed in miles per hour
 Driver Name
 Sponsor
 Car Number
You should also include the following functions:
 A function to make progress down the course
 A function to convert your speed from MPH to MPS
 A function to “pretty print” your car’s information including Number, Sponsor, Driver and Progress
 A function to re-randomize speed
 Include any useful functions you might need to accomplish the goal
The total odometer miles should be initialized to zero, and speed initialized to a random value between 60 and 120.
Create a list of 20 vehicles with driver and sponsor names. You should not re-use a driver name or sponsor name (note –
worry about this specification last, if you can make the race work w/o this, that’s better than getting hung up on this
algorithm)
Your main program should simulate the progress of the vehicles in the race. You should accomplish this with a loop.
Every 5 iterations of the loop (should be considered 1 minute of time), the vehicles pick a new random speed.
Every iteration through the loop their odometer miles are updated:
odometer_miles = odometer_miles + speed*time
Since speed is in miles per hour, time should be in hours as well (1 minute is 1/60th of an hour). Remember for the sake
of this assignment 1 minute = 5 loop iterations.
The first car to reach the race’s limit (100 miles is a good number) should be declared the winner by printing the driver
name and sponsor name. You should set this as a variable – consider asking the user for the value as well.


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
  import java.util.*;

import java.io.*;

import java.lang.*;

//CLASS CAR

class Car

{

//DECLARE VARIABLES

double odometer_miles;

double speed;

String DriverName;

String sponsorName;

int carNumber;

///CONSTRUCTOR

public Car(String dName,String sName,int carNo)

{

odometer_miles=0;

generateRandomSpeed();

DriverName=dName;

sponsorName=sName;

carNumber=carNo;

}

//UPDATE THE TOTAL ODOMETER MILES

public void updateOdometerMiles()

{

odometer_miles=odometer_miles+(convertSpeed());

}

//GET THE MILES RUN

public double getOdometerMiles()

{

return odometer_miles;

}

//CONVERT mph TO mps

public double convertSpeed()

{

return speed*0.44704;

}

//GENERATE RANDOM SPEED IN 60 T0 120

public void generateRandomSpeed()

{

Random r=new Random();

speed=60.00+(120.00-60.00)*r.nextDouble();

}

//OVERRIDDEN toString()

public String toString()

{

String s;

s="Car Number:"+carNumber+"\n Driver Name:"+DriverName+" \n Sponsor NAme:"+sponsorName+"\n Odometer Miles:"+odometer_miles;

return s;

}

}

public class CARRACE

{

//MAIN METHOD

public static void main(String[] args)

{

//CREATE CAR LIST TO HOLD 20 VEHICLES

Car[] carList=new Car[20];

//STRING ARRAY FOR DRIVER NAME

String[] drivers={"JK","Jerry","fermin","jude"};

String[] sponsors={"A","B","C","D","E"};

//STRING ARRAY FORSPONSORS

Random r=new Random();

for(int k1=0;k1<20;k1++)

{

//ADD VEHICLE TO THE CARLIST

carList[k1]=new Car(drivers[r.nextInt(4)],sponsors[r.nextInt(5)],k1+1);

}

boolean reached=false;

//CHECK FOR THE WINNER

while(!reached)

{

for(int k2=0;k2<20;k2++)

{

//CHECK IF ANY OF THE CAR REACHED 100 MILES IF SOPRINT THE CAR //INFORMATION THEN EXIT THE PROGRAM

if(carList[k2].getOdometerMiles()>=100)

{

reached=true;

System.out.println("The winner is:");

System.out.println(carList[k2].toString());

System.exit(0);

}

}

//GENRATE RANDOM SPEED

//UPDATE THE ODOMETER MILES

for(int k2=0;k2<20;k2++)

{

carList[k2].generateRandomSpeed();

carList[k2].updateOdometerMiles();

}

}

}//END MAIN

}//END CARRACE 
Topic archived. No new replies allowed.