⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 trncst.cpp

📁 这是C++数值算法(第二版)的源代码,其中包含了目前一些比较常用的数值计算的算法.
💻 CPP
字号:
#include <cmath>
#include "nr.h"
using namespace std;

namespace {
	inline DP alen(const DP a, const DP b, const DP c, const DP d)
	{
		return sqrt((b-a)*(b-a)+(d-c)*(d-c));
	}
}

DP NR::trncst(Vec_I_DP &x, Vec_I_DP &y, Vec_I_INT &iorder, Vec_IO_INT &n)
{
	int j,ii;
	DP de;
	Vec_DP xx(6),yy(6);

	int ncity=x.size();
	n[3]=(n[2]+1) % ncity;
	n[4]=(n[0]+ncity-1) % ncity;
	n[5]=(n[1]+1) % ncity;
	for (j=0;j<6;j++) {
		ii=iorder[n[j]];
		xx[j]=x[ii];
		yy[j]=y[ii];
	}
	de = -alen(xx[1],xx[5],yy[1],yy[5]);
	de -= alen(xx[0],xx[4],yy[0],yy[4]);
	de -= alen(xx[2],xx[3],yy[2],yy[3]);
	de += alen(xx[0],xx[2],yy[0],yy[2]);
	de += alen(xx[1],xx[3],yy[1],yy[3]);
	de += alen(xx[4],xx[5],yy[4],yy[5]);
	return de;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -