質問: 一定のひもの長さをランダムに切断する方法 一定のひもをランダムに切断し、その一つのひもの長さを出したいと思っています。 例えば10000cmの長さを切断する時に、 for(i=0;i<10;i++) { printf("%d\n",getrandom(0,10000)); } で、10000の位置をランダムに特定しました。 その後一つのひもの長さを出すためにはどうすれば良いのか困っています。 出力された値の最も近い「二つの値の差」を取る方法などを考えているのですが・・・よく分かりませんでした。 またひもをランダムに切る際に、断片を一つ選びその断片をランダムに数回切断することなども出来るのでしょうか? 用いる関数、方法などがあれば教えていただきたいです。
回答: > 出力された値の最も近い「二つの値の差」を取る方法などを考えているのですが・・ そうです。ソート(並べ替え)してください。 大きい順または小さい順に並べれば隣り合う2値の差が 切断されたヒモの長さです。 > 断片を一つ選びその断片をランダムに数回切断 乱数を発生させます。その範囲を選んだヒモ(つまり2値の間)内に 制限することで 「そのヒモだけをランダムに」切断できます。