問題タブ [pascals-triangle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1236 参照

java - パスカルの三角形を生成する最良の方法 (言及された 2 つの方法のうち)

Javaでプログラミングの課題があります。

nCr ( http://en.wikipedia.org/wiki/Combination ) 関数を作成し、ダブル for ループを使用して印刷して三角形を作成することで実装しました。

ただし、割り当てでは、不均一な 2 次元配列を作成し、前の行の 2 つの数値を追加してから配列を出力することで値を設定する必要があります。

要求どおりに割り当てを行う必要があることはわかっていますが、(少なくとも小さな三角形の場合は) 実装したアプローチの方が優れていると少し感じています。

より良いアプローチはどれですか?

0 投票する
2 に答える
5391 参照

c++ - パスカルの三角形の出力をC++でセンタリングする

cout.width(total_rows --current_row)を使用して、パスカルの三角形をやや三角形に出力するコードを正常に記述しましたが、次のようになります。

完全に中央に配置してほしい。下の行の1つまたは複数の文字を取得し、現在の行の文字数を減算し、これを2で割って、行ごとに必要なスペースの数を取得できることがわかりました[次のようになります:cout.width( (bottow_row_characters --current_row_characters)/ 2)]ですが、実際にこのアイデアを実装するのに問題があります。

一番下の行だけを計算して文字列または配列を格納し、string.length()またはsizeof(array)を使用してみましたが、どちらも機能しませんでした。(sizeofは常に4を返しますが、これは正しくありません)

コードは次のとおりです。

0 投票する
3 に答える
496 参照

c - ナンセンスな値を返すパスカルの三角形

これは私が以前に割り当てられた宿題プロジェクトです...私はこれまで自分で成功しました、そして私が残した唯一の問題はデータ型とオーバーフローの問題です(私は信じています)。

unsignedとdoubleに切り替えてみましたが、コードは準拠しており、ターミナルでの入力を受け入れますが、その後ハングアップするようです...何も出力されず、ループに巻き込まれているように見えます。

これがコードです...

完璧でもきれいでもありませんが、三角形の入力13(つまり、行14)まで機能します。それを超えて、私はぎこちなくなり始め、戻り値全体に負の値が散らばっています...はるかに大きな値はコードを壊し、終了エラーメッセージだけを返します。

この問題を修正する方法について何かアイデアはありますか?私は自分で何かを実際に見るために、ずっと長い間画面を見つめてきました。また、必須ではありませんが、戻り値を改行文字で区切るのではなく、1行に出力したいと思います。

1 5 10 10 5 1

計算時に値を配列にロードしてから、配列を出力するのが最も簡単な方法でしょうか。または、printステートメントを1行だけで発生させるように指示できる組み込みの方法はありますか?

0 投票する
1 に答える
942 参照

objective-c - パスカルの三角形の何が問題になっていますか?

最近、いくつかの簡単なコーディングの課題を探していて、パスカルの三角形 (ここ) について発見し、C/Objective-C で自分で生成しようとしました。それが何であるかわからない人のために、そのリンクはそれをかなりよく説明しています.

4行目以降からおかしくなり始めましたが、その理由がわかりません.

現在、5回の反復の出力は次のようになっています。

次のようになります。

これまでの私のコードは次のとおりです。最初のループは単なるリセット ループです (すべての値を 0 に設定します)。実際のロジックは、主に 2 番目のループで発生します。3 番目のループでは、値が連結され、文字列にフォーマットされます。

読みやすくするために、このコードには自分自身よりもはるかに多くのコメントを付けました。

問題はオフセットに関係している可能性があると感じていますが、修正方法がわかりません。誰かが私のコードが間違っている場所を見つけることができれば、それは素晴らしいことです.

0 投票する
1 に答える
8360 参照

pascal - ひし形のようにPASCALプログラミングでパスカルの三角形を描く

入力から取得したn個の数字からダイヤモンドのようにPASCALプログラミングでパスカルの三角形を描くにはどうすればよいですか?

編集: 私が試したこのプログラム:

しかし、gotoxy lineでエラーが発生し、ダイヤモンドである必要があります。

0 投票する
5 に答える
29096 参照

java - Pascal の三角形の 2 次元配列 - 印刷出力の書式設定

パスカルの三角形を生成するために 2 次元配列を使用する必要がある小さな課題があります。これが私のコードで、動作します。次のように三角形を表示すると、追加のクレジットの機会があります。

パスカルの三角形

ただし、私の間隔はそのようにフォーマットされていません。数字をすべて左側に並べて表示するだけです。説明するのは難しいですが、実行すると、私の意味がわかります。

これが私のコードです:

誰かが私のプログラムに正しい間隔を追加して、写真で必要な出力を生成する方法を理解するのを手伝ってくれたら、それは素晴らしいことです. 私はどこかに置く必要があることを知っていSystem.out.print(" ")ます。どこにあるのかわからないだけです。

0 投票する
2 に答える
858 参照

c# - パスカルの三角形の 100 行目で X で割り切れない桁数を求める

パスカルの三角形の 100 行目で、x で割り切れない桁数を求める必要があります。

これを見つけるために私が適用したアルゴリズムは次のとおりです。パスカルの三角形は 2 行目から 11 の累乗なので、n 行目は 11^(n-1) で求めることができ、どの桁が で割り切れないかを簡単に確認できます。バツ。

n が 99 または 100 に等しい場合、大きな数でこれを見つけるにはどうすればよいですか? これを見つけるために適用できる他のアルゴリズムはありますか?

0 投票する
2 に答える
3036 参照

c# - 多数の組み合わせの計算

パスカルの三角形の100行目の特定のエントリが3で割り切れるかどうかを計算しようとしています。これは、n =100でrが100行目の異なるエントリである式nCrを使用して計算しています。以下のコードを使用して組み合わせを計算しています

しかし、100C16などの値の場合、10進数とeを含む大きな数値が得られます。インターネットで検索したところ、実際には3で割り切れない数字が12個ありますが、私のプログラムでは、100行目で3で割り切れない63個の数字が間違っています。間違ったこと。

0 投票する
1 に答える
2097 参照

algorithm - データと一致するスコアのすべての可能な組み合わせを見つける

だから私は暇な時間に問題に取り組んでいて、立ち往生しています。ここが私がいるところです。私は 40 という数字を持っています。これはプレイヤーを表しています。他の数字 39、38、....10 が与えられました。これらは、最初の 30 人のプレーヤーのスコア (1 -30) を表しています。残りのプレーヤー (31 ~ 40) のスコアは不明です。私がやりたいことは、与えられたデータと一致するスコアの組み合わせがいくつあるかを見つけることです。

より簡単な例: 3 人のプレイヤーがいる場合。1 人のスコアは 1 です。この場合、スコアの可能な組み合わせの数は 3 (0,2; 2,0; 1,1) です。ここで、(a,b) はプレーヤー 1 とプレーヤー 2 の勝利数を表します。 、 それぞれ。(3,0) の組み合わせは機能しません。3 勝できる人はいないからです。合計 3 勝する必要があるため (0,0) も機能しません (0,0 では得られません)。

可能な合計ゲーム数を見つけました。これは、プレイされたゲームの総数、つまり、勝利の総数です。(引き分けはありません。) 最後に、プレイヤーごとの最大勝利数の変数があります (これは、プレイヤーの総数よりも 1 少ない数です。それ以上のプレイヤーは獲得できません)。

各プレイヤーに N 回の勝利を分配し、基準に合わない組み合わせを差し引いて、ユニークな組み合わせの数を見つけようとしました。たとえば、5 人に 10 回の勝利を与え、各人が 4 回を超えないようにするには、次のようにします。 C(14,4) - C(5,1)*C(9,4) + C (5,2)*C(4,4) = 381. C(14,4) は、式 C(n+k-1, k-1) から得られます (Google のバーとストリップだと思います)。次は、5 (許可されていません) のものを選択しますが、2 回減算したものを追加します。

ええ、もっと簡単な方法があるはずです。最後に、数値が非常に大きくなりすぎて、コンピューターがそれらを適切に処理できるかどうか確信が持てなくなります。1.15495183 × 10^66 である C(780, 39) について話しています。とにかく、これを行うためのより良い方法があるはずです。

要約すると、40人います。最初の 30 人のスコアは 10 ~ 39 です。最後の 10 人のスコアは不明です。基準を満たすスコアをいくつ生成できますか: すべてのスコアを合計すると、可能な勝利の合計となり、各プレイヤーは 39 勝しなくなります。

考え?

0 投票する
2 に答える
2052 参照

java - パスカルの三角形を 1 つのループで

1回のループでパスカルの三角形を書くことはできますか? 複数のループを使用して記述しましたが、正常に動作しています。