运行时停止工作
Stop working when running
我为我的大学项目编写了这段代码,但当我尝试运行它时它停止工作。任何人都可以帮助我解决问题的地方吗?我想这是指针,但我不知道它错在哪里对于 t 和 z,如果您想尝试使用 20 和 5当我输入它们时,它会停止工作而不是给我输出它应该给出 2 个.txt文件,包括一些数字
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int t;
int z;
double deltaz;
double deltat;
double beta;
double mv=0;
ofstream out1("Time-setllment.txt");
ofstream out2("isochrones.txt");
cout<<"Enter time step(>9&integer only):";
cin>>t;
cout<<endl<<"Enter height step(integer only):";
cin>>z;
cout<<endl;
double **u = new double * [z+1];
for (int i=0;i<z;i++)
u[i]=new double [t+1];
double *s = new double [t+1];
mv = (0.00000003*365*24*3600)/(2*10);
deltaz = 20/z;
deltat = 50/t;
beta = (2*deltat)/(deltaz*deltaz);
if (beta>0.5)
cout<<"Beta is more than 0.5 :|"<<endl;
else
{
for (int i=0;i<z+1;i++)
{
if (i==0 || i==z)
{
for (int j=0;j<t+1;j++)
u[i][j] = 0;
}
else
{
u[i][0]=70-3.5*(i*deltaz);
}
}
for (int j=1;j<t;j++)
{
for (int i=1;i<z;i++)
{
u[i][j] = u[i][j-1]+beta*(u[i-1][j-1]+u[i+1][j-1]-2*u[i][j-1]);
}
}
for (int j=1;j<t+1;j++)
{
double sigmau=0;
for (int i=1;i<z;i++)
{
sigmau +=u[i][j];
}
s[j]=mv*(35*20-deltaz*((u[0][j]+u[z][j])/2+sigmau));
}
out1<<"Time t Settlment n";
for (int j=1;j<t+1;j++)
{
out1<<j*deltat<<"t"<<s[j]<<"n";
}
out2<<"Depth t";
for (int j=0;j<t+1;j++)
{
out2<<"t(year)="<<j*deltat<<"t";
}
out2<<"n";
for (int i=0;i<z+1;i++)
{
out2<<i*deltaz<<"t";
for (int j=0;j<t+1;j++)
{
out2<<u[i][j]<<"t";
}
}
for (int i=0;i<z+1;i++)
delete []u[i];
delete []u;
delete []s;
}
return 0;
}
数据分配出错:
double **u = new double * [z+1];
for (int i=0;i<z;i++)
您实际上希望将其更改为:
double **u = new double * [z+1];
for (int i=0;i<z+1;i++)
相关文章:
- 程序在 Visual Studio 中停止运行时终止
- 当循环在条件C++之前停止工作时
- 给定的两个代码有什么区别.一个在 ideone 上运行时超出时间限制,另一个工作正常
- Vscode 自动格式化代码在运行几次后停止工作
- 程序 使用链表插入数据时停止工作
- 当我尝试输入时程序停止工作
- C++参数化构造函数使代码在传递大输入时停止工作
- circle.exe 在代码块中使用 graphics.h 时停止工作
- 如何使功能"run"工作。程序在调用运行时退出
- 是否有一种方法可以在运行时停止循环重复一次不止一次
- 当我的代码工作正常时,为什么在SPOJ中遇到运行时(Sigabrt)错误
- C++放置位置删除如何在内部(C++运行时)工作?如何克服其局限性?
- 该程序在执行时停止工作.我在代码块中制作了这个程序
- 运行时停止工作
- 从 WebAPI 项目运行静态类时出现 StackOverflow 异常 - 从控制台应用程序运行时工作正常
- 每当我尝试运行此代码时,断裂出现或停止工作
- 当运行程序时,它说程序.exe停止工作
- 导致运行反向字符串程序时停止工作
- cvLoadimage 在运行时停止工作
- 代码中没有错误,但是当我运行程序时,我得到“多项式.exe已停止工作”.错误