質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

2回答

660閲覧

行列の計算結果がおかしい

gvcq1234

総合スコア1

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2020/05/31 07:33

編集2020/05/31 11:00

行列A,Bを入力3*3入力してから
Cに計算結果を代入し表示するというプログラムなのですが結果がとても大きな数値で出力されてしまします。
なにが原因なのでしょうか?
#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>
#include<math.h>
#include <time.h>
#include <stdlib.h>
int main(void) {
int i, j = 1;

/* 行列 */ int a[10][10], b[10][10]; double c[10][10]; printf("\n1つ目の行列 A を入力\n"); for (i = 0; i < 3; ++i) { scanf("\n%d %d %d", &a[i][j], &a[i][j + 1], &a[i][j + 2]); } printf("\n2つ目の行列 B を入力\n"); for (i = 0; i < 3; ++i) { scanf("\n%d %d %d", &b[i][j], &b[i][j + 1], &b[i][j + 2]); } j = 1; /* 行列の和(足し算) */ for (i = 0; i < 3; ++i) { for (j = 1; j < 3; ++j) { c[i][j] = 0; } } for (i = 0; i < 3; ++i) { for (j = 1; j < 3; ++j) { c[i][j] = a[i][j] + b[i][j]; } } j = 1; printf("\n行列 C = A + B\n"); for (i = 0; i < 3; ++i) { printf("\n%lf %lf %lf ", c[i][j], c[i][j + 1], c[i][j + 2]); } return 0;

}
追記
指摘され部分を修正しました。
イメージ説明
一応出力はされるようになったのですが→の列だけがうまく出力されなくなりました
配列で[0][1] [0][2] [0][3],[1][1] [1][2] [1][3],[2][1] [2][2] [2][3]に和を代入しているはずなのですが・・・

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

C

1 for (j = 1; j < 3; ++j) { 2 c[i][j] = a[i][j] + b[i][j]; 3 } 4} 5//この時点で、jは3になっています。 6printf("\n行列 C = A + B\n"); 7for (i = 0; i < 3; ++i) { 8 printf("\n%lf %lf %lf ", c[i][j], c[i][j + 1], c[i][j + 2]); 9//iが0のとき、、c[0][3] c[0][4] c[0][5]を表示することになっていますがそれは意図したものですか? 10}

他にも言いたいことはありますけれど。

投稿2020/05/31 07:51

thkana

総合スコア7703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gvcq1234

2020/05/31 10:53

あっ・・・・すいませんJの数値を戻すのを忘れていました・・・
guest

0

自己解決

スイマセンJ=4にしたらうまく出力されました。
ありがとうございました。

投稿2020/05/31 11:38

gvcq1234

総合スコア1

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

thkana

2020/05/31 13:00

う~ん、それで「解決」なのか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問