タグ付けされた質問 「division」

除算の算術演算子または整数除算を含む課題

12
Divinacciシーケンス
ディビナッチ(OEIS) フィボナッチ数列を実行しますが、代わりに次を使用します。 f(n) = f(n-1)+f(n-2) つかいます: f(n) = sum(divisors(f(n-1))) + sum(divisors(f(n-2))) の入力に対してn、n番目の項を出力するには、プログラムに1つの入力のみが必要です。 最初の14の用語(0からインデックス、1からインデックス、使用した状態): 0 | 0 # Initial | [] 1 | 1 # Initial | [1] => 1 2 | 1 # [] + [1] | [1] => 1 3 | 2 # [1] + [1] | [1,2] => …

30
入力で割り切れる最小のパリンドローム
正の整数を指定するとN、この数が回文(つまり、それ自身の逆数)であり、で割り切れるような最小の正の整数を出力しNます。 回文(つまり出力)は、回文になるために先行ゼロを必要としてはなりません。たとえば080、の有効な答えではありません16。 前の理由により、入力が10の倍数になることはありません。 実際には回答を出力するには長すぎても、プログラムには必要な時間がかかる場合があります。 入力と出力 を介して入力をSTDIN関数の引数などとして受け取ることができます。 出力をSTDOUTに印刷し、関数から返すか、類似のものを返すことができます。 入力と出力は10進数でなければなりません。 テストケース N Output 1 1 2 2 16 272 17 272 42 252 111 111 302 87278 1234 28382 得点 これはcode-golfであるため、バイト単位の最短回答が優先されます。

15
いくつかのドミノを倒す!
インスピレーションを与えてくれたこの質問に感謝します この挑戦で、私たちはのストリングとしてドミノのラインを表すでしょう|、/そして\。入力としてドミノの文字列が与えられ、落ち着いたときにどのように見えるかを決定する必要があります。ドミノが倒れる方法のルールは次のとおりです |倒れたドミノの左にある立っているドミノは、\同様に左の倒れたドミノになります。 |倒れたドミノの右側にある立っているドミノも、/同様に倒れた右のドミノになります。 倒れたドミノが左倒れ\た/ドミノと右倒れたドミノの間にある場合、立ったままになります。 これらの規則は、配置が変更されなくなるまで繰り返し適用されます。 単一の入力がその結論に到達する方法の例を次に示します |||||||\/|||||||\||\|||/||||||\||||| ||||||\\//|||||\\|\\|||//||||\\||||| |||||\\\///|||\\\\\\|||///||\\\||||| ||||\\\\////|\\\\\\\|||////\\\\||||| |||\\\\\////|\\\\\\\|||////\\\\||||| ||\\\\\\////|\\\\\\\|||////\\\\||||| |\\\\\\\////|\\\\\\\|||////\\\\||||| \\\\\\\\////|\\\\\\\|||////\\\\||||| あなたの仕事は、入力の最終結果を見つけて出力するコードを書くことです。入力は常に有効で、少なくとも2文字が含まれていると想定できます。 これはコードゴルフであるため、回答はバイト単位で記録され、バイト数は少ない方が良いでしょう。 テストケース |||/|||| -> |||///// |||\|||| -> \\\\|||| |/||||\| -> |///\\\| ||/|||\| -> ||//|\\| ||\|||/| -> \\\|||//

30
除数の積
チャレンジ 正の整数を指定すると、それ自体を含む除数の積を返します。 これは、OEISのシーケンスA007955です。 テストケース 1:1 2:2 3:3 4:8 5:5 6:36 7:7 8:64 9:27 10:100 12:1728 14:196 24:331776 25:125 28:21952 30:810000 得点 これはcode-golfなので、各言語で最短の答えが勝ちです!

21
スペースを節約するために整数を折りたたみます!
クレイジーな数学者は幅広い数のコレクションを所有しているため、彼が残したスペースはかなり限られています。いくらかを節約するために、彼は整数を折り畳まなければなりませんが、残念ながら彼は本当に怠け者です。あなたが彼を助けたいなら、あなたの仕事は、私たちの数マニアックのために与えられた正の整数を折り畳む関数/プログラムを作成することです。 整数の折り方 数字の合計で均等に割り切れる場合は、数字の合計で割ります。その要件を満たさない場合は、その桁数の合計で割ったときに残りを取ります。結果がに達するまでプロセスを繰り返します1。折り畳まれた整数は、実行する必要があった操作の数です。例を見てみましょう(たとえば1782): その桁の合計を取得します1 + 7 + 8 + 2 = 18。1782はで割り切れる18ので、次の数字は1782 / 18 = 99です。 99はで割り切れない9 + 9 = 18ため、残りを取ります:99 % 18 = 9。 9は明らかにで割り切れる9ので、それを分割して取得し1ます。 結果は3、到達するために3つの操作が必要であったからです1。 ルールと仕様 一部の整数の桁数の合計は1、10またはなど100です。あなたのプログラムはそのような場合に対処する必要はありません。つまり、入力として指定された整数の桁数の合計がに等しくないことが保証され、指定された整数を使用した1操作では、桁数の合計が得られません1(1それ自体は例外で、ターゲット")。たとえば、入力として、10または受信することはありません20。 入力はより大きい正の整数になり1ます。 デフォルトの抜け穴が適用されます。 入力を取得し、標準的な平均値で出力を提供できます。 テストケース 入力->出力 2-> 1 5-> 1 9-> 1 18-> 2 72-> 2 152790-> 2 152-> 3 666-> 3 …

30
Nの約数の合計を見つける
ユーザーが1〜Nの範囲で入力した数値(1≤N≤100)の約数の合計を画面に表示するプログラムを作成します。 これはOEIS A000203です。 例: 入力:7 7 / 1 = 7 7 / 7 = 1 7 + 1 = 8 出力: 8 入力: 15 15 / 1 = 15 15 / 3 = 5 15 / 5 = 3 15 / 15 = 1 15 + 5 + 3 + …

30
適切な除数マッシュアップ
適切な除数がある除数数のNはない、N自体。たとえば、12の適切な除数は1、2、3、4、6です。 あなたは与えられます整数 X、X ≥2、X≤1000。あなたの仕事は、2からxまでの整数のすべての最高の適切な除数を合計することです(包括的)(OEIS A280050)。 例(とx = 6): 2〜6(両端を含む)の間の整数をすべて検索します:2,3,4,5,6。 それらすべての適切な除数を取得し、各数値から最も高い除数を選択します。 2-> 1 3-> 1 4-> 1、2 5-> 1 6-> 1、2、3。 最高の固有除数を合計します1 + 1 + 2 + 1 + 3 = 8。 最終結果は8です。 テストケース 入力| 出力 ------- + --------- | 2 | 1 4 | 4 6 | 8 8 | …

12
最小素因数の合計
SF(n)は、指定された数値nに対して最小の素因数を計算する関数です。 T(N)を2 <= n <= NのすべてのSF(n)の合計と呼びます。 T(1)= 0(合計は0の被加数以上) T(2)= 2(2は最初の素数) T(3)= 5 = 2 + 3 T(4)= 7 = 2 + 3 + 2 T(5)= 12 = 2 + 3 + 2 + 5 ... T(10000)= 5786451 勝者は、自分のラップトップ(Toshiba Satellite L845、Intel Core i5、8GB RAM)で60秒で最大のT(N)を計算することに成功した人です。 Current top score: Nicolás Siplis - 3.6e13 …

19
MaxMin除数ペア(DMDP)の違い
除数について話しましょう... (しばらく)完全な二乗を除外すると、すべての正の整数は、それらの約数の2の積として表現できます。簡単な例126:ここにすべての約数があります126 ご覧のとおり、すべての除数をペアにすることができます。除数ペアと呼ぶものは次のとおりです。 [1, 126], [2, 63], [3, 42], [6, 21], [7, 18], [9, 14] このチャレンジでは、このリストの最後のペア(写真の中央のペア)のみが必要です。 [9,14]このペアをMaxMin Divisor Pairと呼びます。MaxMin除数ペア の違い (DMDP)は、のもう[9,14]=5 1つの例であるペアの2つの要素の違いです544。除数は次のとおりです。 [1、2、4、8、16、17、32、34、68、136、272、544] そしてDMDP(544)= 15 なぜなら32-17=15 何についての完璧な四角?すべての完全な正方形にはDMDP = 0があります除数の 例64を 見てみましょう {1、2、4、8、16、32、64} あなたはこのケースで見ることができるようにMAXMIN除数ペアで[8,8]持っているDMDP=0 私たちは、ほとんど行われてい... チャレンジ 整数を考えるとn>0、出力未満か等しいどのように多くの整数 10000、以下DMDPを持っています n テストケース 入力->出力 1->100 (those are all the perfect squares) 5->492 13->1201 369->6175 …

14
サムチェーンシーケンス
シーケンス: から始め1ます。 最初に、現在の1インデックスの値をシーケンス内の前の番号に追加します。 次に、この現在の値に適用する場合、次の数学演算を順番に適用します。 で割り切れ2ますか?=>追加 で割り切れ3ますか?=>減算 で割り切れ4ますか?=>(加算AND)乗算 どちらも割り切れない2、3でも4?->現在の合計結果を続行 出力: このシーケンスの最初の100個の数値を出力します。 1, 1, 21, 25, 30, 216, 223, 223, 2169, 2179, 2190, 2202, 2215, 2215, 2245, 2261, 2295, 2295, 2333, 2353, 2395, 2417, 56649, 56649, 56699, 56725, 1533033, 1533061, 1533090, 45993600, 45993631, 45993631, 1517792001, 1517792035, 1517792070, 1517792106, 1517792143, 1517792143, 1517792221, 1517792261, …

4
ASCIIアートで長い分割を視覚化する
ASCIIアートで長い除算を視覚化するプログラムを作成します。入力は、選択した入力形式を使用して、分子と分母の2つの整数で構成されます。 例: 1234÷56: 22 ---- 56|1234 112 --- 114 112 --- 2 1002012÷12: 83501 ------- 12|1002012 96 --- 42 36 -- 60 60 -- 12 12 -- 0÷35 0 - 35|0 ルール: プログラミング言語の除算演算子の使用は許可されています。 大きな整数のサポートの使用も許可されています。 一貫性のために: 商がゼロの場合、ダイビングボードの最後にゼロを1つ出力します。 余りがゼロの場合、印刷しないでください。 数字に先行ゼロを印刷しないでください。 末尾の余分な改行と右側の末尾のスペースは許可されます。 最小の文字数のソリューションが勝ちです。 制限: 0 <=分子<= 10 72 - 1 1 <=分母<= 9999999 …

22
それほど多くない数の除算
正の整数を取り込みプログラムや関数を書いてa、bそしてc、およびプリントやリターンa/bにcあなたはそのすべてを使用することができます。正の整数に* /%[追加、減算、乗算、除算、モジュレート] - +演算を使用して、小数点以下の桁数ご使用の言語では許可されていますが、浮動小数点数では許可されていません。a、b、cの範囲は、言語の符号なし整数に許可される範囲です。数値の結果は、印刷する最後の桁に切り捨てられます(そのためno round)。 これは、言語に整数型(フロートのみ)がない場合、これらの浮動小数点数を正の整数としてのみ使用して参加できることを意味します。この演習の手掛かりは、[符号なし]整数の演算+-* /%のみを使用して、浮動小数点除算の桁を見つける関数を作成することです。 例 print(1,2,1) 印刷します 0.5 print(1,2,2) 印刷します 0.50 print(13,7,27) 印刷します 1.857142857142857142857142857 print(2,3,1) 印刷します 0.6 print(4,5,7) 印刷します 0.8000000 print(4,5,1) 印刷します 0.8 print(9999,23,1) 印刷します 434.7 print(12345613,2321,89) 言語に32ビットの符号なしが含まれている場合に印刷されます 5319.09220163722533390779836277466609220163722533390779836277466609220163722533390779836277466 バイト単位の最短コードが優先されます。これがはっきりしないように見える場合は申し訳ありません...私も言語を知らない、言葉をよく覚えていません... Ideone.comまたは他の場所へのリンクを1つ用意して、特に提案とは異なる入力をテストします。

4
C(N)桁でA(N)/ B(N)を計算する
A、Bおよびの3つの数値シーケンスを考えCます。 A:f(n) = f(n-1)+f(n-2)で始まる再帰関係に基づくシーケンスf(1) = 3, f(2) = 4。したがって、シーケンスは次のように始まります。3 4 7 11 18 29 47 76 ... B:合成数、つまり素数(または1)ではないすべての整数:4 6 8 9 10 12 14 15 16 ... C:Piの数字: 3 1 4 1 5 9 2 6 5 ... 正の整数を考えるとN < 50、どちらかの関数の引数やSTDINとして、分数の小数の値を返すA(N)/B(N)とC(N)小数点以下の桁数。丸めの通常の規則が適用されます(N + 1番目の桁が5以上の場合は切り上げ)。のN桁目piがゼロの場合、整数を出力する必要があります。科学表記法/標準形式は、1000を超える数に対応しています。 これはコードゴルフであるため、バイト単位の最短回答が優先されます。 いくつかの例: N = 1: 0.750 N …

9
任意精度の除算を実装する
divide(int a, int b, int c)のベース10値を出力する関数を実装しますa/b。浮動小数点演算もBigInteger/ BigDecimalまたは同等のライブラリも一切使用しません。以下の4の(可能性のある)例外を除きc、のセット内の少なくとも正確な文字を0123456789.印刷する必要があります。 aそしてb、任意の32ビットの整数であってもよいです。更新:ゴルフの目的で、入力に問題のない64ビットプリミティブを使用する場合は、64ビット範囲のデータ全体をサポートする必要はありません。 そうでない場合は、それcが正であることを確認する必要はありません(ただし、プログラムがクラッシュしないことを願っています)。 のサポートされる最小の上限cは500です。プログラムがc上記の値をサポートしていない場合でも問題ありませんが、サポート500している場合でも問題ありません。 数値が均等に分割される場合、余分なゼロを(の値に基づいて)印刷するかc、何も印刷しないかを選択できます。 この関数を使用して商でさらにタスクを実行する必要はありません。唯一の目標は印刷です。 -1との間の数値について1は、先頭を印刷するかどうかを選択します0。ただし、これは先行ゼロの印刷が許容される唯一のシナリオであり、このようなゼロを1つだけ印刷できます。 最後の小数位には、任意の丸め/フロア/セルロジックを使用できます。 否定的な答えを得るには、先頭に-。を印刷する必要があります。これはにカウントされませんc。しかし、それはあなたが印刷したい場合はあなたの選択ではない、+または肯定的な回答のために何も。 整数除算と整数モジュラスの両方が許可されます。ただし、コードの長さに対してカウントされる独自のBigInteger/ BigDecimalライブラリを実装することを選択しない限り、プリミティブに制限されることに注意してください。 あなたが処理する必要がありませんbという0ことができますけれども、あなたがしたい場合は、。プログラムが無限ループに入るか、ifがクラッシュすると、b=0ペナルティは科せられません。 コメントごとにわずかなルール変更。競技場が水平でありa、b32ビット整数であることが保証されるようにするには、64ビット長整数を使用できます。選択した言語がプリミティブとして64ビット整数を超える場合、その機能を使用することはできません(64ビットで制限されているふりをする)。 不明な点(現在の有効な回答は変更しないでください):c印刷文字数または小数点以下のスペース数として解釈される場合がありますが、プログラムはc何らかの方法で関連する方法で使用する必要があります印刷する文字数を決定します。言い換えれば、divide(2,3,2)よりもはるかに短い出力であるべきdivide(2,3,500)です。に関係なく500文字を印刷することはできませんc。 実際、関数の名前は気にしません。dゴルフの目的には大丈夫です。 入力 関数呼び出しと読み取りの両方stdinが受け入れられます。から読み取る場合stdin、セットにない文字は[-0123456789]引数の区切り文字と見なされます。 出力 stdout上記の文字。 例 の場合divide(2,3,5)、次のすべてが許容可能な出力です。 0.666 0.667 .6666 .6667 0.666 0.667 .6666 .6667 +0.666 +0.667 +.6666 +.6667 別の例:divide(371,3,5)以下については、すべて受け入れられる出力です。 123.6 123.7 123.6 123.7 +123.6 +123.7 123.66666 123.66667 123.66666 123.66667 …

30
分割を実施する
整数除算を処理するお好みの言語で除算アルゴリズムを実装します。正数のみを処理する必要がありますが、負および混合符号除算を処理する場合のボーナスポイントもあります。結果は端数のある結果のために切り捨てられます。 プログラムが入っていて/、\、divまたは類似した演算子を。言語のネイティブの除算機能を使用しないルーチンでなければなりません。 最大32ビットの除算のみを処理する必要があります。繰り返し減算を使用することはできません。 入力 新しい行またはスペースで区切られた標準入力で2つの入力を取得します(選択) 740 2 出力 この場合、出力はになります370。 最短の解決策が勝ちます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.