次にあげるC言語のプログラムを2回分の点数を3次元配列tensuに格納するように書きかえるというやり方が全く分かりません。どう作成すればいいのでしょうか?
include<stdio.h>
int main(void)
{
int i,j;
int tensu1[4][3]={{91,63,78},{67,72,46},{89,34,53},{32,54,34}};
int tensu2[4][3]={{97,67,82},{73,43,46},{97,56,21},{85,46,35}};
int sum[4][3];
for(i=0;i<4;i++){
for(j=0;j<3;j++)
sum[i][j]=tensu1[i][j]+tensu2[i][j];
}
puts("1回目の点数");
for(i=0;i<4;i++){
for(j=0;j<3;j++)
printf("%4d",tensu1[i][j]);
putchar('\n');
}
puts("2回目の点数");
for(i=0;i<4;i++){
for(j=0;j<3;j++)
printf("%4d",tensu2[i][j]);
putchar('\n');
}
puts("合計点");
for(i=0;i<4;i++){
for(j=0;j<3;j++)
printf("%4d",sum[i][j]);
putchar('\n');
}
return 0;
}
実行結果⤵
1回目の点数
91 63 78
67 72 46
89 34 53
32 54 34
2回目の点数
97 67 82
73 43 46
97 56 21
85 46 35
合計点
188 130 160
149 115 92
186 90 74
117 100 69
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
直接の回答ではありません。
zircon3さんが指摘された
>ちなみにプログラムソースはタブ付けをしっかりっしましょう。
>課題の問題文のプログラムソース自体が質問に書かれているようにタブ無しのベタで書かれていたのだとすると出題者の技量不足です。
>これではどこからどこまでが一つの関数で、どこからどこまでが1重目のforループで、どこからどこまでが2重目のforループなのか視覚的に理解しづらいです。つまり読み難いしミスもチェックしにくい。
の件については、質問者の責任ではありません。このサイトは、インデントされたプログラムを投稿しても連続した半角の空白を1つの空白にしてしまう為、インデント無で書かれたようになってしまいます。この現象を回避するには、
全角の空白でインデントしたプログラムを投稿する以外に方法はありません。(もちろん、それは、コンパイルエラーになりますが)
もし、全角の空白でインデントする以外方法で、きちんと、インデントされたプログラムを投稿できる方法をご存じの方がいれば、その方法を賜りたく、投稿した次第です。
No.3
- 回答日時:
No.1です。
> 授業で出された問題です。
だから何でしょう?
それだけでは何もわかりません。
お仕事ではなく学生さんだということだけです。
勉強レベルであることはご質問に書かれているプログラムの程度を見ればわかることでもありますが。(^^;
ちなみに、、、
> int tensu1[4][3]={{91,63,78},{67,72,46},{89,34,53},{32,54,34}};
> int tensu2[4][3]={{97,67,82},{73,43,46},{97,56,21},{85,46,35}};
を3次元配列にするだけなら
int tensu[2][4][3]={{{91,63,78},{67,72,46},{89,34,53},{32,54,34}},
{{97,67,82},{73,43,46},{97,56,21},{85,46,35}}};
とするだけのことでしょう。
4個の要素からなる配列の各要素がそれぞれ3個の要素からなるデータが2個あるのだから、その2個を配列にすればよいだけです。
その場合、これは「処理アルゴリズムの問題」ではなく単なる「データ表現の問題」です。プログラムとしてはtensu1とtensu2を順番に処理していたのがforループになるだけ(つまり合計3重ループになるだけ)です。
工夫点として「見出し行の出力処理」がある程度でしょう。
ちなみにプログラムソースはタブ付けをしっかりっしましょう。
課題の問題文のプログラムソース自体が質問に書かれているようにタブ無しのベタで書かれていたのだとすると出題者の技量不足です。
これではどこからどこまでが一つの関数で、どこからどこまでが1重目のforループで、どこからどこまでが2重目のforループなのか視覚的に理解しづらいです。つまり読み難いしミスもチェックしにくい。
参考まで。
No.2
- 回答日時:
1氏が言うように、質問者殿はまず「問題を理解していない」。
だから、誰かに解いてくれと丸投げしたところで、問題文を表現することができてないから、説明することすらできていない。
いわゆる、「2次元の配列を3次元にするにはどうすればよいでしょうか(泣)」と言っているだけだから、誰にも答えられない。
もしかするといまのうちに他の職を考えたほうがいいのかもしれない。
がんばれ。
No.1
- 回答日時:
ご質問に書かれているプログラムは質問者さんが作成されたものではなく出題されたものですか?
その場合、このプログラムは何のデータをどう加工しているプログラムなのか日本語で説明が有ったりプログラムコードの意味を解読されたりしていますか?
特にtensu1とtensu2という4行3列の配列の意味と、実行結果にある出力内容の意味です。
それ無しに「tensuという3次元配列を作って、、、」の処理手順の理解はあり得ないでしょう。
それが出来ればこのプログラムの処理手順を日本語で帰るはずですからそれをしましょう。フローチャートなどのチャート図でもよいです。
それが出来たらその内容を参考にして「tensuという3次元配列を作って、、、」の処理手順も日本語を使って同様に作成出来るかと思います。
ようは使用するプログラム言語に関係なく処理手順(実現方式、アルゴリズム)を日本語で書きましょうということです。
それ無しにプログラムの作成はあり得ません。
たとえそれがプログラム言語の授業での課題であったとしても。
参考まで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba listviewにおけるtextのAli...
-
指定したフォルダーを最前面表...
-
デジタルフィルタ
-
三次元のグラフを書きたいので...
-
C言語primeについて
-
初級者の質問――time_tについて
-
プログラミング、計算機科学、d...
-
プロダクションコードとは?
-
c言語のサイコロを100回振って...
-
C言語でのソケット通信のclose
-
BASIC
-
フィボナッチヒープです
-
XPathの関数「text()="value"」...
-
Arduino nano(アルドゥイーノ ...
-
プログラムのコーディングって...
-
英語を原型で表示するプログラ...
-
COMインターフェイスを用いたプ...
-
遠方界のプログラム
-
マイコンからプログラムを読み...
-
共分散行列を求めるプログラム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プロダクションコードとは?
-
マイコンからプログラムを読み...
-
vba listviewにおけるtextのAli...
-
自分のHTMLサイトでRSSを読み込...
-
指定したフォルダーを最前面表...
-
Arduino nano(アルドゥイーノ ...
-
プログラミングの問題と解答例...
-
COBOLのS9タイプからXタイプへ...
-
2値化した画像の黒い部分のピク...
-
無限ループ中にある任意のキー...
-
初級者の質問――time_tについて
-
Excel VBA じゃんけん
-
どうやってパソコンなどの凄い...
-
三次元のグラフを書きたいので...
-
VBコンソールアプリ(.NET Frame...
-
NumLockの制御について
-
世界一美しいソースコード
-
expectを使用しない対話型処理
-
Excel VBA で、データベースフ...
-
C言語→MATLABへの変換で、困っ...
おすすめ情報
授業で出された問題です。