-PR-
締切済み

C言語のプログラミングのある問題について・・・?

  • すぐに回答を!
  • 質問No.99732
  • 閲覧数427
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 0% (0/3)

 私は、ある大学に通う二年生です。実は、授業でC言語のプログラミングの授業があるのですが、includeとか、for文とか、とにかくそこに出てくる用語も全然と言っても良いぐらい分からないし、それにその科目を教えている先生から課題が出されました。
 その課題というのは、以下の問題です。誰か僕に力をください。
 お願いします。 
 問
   正の整数1から10までの範囲でパスカルの三角形を画面上に出力するプログラムを作り、さらにその三角形をもう一つ組み合わせてひし形を作り、ひし形が出力できるように補修せよ。
 (注)「使用できる配列は、1次元に限る」という条件を守って作ること。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル7

ベストアンサー率 11% (4/34)

C言語はあるていどできます。 私の頭の悪さから、問いの意味がよくわかりません。 ごめんなさい。 最終的にどう出力されれば良いのですか?    1   2 2  3 3 3 4… ってことですか?
C言語はあるていどできます。
私の頭の悪さから、問いの意味がよくわかりません。
ごめんなさい。
最終的にどう出力されれば良いのですか?
   1
  2 2
 3 3 3
4…
ってことですか?
関連するQ&A


  • 回答No.2
レベル14

ベストアンサー率 24% (612/2465)

うーん、プログラム組むのは簡単だけど、数式が理解できないや... と言う事で下記を参考にどうぞ。 あと、もう少しカテゴリを考えて質問しないと、良い答えも返ってこないよ。 ...続きを読む
うーん、プログラム組むのは簡単だけど、数式が理解できないや...
と言う事で下記を参考にどうぞ。

あと、もう少しカテゴリを考えて質問しないと、良い答えも返ってこないよ。
  • 回答No.3
レベル14

ベストアンサー率 50% (1122/2211)

> includeとか、for文とか、とにかくそこに出てくる用語も全然と言っても良いぐらい > 分からない というところへ、ソースを提示して理解が深まるのかどうか、あやしいですが、 ちょっと書いてみましたので、読んでみます? #include <iostream.h> #include <iomanip.h> #define KETA  3 ...続きを読む
> includeとか、for文とか、とにかくそこに出てくる用語も全然と言っても良いぐらい
> 分からない

というところへ、ソースを提示して理解が深まるのかどうか、あやしいですが、
ちょっと書いてみましたので、読んでみます?

#include <iostream.h>
#include <iomanip.h>

#define KETA  3

void get_pascal_triangle_line(int n, int x[])
{
  int i;
  if (n == 1) {
    x[0] = 1;
    return;
  }
  int* xx;
  xx = new int [n - 1];
  get_pascal_triangle_line(n - 1, xx);
  x[0] = xx[0];
  for (i = 1 ; i < n - 1 ; ++i)
  {
    x[i] = xx[i - 1] + xx[i];
  }
  x[n-1] = xx[n-2];
  delete [] xx;
}

void print_pascal_triangle_line(int n, int x[])
{
  int i;
  for (i = 0 ; i < n ; ++i)
  {
    cout << setw(KETA) << x[i];
  }
  cout << endl;
}

int get_max_value(int n, int x[])
{
  int i;
  int mx = x[0];
  for (i = 1; i < n ; ++i)
  {
    if (mx < x[i])
      mx = x[i];
  }
  return mx;
}

int main()
{
  int a[100];
  int n, i;
  n = 1;

  /* 10 が出てくるまでパスカルの三角形を書く */
  do
  {
    get_pascal_triangle_line(n, a);
    print_pascal_triangle_line(n, a);
  } while (get_max_value(n++, a) < 10);

  /* 下半分の三角形を書いてひし形に見せる */
  for (i = n - 2 ; i > 0 ; --i)
  {
    get_pascal_triangle_line(i, a);
    int j;
    for (j = 1 ; j < n - i ; ++j)
      cout << setw(KETA) << " ";
    print_pascal_triangle_line(i, a);
  }

  return 0;
}

ひし形が歪んでいるのと、パスカルの三角形に 10 が出て来るということを
前提に書いちゃってますけど。


私の説明する気を殺がない程度に自分で調べてみてから、分からないところが
あれば、遠慮せずに聞いてください。反応はすぐ返せないかもしれないけど、
それなりに説明をする気はあります。


# 因みに、このソースは C++ で書きましたので、このまま提出しても
# 通るとは思えません
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ