1

関連する質問:ゲームでのトラックの貨物容量の計算

関連する質問では、3種類のトラックがありますが、より単純化して、各プレーヤーのトラック数を保持する単純な数にすることにしました。

特定の貨物に必要なトラックの数を調べる必要があります。

各トラックは50個の箱を運ぶことができます(truckCapacity

プレーヤー1には0台のトラックがあります(numberOfTrucks

移動したい貨物は10箱(cargo

私は次のことを試しました。

sum = truckCapacity / cargo
= 5

これは間違っています。10個の箱を移動する場合は1になります。10個の箱を移動するのに必要なトラックは1台だけなので、

私はもう試した

sum = truckCapacity - cargo
= 40

しかし、これは私が必要とするトラックの数を教えてくれません。

私は、関連する質問で受け入れられた答えに従って、試してみました、

current_capacity(truck) = total_capacity(truck) - loaded_crates(truck)

しかし、これは一度に1台のトラックしかロードせず、購入する必要のある追加のトラックの数はわかりません。

私が求めているのは;

私は貨物を供給し、それはその貨物を動かすのに必要なトラックの数で戻ってきます。

移動する貨物がたくさんある場合にも機能するはずです。したがって、500個のクレートを移動する場合は、10台のトラックが必要であることがわかります(トラックあたり50個のクレート*10台のトラック=500個のクレートが移動されます)

トラックにどれだけのスペースが残っているかなどは重要ではありません。

4

4 に答える 4

6

正解はすでに出ていますが、なぜそれが正しいのか、そしてあなたがすでに知っていることを踏まえて、どのように自分でそれを思い付くことができるのかをお見せしたいと思います。

あなた自身の計算では、あなたはこう言います:

トラックあたり50個の箱*10台のトラック=500個の箱が移動しました

象徴的に、これは次のようになります。

cratesPerTruck * trucks = crates

これは、容量と利用可能なトラックの数が与えられた場合、移動できる木枠の数を計算できることを意味します。

これで、トラックを解くことができます。

cratesPerTruck * trucks = crates                        -両側をで割るcratesPerTruck
cratesPerTruck / cratesPerTruck * trucks = crates / cratesPerTruck
1 * trucks = crates / cratesPerTruck
trucks = crates / cratesPerTruck

あなたの答えがあります。

直感

除算には2つの一般的な解釈があります。

  1. 分布
  2. オブジェクトを別の1に合わせる

適合:ある数が別の数に何回適合するかを自問することもできます。
たとえば、チェーンを50メートルの距離にまたがる必要がありますが、購入できるチェーンは2メートルしかありません。何本のチェーンをつなぐ必要がありますか?

50 / 2 = 25:2メートルは50メートルに25倍収まるので、25本の2メートルのチェーンが必要です。

あなたの例にフィッティングを適用する:あなたのすべてのクレートの長さが1メートルで、合計で50個あるとしましょう。第二に、あなたのすべてのトラックには、長さ10メートルの積み込みエリアがあります。荷積みエリアが互いに後ろに並んでいることを想像できるので、合計で、1つの荷積みエリアが50メートルの箱に何回収まるかを知る必要があります。

50/10 = 5トラックが必要です。

配布:10個のリンゴと5人の人がいるとします。りんごを人に配りますが、一人一人に何個応募しますか?

10/5 = 2なので、誰もが2つのリンゴを手に入れます。

例にディストリビューションを適用するのは直感的ではありません2が、機能します。
トラックに4つの木枠の容量があるとすると、スポット1、2、3、および4があります。

木枠をこれらの4つの場所に積み重ねると、得られるレベルの量は、荷物全体を輸送するために必要なトラックの数と同じになります。

スポット間で24個のクレートを配布する場合、各スポットに6個のクレートが積み重ねられます。つまり、合計6台のトラックが必要になります。

次元分析

cratesPerTruckperによって示唆されるように、比率を表します。速度と同じように、1秒間に何メートル歩くを表します。

  • トラックで分割された木枠
  • メートルを秒で割った値

この単純な単語の置換からわかるように、これらの単位は除算を表します。

トラックあたりの木枠

木枠の数をで割るとcrates divided by trucks、次のようになります。

次元分析

分数で割るのは、その逆数を掛けるのと同じです。その後[crates]、キャンセルして、を残し[trucks]ます。


脚注
1または、より良いアイデアでコメントを送ってください。

于 2012-11-09T13:26:58.217 に答える
3

分割は進むべき道ですが、あなたは間違った方向に分割しました。あなたが知っているなら、cargoそしてcargo_per_truck、そして:

trucks = cargo / cargo_per_truck

したがって、トラックあたり50クレートで500クレートを考えると、500/50=10台のトラックが必要になります。

もちろん、これによりフラクショナルトラックが得られます-10個のクレートで10/50 = 0.2トラックが必要です-したがって、常に切り上げる必要があります:

trucks = ceil(cargo / cargo_per_truck)
于 2012-11-09T12:32:26.860 に答える
3

天井(貨物/トラック容量)です。

数学とコンピュータサイエンスでは、床関数と天井関数は、実数をそれぞれ前の最大の整数または次の最小の整数にマッピングします。より正確には、floor(x)=はx以下の最大の整数であり、ceiling(x)=はx以上の最小の整数です。http://en.wikipedia.org/wiki/Floor_and_ceiling_functions

于 2012-11-09T12:32:31.493 に答える
0

あなたは使用してみることができます:

(5021/50)mod 1

ここで、5021貨物で、50容量です。あなたは貨物/容量によってあなたのトラックの量を得るでしょう。mod部分は、トラックを抽出した後に残っているものを1つずつチェックします。

この場合、この値は整数であるため、0または1を返します。整数のみが表示されます。

だからあなたが欲しいのはあなたが何かを残しているかどうかをチェックすることです。そうでない場合(modが0を返した場合)、貨物/容量= tracksNeededが必要です。 (modが1を返した)がある場合は、(貨物/容量)+1=トラックが必要です。

要するに: tracksNeeded =(貨物/容量)+(貨物/容量mod 1)

于 2012-11-09T15:37:02.463 に答える