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

初等算術に関連する課題。

1
(できます)これを実現するために括弧を追加します
私はこの最近の不可解な質問を見ました: 括弧を追加してこれを実現します そして、1つの答えがPythonスクリプトを使用してすべての可能性を試すことがわかりました。 式(文字列として)と整数を指定すると、括弧を追加して式を整数にできるかどうかを判断できるプログラムを作成することが課題になります。 たとえば、式が1 + 2 * 3で整数がである場合、9に等しいの9ような括弧を追加できる(1 + 2) * 3ため、出力は真実である必要があります。ただし、式が1 + 2 - 3 * 4 / 5で整数がの9999999999999場合、括弧を追加してそれを等しくすることはできない9999999999999ため、出力は誤ったものになります。 整数の入力は正または負の場合がありますが、式には正の整数のみが含まれることに注意してください。実際、式は常に一致します(\d+ [+*/-] )+ \d(正規表現)。言い換えれば、ちょうどなし括弧、ノー指数、+、-、*と/。標準の演算子の順序(*and /、then +および-)。 その他のテストケース: 1 + 2 - 3 * 4 / 9 and -1 -> truthy, ((1 + 2) - (3 * 4)) / 9 …

3
2シンボル数学
前書き 次の事実により、4つの基本的な数学演算子(+、-、*、/)を2つに減らすことができます。 x + y = x - (-y) x * y = x / (1/y), y != 0 x * 0 = 0/x チャレンジ 課題は、以下を含む「文字列」として入力を受け取ることです。 数字 単一文字変数( "x"、 "y") 4つの基本的な数学演算子(+、-、*、/) 括弧 入力と同じ数学的な結果を生成するように操作された文字列を出力しますが、数学記号「-」と「/」のみを含みます 詳細 入力は任意の受け入れ可能な形式(ファイル、STDINなど)にすることができ、文字列または文字配列(配列の配列ではない)として表すことができます。 出力は、任意の受け入れ可能な形式(ファイル、STDINなど)にすることができ、文字列または文字配列(配列の配列ではない)として表すことができます。 括弧を認識して維持する必要があります 標準の抜け穴は許可されていません またはx + yとして表現したい場合は、あなたの選択ですx - -yx - (-y) 操作の順序を維持する必要があります 無効な入力を処理する必要はありません 入力は空でも、単一の数値/変数でもかまいません。その場合、プログラムは入力を出力する必要があります 注:あなたはしていない限り、導入に置換を使用する必要がありinput = …

8
除外可能な数値
整数を指定すると、次のプロパティを使用して10 番目の正数をN出力します。NK のI位置Pの各桁について、3番目の桁(つまり)を削除してK形成される数は、で割り切れる。KPII 例と備考 324 そのような数です: 3 割る 24 2 割る 34 4 割る 32 注1:空の数値は、など、何でも割り切れると想定しています0。したがって1、2、3、4、5、6、7、8及び9有効です。 注2:で 除算できないためK、数字を含める0ことはできません0。 入力と出力 入力を関数の引数としてSTDIN、などを介して受け取ることができます。 関数の出力はSTDOUT、などを介して返すことができます。 これらの番号は、0(どちらの場合N >= 0)または1(N > 0どちらの場合)から、どちらか適切な方からインデックスを付けることができます。 テストケース これらの例はからインデックスが作成される0ため、からインデックスを作成する場合は、列の数値に1追加1しNます。 N Output 0 1 4 5 8 9 15 77 16 88 23 155 42 742 47 1113 121 4244 144 6888 …

3
整数のペアと正の整数の間の1対1の対応
整数のペアと正の整数の間に1対1の対応があることはよく知られています。あなたのタスクは、選択したプログラミング言語で(互いに逆の関数/プログラムのペアを定義することによって)そのような対応を定義するコードを記述し、対応のバイト数が最小の正当性チェック(下記を参照)を行うことです。定義(正当性チェックを考慮しない)。 ソリューションには以下を含める必要があります。 2つの整数引数を持ち、整数を返す関数/プログラムfの定義(全単射の1方向です)。 1つの整数引数を持ち、整数のペア(配列、リスト、何かで区切られた2つの整数の連結など)を返す関数/プログラムgの定義、または2つの関数/プログラムaおよびbのいずれか整数の引数と整数を返します(それが反対方向です)。 上記で定義したfとg(またはfとa、b)について、g(f(x、y))=(x、y)(またはa(f(x、y) )= xおよびb(f(x、y))= y)整数<x、y>の場合、-100 <x <100、-100 <y <100。fおよびgは、外部の値に対して機能する必要があることに注意してください。この範囲の。 もちろん、a、b、f、gの名前を変更できます。2つのソリューションを同じ言語で記述する必要はありません。 以下は、PARI / GPでの最適ではないソリューションで、関数定義に597文字を使用しています。 plane_to_line(x,y)={ my(ax,ay,z); ax=abs(x); ay=abs(y); if((ax<=ay)*(y<0), z=4*y*y-2*y+x+2;); if((ax<=ay)*(y>=0), z=4*y*y-2*y-x+2;); if((ay<=ax)*(x<0), z=4*x*x -y+2;); if((ay<=ax)*(x>=0)*(y<0), z=4*x*x+4*x+y+2;); if((ay<=ax)*(x>=0)*(y>=0),z=4*x*x-4*x+y+2;); if((x==0)*(y==0),z=1;); return(z); } line_to_plane(z)={ my(l,d,x,y); l=floor((1+sqrt(z-1))/2); d=z-(4*l*l-4*l+2); if(d<=l,x=l;y=d;); if((l<d)*(d<=3*l),x=2*l-d;y=l;); if((3*l<d)*(d<=5*l),x=(-l);y=4*l-d;); if((5*l<d)*(d<=7*l),x=d-6*l;y=(-l);); if((7*l<d)*(d<8*l) ,x=l;y=d-8*l;); if(z==1,x=0;y=0;); return([x,y]); } と正当性チェックコード: accu=List([]) m=100; for(x=-m,m,for(y=-m,m,if(line_to_plane(plane_to_line(x,y))!=[x,y],\ …

16
平らな地球を旅する
平地の世界の座標は、緯度(x)と経度(y)で構成されます。これらは0〜9999の範囲の整数です。ガウス整数によく似ていますが、常に次の表記法を使用して記述されています。 411S 370E すなわちであり、SまたはN緯度に付加し、EまたはW2つのコンポーネント間の空間(S)と、経度に付加します。 ゴール 空白で区切られた2つの座標を読み取り、それらの合計を出力するプログラム(関数ではない)を記述します。最初の座標は開始点、2番目の座標は変位、出力は結果の位置です。 入出力 この課題は部分的にフォーマットに関するものであるため、入力形式と出力形式を明確に定義するようにします。 推奨される入力形式では、座標コンポーネント間に1つのスペースがあり、先行ゼロはなく、2つの座標間に改行文字があります。プログラムは、優先フォーマットを読み取ることができる必要があります。 出力には、任意の量の空白と先行ゼロを含めることができます。推奨される入力形式と異なる場合、プログラムはこの形式も読み取ることができる必要があります。 明確にするために、入力には追加の書式設定文字を含めることはできません(含めません)。必要なスペースと改行だけ。 得点 これは新しい勝利条件の実験です。数週間以内に回答を受け入れて、勝者を選びます。その後、より適切な回答が出た場合は、回答を変更します。 プログラムのスコアはそのバイト数です。優勝したプログラムは、400バイトより短く、バイト数が最も少ないプログラムですが、最も冗長なプログラミング言語で書かれています。勝者を決定するには: バイト数が400以上のプログラムを削除します(参加できますが、勝つことはできません)。 各プログラミング言語の最短プログラムのみを検討する 最長のプログラムの勝利 ポリグロットは、有効なすべての言語のプログラムと競合します(たとえば、プログラムが両方bashで有効である場合、sh両方の言語のプログラムと競合します)。 テストケース テストケースでは、最初の2行が入力で、3行目が出力です。 0S 0E 0S 0W 0N 0E (ゼロの方向は、入力と出力の両方で重要ではありません) 0S 9999E 9999N 9999W 9999N 0E (最大値) 42S 314W 42N 2718W 0N 3032W (ゼロの方向は出力では関係ありません) 5555N 8888W 7777S 0E 2222S 8888W (負の値はありません。符号を変更する必要がある場合は方向を変更してください) 0001N 4545W …
8 code-challenge  arithmetic  parsing  code-golf  interpreter  code-golf  random  classification  code-golf  ascii-art  code-golf  code-golf  string  number  array-manipulation  code-golf  math  rational-numbers  code-golf  internet  classification  code-golf  string  integer  code-golf  number  graphical-output  typography  king-of-the-hill  code-golf  number  sequence  palindrome  code-golf  math  code-golf  math  probability-theory  code-challenge  image-processing  test-battery  code-golf  number-theory  code-golf  tips  swift  code-golf  graphical-output  image-processing  color  code-golf  string  conversion  code-golf  string  array-manipulation  code-golf  encryption  king-of-the-hill  code-golf  string  ascii-art  code-golf  code-golf  string  compression  decision-problem  code-golf  ascii-art  number-theory  division  code-golf  ascii-art  code-golf  code-golf  number  array-manipulation  code-golf  ascii-art  code-golf  code-golf  string  code-golf  sequence  number-theory  code-golf  math  geometry  code-golf  combinatorics  code-golf  integer  code-golf  arithmetic  number-theory  code-golf  arithmetic  restricted-source  number-theory  restricted-complexity 

4
私はどのくらい酔っていますか、またいつ運転できますか?
それは週末です、そして週末にクールな人は何をしていますか?もちろん飲みます!しかし、あなたはそれほどクールではないものを知っていますか?飲むと運転。それで、あなたはあなたがどれほどの負荷がかかっているか、そしていつあなたが警官に引っ張られてあなたの免許を失うことなく再び運転することができるかを知らせるプログラムを書くことに決めました。 チャレンジ 今夜あなたが楽しんだ飲み物のリストを考えて、あなたの血中アルコール濃度と、あなたがあなたの車に飛び乗って家に帰れるまで待つ必要がある時間を計算してください。 入力 入力は、今夜あなたが飲んだ飲み物のリストになります。これは次のようになります。 4ショット酒 グラスワイン1杯 ビール2本 3杯の水 コンテナは常に複数になります。 ご覧のとおり、各エントリは次の要素で構成されています。 飲み物の種類(酒、ワイン、ビール、水) 飲み物の容器(ショット、グラス、ボトル) x> 0の整数としてそのタイプの飲み物の量x、 ドリンクの種類ごとに、一定量のアルコールが血液に追加されます。 酒-> 0.5‰/ 100 ml ビール-> 0.1‰/ 100 ml ワイン-> 0.2‰/ 100 ml 水-> -0.1‰/ 100 ml 水はあなたの血を薄くし、あなたのアルコールレベルを下げるので、水はここでは例外です(それが実際にうまくいけばとてもいいでしょう...)。 各コンテナには特定の容量があります: ショット-> 20 ml グラス-> 200 ml ボトル-> 500 ml 出力 次の2つの数値を出力する必要があります。 inのアルコールレベル 0.5‰以下になるまで待機する必要がある時間単位の時間。これにより、再び運転できます。1時間あたり0.1 loose緩みます。 ノート アルコールレベルは決してゼロを下回ることはありません。 …

30
制限付きの整数の2乗を計算する[終了]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 5年前休業。 パズル 入力されたものの2乗を返すプログラムまたは関数p(n)を記述する必要があり、入力が負でない整数であると想定する場合があります。より簡単に言えば、n 2を返します。 ルール *or /(または言語にそのような関数が含まれている場合は、POWor などのその他のべき乗演算子または平方根演算子)の使用は許可されていません。SQRT ループを使用したり、ループに類似した構造を使用したりすることはできません。ループのような構造の例はGOTO、再帰です。 例 Function p(n) Dim r() ReDim r(n) p = Len(Join(r, Space(n))) End Function 創造的であり、(ab)選択した言語で提供されている機能を使用します。 *編集 ループのような構造は、1つ以上の命令を繰り返すことができるループです - stdout "1"コードにを追加して、その出力をn回繰り返すことになってしまうと、ループとしてカウントされます。

12
可能なすべての整数を生成する
入力:あなたは2つの整数を与えている、nとk。nは正(> = 1)の整数、およびk整数は、使用を許可されている回数ですn。 出力:すべてのほとんどで使用して形成することができる非負整数の出力k n:さんは、これらの数学的演算を使用して+、-、*、/、および括弧。 編集:言語が配列/セットなどからの要素の削除をサポートしている場合、負でない整数の要件が必要です。そうでない場合は、必要ありません。 式に存在できる唯一の数値はnです(ただし何度でも)。式の値がデータストレージの最大値(intまたはlongなど)の最大値を超える場合は、それを補正する必要があります(に指定できる最大値はありませんn)。 速度は重要ではありませんが、最短のコードが優先されます! ボーナス: -50:数学演算のリストに指数を含めます。べき乗は、底がe = 2.71828ではなく、nのある式であると定義されています... -50:指定された可能な操作が整数でない場合は、床(または天井)関数を含めます。 例 > 2 2 0 1 4 > 4 3 3 4 5 12 20 64 ... (サンプル入出力には、必ずしもボーナスが含まれていません)

4
7月4日の版:特定の数の倍数を含むファイルの行を印刷する
1つのコマンドライン引数、nつまり2147483648(2 ^ 31)未満の整数をとるプログラムを作成し、ファイルinput.txtを読み取りinput.txt、正(ゼロ以外)の倍数である部分文字列を含む行を出力します。のn。2147483647より大きい倍数を無視することもできます。 テストケース input.txt含む場合 1. Delaware Dec. 7, 1787 2. Pennsylvania Dec. 12, 1787 1682 3. New Jersey Dec. 18, 1787 1660 4. Georgia Jan. 2, 1788 1733 5. Connecticut Jan. 9, 1788 1634 6. Massachusetts Feb. 6, 1788 1620 7. Maryland Apr. 28, 1788 1634 8. South Carolina …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.