医療事務についてを詳しく紹介中!
医療事務についてを詳しく紹介中!では、最新の医療事務についての情報や口コミなどの情報を紹介しています。
ニチイ 医療事務の通信販売
●n×n行列の掛算のC言語プログラムを、キャッシュ・ブロッキング(タイリング)...
n×n行列の掛算のC言語プログラムを、キャッシュ・ブロッキング(タイリング)を用いて作りたいんですが…n×n行列の掛算のプログラムをC言語で書きたいと思ったのですが、キャッシュ・ブロッキング(タイリング)という手法を用いて作らなければなりません。サイト等を参考に下のようなプログラムを作ったのですが結果がうまくいきません。N/2が整数でないため?mmとkkの計算ができてないんだと思うのですが、double型にすると配列の添字が整数型ではないとエラーがでます。どこを直したらうまくいくかアドバイスいただけたら嬉しいです。全然違うプログラムでもキャッシュ・ブロッキング(タイリング)を用いたものでしたら教えていただきたいです。ヨロシクお願いします。#include <stdio.h>#define N 3void gyouretu(double a[N][N],double b[N][N],double c[N][N]);int main(){ int i,j; double A[N][N],B[N][N],C[N][N]; for(i=0;i<N;i++) { for(j=0;j<N;j++) { A[i][j]=B[i][j]=i+j; C[i][j]=0.0; } } gyouretu(A,B,C); for(i=0;i<N;i++) { for(j=0;j<N;j++) { printf("%f ",C[i][j]); } printf("\¥n"); } return 0;}void gyouretu(double a[N][N],double b[N][N],double c[N][N]){ int i,j,k,mm,kk; /最内ループにおいて配列 a に対するスキャンの長さは N の半分になるため,もしこのベクトルがキャッシュに乗り切れば,内側から 2 番目のループの間,a に関しては時間的局所性が利用できる/ for(mm=0; mm<N; mm+=N/2) for(kk=0; kk<N; kk+=N/2) for(i=0; i<N/2; i++) for(j=0; j<N/2; j++) for(k=0; k<N/2; k++) c[mm+i][mm+j]+=a[mm+i][kk+k]*b[kk+k][mm+j];}実行結果5.000000 0.000000 0.0000000.000000 14.000000 0.0000000.000000 0.000000 29.000000
続き
---
自宅で仕事をする際の環境と必要なスキル
賃貸併用住宅マニュアル
モンロー研究所のヘミシンクCD!!
新iPod shuffleを徹底研究
ノエル
ブログ内検索
カレンダー
| 07 | 2026/08 | 09 |
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
最新記事
(11/08)
(02/20)
(02/17)
(02/16)
(02/12)
Links
- 投資・資産運用を始 めようと思ったら
- 保険・金融は賢く使おう !
- 投資で儲けるための使える情 報館
- 投資で稼げ!0からわかる 投資の知識
- 資産運用のためのマ ネー知識
- 知らなきゃ損する!保険・ 金融商品マメ知識!
- 保険・金融商品の知識は正し く持とう
- 投資・資産運用 解説 ブログ!
- 損をしないための保険・金 融商品!
- FX情報徹底攻略!知識とテ クニックで資産を増やせ!
- 投資系情報商材をブッタ 斬り!
- 初心者のための外国為替証拠金 取引(FX)為替相場研究所
- アルバイト・転職の総 合情報館
- 転職・アルバイト徹底攻 略サイト
- 徹底解説!転職・アルバイト 情報
- カードローン・キャッシ ング徹底研究
- 仕事と就職・転 職に必要な知識を身に付けよう
- 賢く利用するためのキャッシン グ知識