#include #include #include #include using namespace std; // для упрощения переносимости явно включил все нужные файлы // более "профессиональным" было бы написать сборку проекта из нескольких файлов // (в большом проекте сборка из нескольких файлов действительно удобнее) // в представленном виде я не ожидаю никаких проблем ни у кого ни в каких компиляторах #include "fcn.cpp" #include "d87.cpp" int main() { int i,j=1,k=3,n=6; // t0 - момент начала движения // x0,y0,z0 - координаты // vx0,vy0,vz0 - скорости в момент выстрела double t=0,x0,vx0,y0,vy0,z0,vz0,tend=1800,eps=1.e-12,hmax=600,h=100,mu=3.9860044e5,Vkr,d1=0.1,d2=0.001; x0=6578.250; y0=0; z0=0; vx0=0; Vkr=sqrt(mu/x0); vy0=1.05*Vkr*cos(0.9); vz0=1.05*Vkr*cos(0.9); // Задача Коши решается в базовой точке, и ещё в четырёх точках // для вычисления смешанной производной по конечным разностям double y[n],ypp[n],ypm[n],ymp[n],ymm[n]; y[0]=x0; y[1]=y0; y[2]=z0; y[3]=vx0; y[4]=vy0; y[5]=vz0; for(i=0;i