質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

3回答

1846閲覧

指定した範囲の和を求める

pancromatic8

総合スコア10

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

1クリップ

投稿2018/12/28 15:16

バラバラの数値をランダムに足していってその合計が指定した範囲に収まるようにする方法はありますか?

例)5,3,12,8,4,21,3,11,22,9,1,2,4,18,4,3,7,9…
などの整数をランダムに足して、その和が100〜120の間になるようにする。

よろしくお願い致します

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

papinianus

2018/12/30 06:07 編集

最初から100以上120以下の乱数を求めてはだめなんですよね?その整数のリストはどのように与えられますか?例に22があります。足し算の途中結果が99であるときに、ランダムに選択した22を足すと121になります。どうすべきですか?
shinobu_osaka

2019/01/02 19:19

要求がわからないですね、 例ですと22等の指定範囲を一回で超える大きな数字がでておりますので、 上の方のような事にもなりますし、 99以下の整数かつ、最後の値は範囲内に収まるよう値を減らすして、最後に順番をランダムにする、 等と言った要件の定義が必要です。 何より「1セットだけ作りたい」のであればすでに回答がついているようにすればOKですが、 1000セット作りたいのであれば自動的に生成できるよう考えなければなりません(可能です)
guest

回答3

0

■ 気になること
・最終的にほしい情報は?
・発生させた乱数
・乱数の個数
・合計値
etc.

■ Excel関数
合計値が100以上になると合計値を表示するようにしてみました。
※120を超えないように乱数は1~20としています。

1.セル(A2)に以下の関数をコピー
=IF(A1>=100,"",IF(SUM(A$1:A1)>=100,SUM(A$1:A1),INT(RAND()*20)+1))

2.セル(A20)くらいまでオートフィルでコピー

※セル(A1)に列名などを記載したい場合は、
頭のIF(A1>=100,の個所に条件を追加してエラーにならないようにしてみてください。

以上

投稿2019/01/05 04:23

MiyakeYusuke

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ランダムで発生させた値をどのように使いたいのか分からないので、EXCELで単純に発生させる方法を答えますね。

100~120から溢れないように、ランダムで発生させる整数の範囲は1~20と過程します。

  1. A1に=INT(RAND()*20)+1と入力して、A20くらいまでコピー
  2. A1から下方向に選択範囲を増やしていって、画面右下の「合計」欄の数字が100~120に収まる範囲まで選択
  3. 選択範囲をコピーして、適当なセルに「値」として貼り付け

RAND関数は再計算が起こるたびに結果が変化するので、注意してくださいね。

投稿2019/01/02 09:07

KotorinChunChun

総合スコア73

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

  • 100以上になったら足すのを止める。
  • 120を超えたら、最後の数値から超えた分を引いた値を採用して足すのを止める

でよいかと思います。

投稿2018/12/28 22:51

can110

総合スコア38268

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問