teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

閉じたプログラムとなるように記載を改めました。

2018/01/27 11:03

投稿

DoubutfulGuest
DoubutfulGuest

スコア6

title CHANGED
File without changes
body CHANGED
@@ -12,6 +12,12 @@
12
12
  ハンドルされない例外が 0x002148EB (プロジェクト名.exe) で発生しました: 0xC0000005: 場所 0xD2F1A974 への書き込み中にアクセス違反が発生しました。
13
13
 
14
14
  ```
15
+
16
+ #include <stdio.h>
17
+ #include <malloc.h>
18
+ #include <math.h>
19
+ #include <stdlib.h>
20
+
15
21
  double **dmatrix(int nr1, int nr2, int nl1, int nl2){
16
22
  int i, nrow, ncol;
17
23
  double **a;
@@ -33,26 +39,27 @@
33
39
  }
34
40
 
35
41
  void fnc1(){
42
+ int i, j, k;
36
-     double **M;
43
+ double **M;
37
- M=dmatrix(1,3,1,3);
44
+ M = dmatrix(1, 3, 1, 3);
38
- k = 1;
45
+ k = 1;
39
- do{
46
+ do{
40
47
  for (j = 1; j <= 3; j++){
41
48
  for (i = 1; i <= 3; i++){
42
49
  if (i == j) {
43
- M[i][j] = delta[k] / 6;
50
+ M[i][j] = 25 / 6;
44
51
  }
45
52
  else{
46
- M[i][j] = delta[k] / 12;
53
+ M[i][j] = 25 / 12;
47
54
  }
48
55
  }
49
56
  }
50
- k++;
57
+ k++;
51
- }while(k<=400)
58
+ } while (k <= 400);
52
59
  }
53
60
 
54
61
  int main(){
55
- func1();
62
+ fnc1();
56
63
  }
57
64
  ```ここに言語名を入力
58
65
  C言語

2

動的確保にかかる部分を追加しました。

2018/01/27 11:03

投稿

DoubutfulGuest
DoubutfulGuest

スコア6

title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,29 @@
12
12
  ハンドルされない例外が 0x002148EB (プロジェクト名.exe) で発生しました: 0xC0000005: 場所 0xD2F1A974 への書き込み中にアクセス違反が発生しました。
13
13
 
14
14
  ```
15
+ double **dmatrix(int nr1, int nr2, int nl1, int nl2){
16
+ int i, nrow, ncol;
15
- double M[4][4];
17
+ double **a;
18
+
19
+ nrow = nr2 - nr1 + 1;
20
+ ncol = nl2 - nl1 + 1;
21
+
22
+ if ((a = malloc(nrow*sizeof(double *))) == NULL){
23
+ printf("メモリなし(from dmatrix)\n");
24
+ exit(1);
25
+ }
26
+
27
+ a = a - nr1;
28
+
29
+ for (i = nr1; i <= nr2; i++) a[i] = malloc(ncol*sizeof(double));
30
+ for (i = nr1; i <= nr2; i++) a[i] = a[i] - nl1;
31
+
32
+ return(a);
33
+ }
34
+
35
+ void fnc1(){
36
+     double **M;
37
+ M=dmatrix(1,3,1,3);
16
38
  k = 1;
17
39
  do{
18
40
  for (j = 1; j <= 3; j++){
@@ -27,7 +49,11 @@
27
49
  }
28
50
  k++;
29
51
  }while(k<=400)
52
+ }
30
53
 
54
+ int main(){
55
+ func1();
56
+ }
31
57
  ```ここに言語名を入力
32
58
  C言語
33
59
  ```

1

forループの記載を修正しました。

2018/01/27 10:41

投稿

DoubutfulGuest
DoubutfulGuest

スコア6

title CHANGED
File without changes
body CHANGED
@@ -14,19 +14,18 @@
14
14
  ```
15
15
  double M[4][4];
16
16
  k = 1;
17
- do{
17
+ do{
18
-
19
18
  for (j = 1; j <= 3; j++){
20
19
  for (i = 1; i <= 3; i++){
21
20
  if (i == j) {
22
- M[i][j] = 25 / 6;
21
+ M[i][j] = delta[k] / 6;
23
22
  }
24
23
  else{
25
- M[i][j] = 25/ 12;
24
+ M[i][j] = delta[k] / 12;
26
25
  }
27
- printf("%p\n", &M[i][j]);
28
26
  }
27
+ }
29
- k++
28
+ k++;
30
29
  }while(k<=400)
31
30
 
32
31
  ```ここに言語名を入力