2017年度「プログラミング言語1」「プログラミング言語演習」のページ

練習問題

2017年7月7日出題
  1. 2016年4月14日出題の課題1aの各問の解答を、心の座標の計算を関数として独立させた形で書き直せ。

    • 心の座標の計算を行う関数は、それ以外の動作はいっさい行ってはならない。たとえば、入出力などを行ってはならない。
    • 下請けの関数を別に作成して使用することは、かまわない。
    1. 心の座標の計算を行う関数を以下の形式にせよ。

      struct point {
              double  x, y;
      };
      
      void
      関数名(const struct point *a, const struct point *b, const struct point *c, struct point *p);
      	    
      a->x 頂点 \(A\) の \(x\) 座標
      a->y 頂点 \(A\) の \(y\) 座標
      b->x 頂点 \(B\) の \(x\) 座標
      b->y 頂点 \(B\) の \(y\) 座標
      c->x 頂点 \(C\) の \(x\) 座標
      c->y 頂点 \(C\) の \(y\) 座標
      p->x 心の \(x\) 座標を代入
      p->y 心の \(y\) 座標を代入
    2. 心の座標の計算を行う関数を以下の形式にせよ。

      struct point {
              double  x, y;
      };
      
      void
      関数名(const struct point *a, struct point *p);
      	    
      a[0].x 頂点 \(A\) の \(x\) 座標
      a[0].y 頂点 \(A\) の \(y\) 座標
      a[1].x 頂点 \(B\) の \(x\) 座標
      a[1].y 頂点 \(B\) の \(y\) 座標
      a[2].x 頂点 \(C\) の \(x\) 座標
      a[2].y 頂点 \(C\) の \(y\) 座標
      p->x 心の \(x\) 座標を代入
      p->y 心の \(y\) 座標を代入
    3. 心の座標の計算を行う関数を以下の形式にせよ。

      struct point {
              double  x, y;
      };
      struct triangle {
              struct point    a, b, c;
      };
      
      void
      関数名(const struct triangle *t, struct point *p);
      	    
      t->a.x 頂点 \(A\) の \(x\) 座標
      t->a.y 頂点 \(A\) の \(y\) 座標
      t->b.x 頂点 \(B\) の \(x\) 座標
      t->b.y 頂点 \(B\) の \(y\) 座標
      t->c.x 頂点 \(C\) の \(x\) 座標
      t->c.y 頂点 \(C\) の \(y\) 座標
      p->x 心の \(x\) 座標を代入
      p->y 心の \(y\) 座標を代入
    4. 心の座標の計算を行う関数を以下の形式にせよ。

      struct point {
              double  x[2];
      };
      struct triangle {
              struct point    a[3];
      };
      
      void
      関数名(const struct triangle *t, struct point *p);
      	    
      t->a[0].x[0] 頂点 \(A\) の \(x\) 座標
      t->a[0].x[1] 頂点 \(A\) の \(y\) 座標
      t->a[1].x[0] 頂点 \(B\) の \(x\) 座標
      t->a[1].x[1] 頂点 \(B\) の \(y\) 座標
      t->a[2].x[0] 頂点 \(C\) の \(x\) 座標
      t->a[2].x[1] 頂点 \(C\) の \(y\) 座標
      p->x[0] 心の \(x\) 座標を代入
      p->x[1] 心の \(y\) 座標を代入

戻る
奈良女子大学生活環境学部情報衣環境学科生活情報通信科学コース