转成C++代码 SUBROUTINE CHKFREENODEIIIIXNYNZNNEL0NK IMPLICIT REAL8A-HO-Z DIMENSION IIIINENKXNL0YNL0ZNL0c added by lst for feature line COMMON ETAFTLNLNNUM LNNODE1000000 LNPTNUM30
#include
void CHKFREENODE(int IIII[][], double XN[], double YN[], double ZN[], int NE, int L0, int NK) { int IDD = 0; for (int I = 0; I < L0; I++) { for (int II = 0; II < NE; II++) { for (int JJ = 0; JJ < NK; JJ++) { if (I == IIII[II][JJ]) goto label_100; } } IDD = I; goto label_200; label_100: continue; } if (IDD == 0) return; label_200: for (int JJ = IDD + 1; JJ < L0; JJ++) { XN[JJ - 1] = XN[JJ]; YN[JJ - 1] = YN[JJ]; ZN[JJ - 1] = ZN[JJ]; } for (int II = 0; II < NE; II++) { for (int JJ = 0; JJ < NK; JJ++) { if (IIII[II][JJ] > IDD) IIII[II][JJ] = IIII[II][JJ] - 1; } } int IPTNUM = 0; for (int II = 0; II < LNNUM; II++) { int LOCPTNUM = LNPTNUM[II]; for (int JJ = 0; JJ < LOCPTNUM; JJ++) { IPTNUM = IPTNUM + 1; if (LNNODE[IPTNUM] == IDD) LNNODE[IPTNUM] = 0; else if (LNNODE[IPTNUM] > IDD) LNNODE[IPTNUM] = LNNODE[IPTNUM] - 1; } } L0 = L0 - 1; goto label_800; return; label_800: IDD = 0; goto label_100; return;
原文地址: https://www.cveoy.top/t/topic/imr8 著作权归作者所有。请勿转载和采集!