#include<iostream>
#include<fstream>
#include<string>
#include<cmath>
using namespace std;
const float G=10;
struct TiroParabolico{
float deltat;
float x;
float y;
float vx;
float vy;
float tmax;
};
int main(){
ofstream archivo;
archivo.open("tiro_parabolico.dat");
float vo,angulo;
const float PI=3.14159265358979323846;
cout<<"Ingrese la velocidad inicial (m/s):";
cin>>vo;
cout<<"Ingrese el angulo de lanzamiento (grados):";
cin>>angulo;
float angulo_rad=angulo*PI/180.0;
TiroParabolico datos;
float vox=vo*cos(angulo_rad);
float voy=vo*sin(angulo_rad);
datos.tmax=2*voy/G;
for(datos.deltat=0;datos.deltat<=datos.tmax;datos.deltat+=0.1){
datos.x=vox*datos.deltat;
datos.y=voy*datos.deltat-0.5*G*datos.deltat*datos.deltat;
datos.vx=vox;
datos.vy=voy-G*datos.deltat;
if(datos.y<0)break;
archivo<<datos.deltat<<" "<<datos.x<<" "<<datos.y<<" "<<datos.vx<<" "<<datos.vy<<endl;
}
archivo.close();
cout<<"Datos guardados en tiro_parabolico.dat"<<endl;
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGZzdHJlYW0+CiNpbmNsdWRlPHN0cmluZz4KI2luY2x1ZGU8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGZsb2F0IEc9MTA7CnN0cnVjdCBUaXJvUGFyYWJvbGljb3sKZmxvYXQgZGVsdGF0OwpmbG9hdCB4OwpmbG9hdCB5OwpmbG9hdCB2eDsKZmxvYXQgdnk7CmZsb2F0IHRtYXg7Cn07CmludCBtYWluKCl7Cm9mc3RyZWFtIGFyY2hpdm87CmFyY2hpdm8ub3BlbigidGlyb19wYXJhYm9saWNvLmRhdCIpOwpmbG9hdCB2byxhbmd1bG87CmNvbnN0IGZsb2F0IFBJPTMuMTQxNTkyNjUzNTg5NzkzMjM4NDY7CmNvdXQ8PCJJbmdyZXNlIGxhIHZlbG9jaWRhZCBpbmljaWFsIChtL3MpOiI7CmNpbj4+dm87CmNvdXQ8PCJJbmdyZXNlIGVsIGFuZ3VsbyBkZSBsYW56YW1pZW50byAoZ3JhZG9zKToiOwpjaW4+PmFuZ3VsbzsKZmxvYXQgYW5ndWxvX3JhZD1hbmd1bG8qUEkvMTgwLjA7ClRpcm9QYXJhYm9saWNvIGRhdG9zOwpmbG9hdCB2b3g9dm8qY29zKGFuZ3Vsb19yYWQpOwpmbG9hdCB2b3k9dm8qc2luKGFuZ3Vsb19yYWQpOwpkYXRvcy50bWF4PTIqdm95L0c7CmZvcihkYXRvcy5kZWx0YXQ9MDtkYXRvcy5kZWx0YXQ8PWRhdG9zLnRtYXg7ZGF0b3MuZGVsdGF0Kz0wLjEpewpkYXRvcy54PXZveCpkYXRvcy5kZWx0YXQ7CmRhdG9zLnk9dm95KmRhdG9zLmRlbHRhdC0wLjUqRypkYXRvcy5kZWx0YXQqZGF0b3MuZGVsdGF0OwpkYXRvcy52eD12b3g7CmRhdG9zLnZ5PXZveS1HKmRhdG9zLmRlbHRhdDsKaWYoZGF0b3MueTwwKWJyZWFrOwphcmNoaXZvPDxkYXRvcy5kZWx0YXQ8PCIgIjw8ZGF0b3MueDw8IiAiPDxkYXRvcy55PDwiICI8PGRhdG9zLnZ4PDwiICI8PGRhdG9zLnZ5PDxlbmRsOwp9CmFyY2hpdm8uY2xvc2UoKTsKY291dDw8IkRhdG9zIGd1YXJkYWRvcyBlbiB0aXJvX3BhcmFib2xpY28uZGF0Ijw8ZW5kbDsKcmV0dXJuIDA7Cn0=