---
# System prepended metadata

title: 情報処理実習 第12回 質問回答ページ

---

# 情報処理実習 第12回 質問回答ページ

書き込みしていまs

## リンク

* [repl.it](https://repl.it/~)
- [webEx]

## 質問&回答について

個別で来る質問・コメント等には答えることが出来ず，
授業時間内の質問フォームを通して質問・回答を行うという形式で統一されました．
（授業時間外の質問は，次回の授業時間内に質問フォームを通してお願いします）

授業時間ギリギリの質問に気づかないことがあります．
我々が質問に気づいていないと思われる場合は，
次回の授業時間中に再度質問を投稿してください．

### 質問内容に必ず書くこと
質問の際は，必ず下の4点を書いてください．
- どの課題に関する質問か
- わかっていること
- 試してこと 
- そのうえでわからないこと
 
「どうしたらいいか？」という質問に答えることは出来ません．
自身で原因を探って意図通りに動くようにするのが実習内容です．

殆どのエラーはググれば説明が出てきます．
わからないことが起きた時はGoogle等で検索することを推奨します．

質問の内容によっては，「もう少し自力で考えてほしい（教科書・配布資料をよく読んでほしい，試行錯誤しながら自分のコードを触ってほしい）」「回答を控える」マークを回答状況ページにつける場合があります．

「質問番号n」の形で見出しをつけます．
基本的には新しい回答ほど上位に表示されます．
回答状況ページで回答状況を確認後，
Ctrl+F，Cmd+Fで自分の質問番号をページ内検索してください．
ただし，回答状況のH列は「回答書き込み完了」ではなく「**今から回答を行います**」の印です．

質問量に依っては「重複した質問」欄の更新が止まる場合があります．
そのため，重複した質問は回答の場所を検索出来ないことがあります．
また，質問する前に必ずこのページを見て，**類似の質問がないことを確認**してからGoogleフォームで質問を投稿してください．

質問と回答の例は以下の通りです．

### 質問番号0

>hogeがhogehogeの場合，hogehogehogeはhogeですか？

<!--質問は引用の形で書いてください-->

```C: main.c
#include <stdio.h>

int main(void) {
  printf("Hello World\n");
  return 0;
}
```

<!--必要に応じてコードや，エラーメッセージを書いてください-->



XXXがYYYなのでZZZをAAAするとBBBがCCCです．
重複した質問：質問番号i, 質問番号j,質問番号k

<!--学生さんが検索しやすいように，
    「重複した質問」欄も「質問番号n」の形で
    質問番号を書いてください．-->

<!--回答の手間を省くため，回答者と「質問」「回答」の見出しは不要です-->

--- 

<!--他の教員・TAさんと回答が重複することは全く問題ありません．
    文量は多いに越したことないので，
    気にせず回答をガシガシ書いてください-->

<!--基本的にはFIFOで回答をお願いします-->

<!--新しい質問に回答した時だけでなく，
    「重複した質問」欄に質問番号を追加しただけの場合も，
    スプレッドシートの「回答者」欄にチェックを入れてください．-->

<!--同じ質問が複数の箇所で回答されていることに気づいた方は
    積極的にマージしていってください．-->

<!--回答を書き終わったタイミングではなく，
    回答に取り掛かる段階で「回答者」欄にチェックを入れてください．
    そちらの方が教員・TAにとって楽だと思います．-->

<!--古いものほど下位に表示されるよう，最新の回答を
    この下に書いてください-->
  
# 質問番号5

> move_triangle関数を作成する際に、戻り値が3つになってしまうのですが、戻り値を3つに指定する方法などはありますか？


課題3では，

> 戻り値の型: struct Triangle

と指定されています．

また，構造体Triangleはメンバとして3つのPoint構造体を持っていますので，TriangleをreturnすればOKです．

戻り値については，関数の回の講義資料をもう一度見てみてください．
　
    
# 質問番号4

> プログラムは実行されるのですが正しく計算が行われず、どこが間違っているのかが分かりません。

単純にタイプミスだと思うのですが，三角形の面積の公式とご自身のコードを再度見比べてください（公式の第2項と，あなたのコードのzに代入している式の第2項から第3項です）．


# 質問番号3

> 出力結果のエラ－コードに書かれてる意味は分かるのですがなぜそのエラーが出てしまうのかがわからないです。

```[c]
#include <stdio.h>
struct struct_A{
  int x;
  int y;
};
struct struct_B{
  struct struct_A a;
};
int main(void) {
  struct struct_B a={5,7};
  printf("A=(%d,%d)\n",a.x,b.y);
  return 0;
}
```


今日の配布資料19ページあたりを再度見てみてください．
構造体のメンバである構造体のメンバの参照方法について
Car型のプリウスの宣言や，プリウスのハンドルのウェイトの参照方法あたりが参考になるかと思います．



# 質問番号2

> A点, B点, C点の座標はscanf関数などで任意に入力させなければいけないのでしょうか？それともプログラムの時点で値を確定させれば良いのでしょうか？

こちらはどちらでも問題ありません。（私はscanfを使わずにmain関数内で構造体を初期化したプログラムを書いています）

# 質問番号1

> 前週の課題の解答例が前回の授業終了直後から公開終了になっていたため見れませんでした。再公開していただきたいです。

大変失礼しました。こちら公開しました。

