タグ付けされた質問 「language-agnostic」

このタグは、特定のプログラミング言語に依存しないプログラミングの質問に使用します。

6
JavaScript以外の他の言語では、中括弧の開始位置に違いがありますか(同じ行と次の行)?
今日、O'ReillyのJavaScriptパターンをランダムに読んでいるときに、興味深いことが1つ見つかりました(27ページを参照)。 Javascriptでは、ブレースの開始位置が異なる場合、場合によっては違いがあります。 function test_function1() { return { name: 'rajat' }; } var obj = test_function1(); alert(obj); //Shows "undefined" ながら function test_function2() { return { name: 'rajat' }; } var obj = test_function2(); alert(obj); //Shows object JSfiddleデモ 他の言語にそのような振る舞いはありますか?もしそうなら、私は確かに私の習慣を変更する必要があります.. :) 私は主にPHP、C、C ++、Java、およびルビーについて心配しています。

30
人の名前を性別にマッピングするための優れたライブラリーを知っている人はいますか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 この質問を改善する 自分の名前やニックネームに基づいて、男性か女性かを推測できるライブラリまたはデータベースを探しています。何かのようなもの john => "M", mary => "F", alex => "A", #ambiguous 英語以外の名前(日本語、インドなど)をサポートするものを探しています。 「性別や性別を想定して人を怒らせる」という別の答えを得る前に、はっきり言っておきますが、私のアプリケーションは誰とも相互作用しません。それはとにかくメールを送信したり、誰かに連絡したりすることはありません。質問するユーザーはいません。多くの場合、問題の人は死亡しており、私が持っている唯一の情報は、名前、生年月日、および死亡日です。私が個人の性別を知りたい理由は、出力の文法をより良くし、後者の可能性のある検索を支援するためです。

8
base128が使用されないのはなぜですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 昨年休業。 ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 Webでバイナリデータを送信するためにbase128ではなくbase64のみが使用されるのはなぜですか?ASCII文字セットには128文字があり、理論的にはbase 128を表すことができますが、ほとんどの場合、base128ではなくbase64のみが使用されます。


8
関数型プログラミング言語を使用するのはいつですか?
C ++、C#、Javaなどのより冗長なオブジェクト指向言語よりも関数型プログラミング言語を使用することを選択する必要があるのはどのような状況ですか? 関数型プログラミングとは何かを理解していますが、実際には理解していないのは、どのような種類の問題に対して完璧な解決策であるかということです。

4
ナップサック問題が疑似多項式であるのはなぜですか?
KnapsackDPによって解決できる一方で、それはNP完全であることを私は知っています。彼らは、DPソリューションはpseudo-polynomial「入力の長さ」(つまり、入力をエンコードするために必要なビット数)で指数関数的であるため、であると言います。残念ながら、私はそれを取得できませんでした。誰かpseudo-polynomialが私にそのことをゆっくり説明できますか?

6
グリーンフィールドおよびブラウンフィールドアプリケーションとは何ですか?
Fluent NHibernate wikiで次の文を読みました。 ...; ただし、ほとんどのグリーンフィールドアプリケーション(およびかなりの数のブラウンフィールドアプリケーション)では、自動マッピングは機能を超えています。 グリーンフィールドおよびブラウンフィールドアプリケーションとは何ですか?

4
メモリマップトファイルの利点は何ですか?
私はプロジェクトのメモリマップトファイルを調査してきましたが、以前にそれらを使用したことがあるか、使用しないことに決めた人からの考えをいただければ幸いです。その理由は何ですか。 特に、重要度の高い順に、次のことが懸念されます。 並行性 ランダムアクセス パフォーマンス 使いやすさ 移植性

12
ソースファイルにライセンスヘッダーを追加するためのツール?[閉まっている]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、StackOverflowのトピックになります。 6年前に閉鎖されました。 この質問を改善する 一部のソースファイルにライセンスヘッダーを一括で追加するツールを探しています。その一部にはすでにヘッダーがあります。ヘッダーがまだ存在しない場合、ヘッダーを挿入するツールはありますか? 編集:回答は基本的にすべて環境固有で主観的なものであるため、私は意図的にこの質問に対する回答をマークしていません

22
コードゴルフ:ピアノ
ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 挑戦 入力された音符からピアノキーボードの一部を指定された長さで出力するための文字数による最短コード。 入力は[ACDFG]#|[A-G]、キーボードの印刷を開始するメモ()と、最初のメモを含めて印刷するキーの長さを表す正の数で構成されます。 最初のキーは完全に印刷する必要があります。左に鋭いキーがある場合はカットされます。スタートキーが鋭い場合と同様に、左のキーもカットされます。 シャープキーはカウントされず、ホワイトキーのみカウントされます。 テストケース Input C 14 Output | ### ### | ### ### ### | ### ### | ### ### ### | | ### ### | ### ### ### | ### ### | ### ### ### | | ### ### | ### ### ### | ### …

30
コードゴルフ:フォーは魔法
ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 パズル 高校時代に聞いた小さなパズルはこんな感じでした... 質問者は私に彼に番号を与えるように頼みます。 数を聞くと、質問者はそれをある種の変換(たとえば、10は3と言うかもしれません)を繰り返し行い、最終的に4に到達します(この時点で4で終わるのは魔法です)。 どんな数でも、最終的には4に変換できるようです。 目標は、変換関数を理解し、このパズルを自分で確実に監督できるようにすることでした。 ソリューション 任意のステップでの変換関数は 問題の番号を取り、 ハイフンやスペース、「and」を無視して、英語の単語表現の文字数を数えます(たとえば、「ten」には3文字、「34」には10文字、「140」 20文字あります)。 その文字数を返します。 私がこれまでテストしてきたすべての数値について、これは4に収束します。「4」にも4文字が含まれているため、ここに無限ループがあります。代わりに、シーケンスを終了するために、慣例により単にマジックと呼ばれます。 挑戦 課題は、ユーザーから数値を読み取り、「フォーイズマジック」に達するまで繰り返し適用される変換関数を示す行を出力するコードを作成することです。 具体的には: ソリューションは、それ自体が完全なプログラムでなければなりません。それらは、単に数値を取り込む関数であってはなりません。 入力は標準入力から読み取る必要があります。(「エコー」からのピッピングまたは入力リダイレクトの使用は、stdinからも行われるため、問題ありません) 入力は数値形式でなければなりません。 変換関数を適用するたびに、次の行を出力する必要がありますa is b.。ここで、aとbは変換の数値の数値形式です。 フルストップ(ピリオド)が必要です! 最後の行は当然、と言う必要があり4 is magic.ます。 コードは0から99までのすべての数値に対して正しい出力を生成するはずです。 例: > 4 4 is magic. > 12 12 is 6. 6 is 3. 3 is 5. 5 is 4. 4 is …

11
複数の条件を持つifステートメントをフォーマットする最良の方法
ifステートメントをフォーマットする最良の方法である2つ以上の条件に基づいて実行するコードがある場合は、 最初の例:- if(ConditionOne && ConditionTwo && ConditionThree) { Code to execute } 2番目の例:- if(ConditionOne) { if(ConditionTwo ) { if(ConditionThree) { Code to execute } } } これは、各条件が長い関数名か何かである可能性があることを念頭に置いて理解し、読むのが最も簡単です。

6
プログラミングに理想的なキーボードレイアウト[クローズ]
クローズ。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 6年前に閉鎖されました。 この質問を改善する 簡潔にするために記号を多用するプログラミング言語、特にCおよびC ++(APLには触れません)は、Shiftキーを頻繁に使用する必要があるため、入力が難しいという苦情をよく耳にします。1、2年前、私はそれに飽きて、MicrosoftのKeyboard Layout Creatorをダウンロードし、レイアウトにいくつかの変更を加えましたが、一度も振り返ることはありませんでした。速度の違いは驚くべきものです。これらのいくつかの簡単な変更で、C ++コードを約30%速く入力できます。もちろん、それがどれほど毛深いかにもよりますが。何よりも、通常の実行中のテキストでの入力速度が損なわれることはありません。 私の質問は次のとおりです。人気を博しているプログラミング用の代替キーボードレイアウトはどれですか。それらのいずれかが現在も使用されています。個人的に変更されたレイアウトを使用していますか。また、レイアウトをさらに最適化するにはどうすればよいですか。 標準のQWERTYレイアウトに次の変更を加えました。(私はDvorakを使用していませんが、言及する価値のあるプログラマーDvorakレイアウトがあります。) 長いまたは繰り返されるリテラル番号は通常、名前付き定数に置き換えられるため、番号を一番上の行の記号と交換します。 バッククォートは多くの言語ではまれですが、デストラクタはC ++で一般的であるため、バッククォートをチルダと交換します。 アンダースコアは識別子で一般的であるため、マイナスをアンダースコアと交換します。 ブロックは下付き文字よりも一般的であるため、中括弧を角括弧と交換します。そして 文字列は文字リテラルよりも一般的であるため、二重引用符を一重引用符と交換します。 これは、一般的な縮約を入力するためにシフトを使用する必要があるため、テキストの実行を最も妨げるため、おそらく最も物議を醸すものになると思います。このレイアウトにより、C ++、C、Java、およびPerlでの入力速度が大幅に向上し、LISPおよびPythonでは多少向上しました。

6
2Dベクトルの外積の計算
ウィキペディアから: 外積は、3次元ユークリッド空間内の2つのベクトルに対する二項演算であり、2つの入力ベクトルを含む平面に垂直な別のベクトルになります。 定義が3次元(または7次元、1次元、ゼロ次元)でのみ定義されているとすると、2つの2次元ベクトルの外積をどのように計算しますか? 私は2つの実装を見てきました。1つは新しいベクトルを返し(ただし、単一のベクトルのみを受け入れます)、もう1つはスカラーを返します(ただし、2つのベクトル間の計算です)。 実装1(スカラーを返します): float CrossProduct(const Vector2D & v1, const Vector2D & v2) const { return (v1.X*v2.Y) - (v1.Y*v2.X); } 実装2(ベクトルを返します): Vector2D CrossProduct(const Vector2D & v) const { return Vector2D(v.Y, -v.X); } なぜ実装が異なるのですか?スカラー実装を何に使用しますか?ベクトル実装を何に使用しますか? 私が尋ねる理由は、私が自分でVector2Dクラスを作成していて、どのメソッドを使用するかわからないためです。

30
コードゴルフ:コラッツの推測
ロックされています。この質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答ややり取りは受け付けていません。 http://xkcd.com/710/に触発されて、ここにそのためのコードゴルフがあります。 挑戦 0より大きい正の整数を指定して、その数のヘイルストーンシーケンスを出力します。 ヘイルストーンシーケンス 詳細については、ウィキペディアを参照してください。 数が偶数の場合は、2で割ります。 数が奇数の場合は、3倍にして1つ追加します。 1に達するまで生成された数でこれを繰り返します(1の後も続く場合は、の無限ループに入ります1 -> 4 -> 2 -> 1...) 時々コードが説明する最良の方法なので、ここにウィキペディアからのいくつかがあります function collatz(n) show n if n > 1 if n is odd call collatz(3n + 1) else call collatz(n / 2) このコードは機能しますが、私は追加の課題を追加しています。プログラムはスタックオーバーフローに対して脆弱であってはなりません。したがって、反復または末尾再帰のいずれかを使用する必要があります。 また、大きな数を計算でき、言語にまだ実装されていない場合のボーナスポイント。(または、固定長整数を使用して大きな数のサポートを再実装する場合) テストケース Number: 21 Results: 21 -> 64 -> 32 -> 16 …

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