C/C++ How Should I Modify My C++ Code to Start Time Calculation from Zero?

  • Thread starter Thread starter physics=world
  • Start date Start date
  • Tags Tags
    C++ Code
AI Thread Summary
The discussion revolves around a C++ program designed to calculate the distance and velocity of an object under the influence of gravity over a specified total time, using a defined step size. The user inputs the total time and step size, but the issue arises from the program starting calculations from the user-defined total time instead of zero. A suggestion is made to introduce a new variable, "tstep," initialized to zero, which would increment by the step size instead of decrementing the total time. This adjustment allows the program to correctly simulate the motion from zero time to the specified total time. The participants clarify that the original variable "t" should not be used for calculations but rather as a fixed input for total time. The conversation concludes with appreciation for the guidance provided.
physics=world
Messages
109
Reaction score
0
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
cout << "Enter the total time: ";
double t;
cin >> t;

cout << "Enter the step-size: ";
double step;
cin >> step;

double steps = ceil(t/step);

const double a = 9.806; // accel. due to gravity // m/(sec^2)

for (int count = 0; count <= steps; count++) {


double v = (a*t); // calculation for velocity

const double half = 0.5;
double x = (half)*(a)*(pow(t, 2)); // calculation for distance

cout << "t: " << setprecision(4) << fixed << t << "\tx: " << x << "\tv: " << v << endl;

t -= step;
}

return 0;This is the result I'm getting:

Enter the total time: 0.1
Enter the step-size: 0.01
t: 0.1000 x: 0.0490 v: 0.9806
t: 0.0900 x: 0.0397 v: 0.8825
t: 0.0800 x: 0.0314 v: 0.7845
t: 0.0700 x: 0.0240 v: 0.6864
t: 0.0600 x: 0.0177 v: 0.5884
t: 0.0500 x: 0.0123 v: 0.4903
t: 0.0400 x: 0.0078 v: 0.3922
t: 0.0300 x: 0.0044 v: 0.2942
t: 0.0200 x: 0.0020 v: 0.1961
t: 0.0100 x: 0.0005 v: 0.0981
t: 0.0000 x: 0.0000 v: 0.0000

___________________________________

What I am trying to do is to begin from zero and work my way down to 0.1000.
I still need to enter 0.1 for the total time (which is variable "t" in the code).

How would I code it in order to make it begin from zero?
 
Technology news on Phys.org
Hey physics=world.

You are setting your t as what you input. Instead what you should do is use another variable (say tstep), set it equal to zero and then instead of using t -= step you use tstep += step.

Take a look at your code again to see what's happening.
 
chiro said:
Hey physics=world.

You are setting your t as what you input. Instead what you should do is use another variable (say tstep), set it equal to zero and then instead of using t -= step you use tstep += step.

Take a look at your code again to see what's happening.

Are you saying get rid of my input "t"?
 
physics=world said:
Are you saying get rid of my input "t"?

I see what your talking about. The "t" in both equation is not suppose to be the value taken from the user.
Thanks for helping me! :)
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...

Similar threads

Back
Top