C言語のことは漏れに聞け!!<41>
■ このスレッドは過去ログ倉庫に格納されています
0284デフォルトの名無しさん
NGNGvoid mult(double a[N][N], double b[N][N], double c[N][N]) {
int i, j, k;
for (i = 0; i < N; i++) for (j = 0; j < N; j++) {
a[i][j]=0.0;
for (k = 0; k < N; k++)a[i][j] += b[i][k] * c[k][j];
}
}
これを速くしようと、
void mult(double a[N][N], double b[N][N], double c[N][N]) {
int i, j, k;
for (i = 0; i < N; i++) for (j = 0; j < N; j++) {
double sum = 0.0;
for (k = 0; k < N; k++) sum += b[i][k] * c[k][j];
a[i][j] = sum;
}
}
と書き換えたら、実行結果が変わってしまったという。なぜ?
■ このスレッドは過去ログ倉庫に格納されています