タグ付けされた質問 「ascii-art」

この課題には、テキスト文字をペイントとして使用して画像を作成または解析することが含まれます。通常、これは1963年からのASCII標準で定義された(合計128から)95の印刷可能な文字のみを使用します。

5
ASCIIアートの非交差パスを生成する
2つの整数フィールドのサイズを表す入力、所与xとy、出力フィールドを介してパス。 の出力例5, 4: # # # ### ### # フィールド全体は5 x 4で、フィールドを横切るハッシュマークで構成されるパスがあります。 パスは常に左上隅から始まり、右下に行く必要があります。プログラムを実行するたびに、パス全体をランダム化する必要があります。有効なパスはすべて、可能な出力である必要があります。 パスのルールは次のとおりです。 ハッシュマークで作られた すべてのハッシュは、他の2つのハッシュにのみ接続されます(つまり、パスはそれ自体と交差または実行されません) ハッシュ以外のスペースは他の文字で埋めることができますが、一貫している必要があります(つまり、すべてのスペース、すべてのピリオドなど)。 例: 2, 2 ## # 3, 4 ## ## # # 5, 5 ##### # # # # 6, 5 ## ### # # # ## # # # ## # ### # …

4
テッセレーションしましょう!
前書き ウィキペディアから: 平面のテッセレーションとは、タイルと呼ばれる1つ以上の幾何学的形状を使用した平面のタイル張りで、重なりや隙間はありません。 かなりよく知られているテッセレーションを以下に示します: 菱形は、重なりや隙間がないようにタイル状に並べられ、キューブの列の交換をシミュレートします。 仕事 あなたの仕事は、上記の画像と同じように菱形をテッセレーションするプログラムを書くことです。プログラムへの入力は、テッセレーションの次元になりますheight x width。ここで、幅は列の量で、高さは行の量です。 単一のキューブ1 x 1(3タイルの菱形)は、次のように正確に表されます。 _____ /\ \ / \ \ / \ _____\ \ / / \ / / \/_____ / したがって、入力/次元がの3 x 2場合、これは出力になります。 _____ /\ \ / \ \ / \ _____\ _____ \ / /\ \ \ / / \ …

7
エイヤフィヤトラヨークトルの噴火?
2010年、アイスランドのヴルカノ、エイヤフィヤトラヨークトルという簡潔な名前 が噴火し、長期計画のフライトがキャンセルされました。 これが再び発生する場合、事前に知りたいので、簡単な視覚的警告システムの構築を手伝ってください! 入力 テイクアイスランド気象庁入力(文字列)として、火山活動の警告コードを: 緑 -火山は通常の非噴火状態です。 黄色 -火山は、既知の背景レベルを超える不安の高まりの兆候を経験しています。 オレンジ -火山は噴火の可能性を高めた激しい不安を示しています。 赤 -噴火は差し迫っていると予測されており、大気中に灰がかなり放出される可能性が高い。 出力 Eyjafjallajökullの状態を示すグラフィック(ASCIIアート)アラート。 緑(エイヤフィヤトラヨークトルは休んでいます) al la j j jaf öku y l E l ------------------- 黄色(煙が出ます!) ~ ~ ~ al la j j jaf öku y l E l ------------------- オレンジ(より多くの煙!) ~ ~ ~ ~ ~ ~ al …

6
Minecraft城フラクタル
仲間のPPCGユーザーからのyoutubeビデオに触発されました... あなたが挑戦するのは、ASCIIアートを使用して、安山岩と閃緑岩のMinecraft城壁を描くことです。壁の形はカンターセットです。参照用に、カンターセットは、次のN回繰り返して作成されます。 現在のステップを3倍に 真ん中のスペースを空白に置き換えます その下に完全な行を追加します これにより、最初の4つのステップで次が作成されます。 * * * *** * * * * *** *** ********* * * * * * * * * *** *** *** *** ********* ********* *************************** ただし、あなたの挑戦はそれほど単純ではありません。ご覧のとおり、カンターセットが非常に大きくなった後、同じキャラクターを何度も繰り返し見るのは退屈になります。そのため、アスタリスク*とポンド記号を交互に重ねて表示することで、これを変更します#。3文字ごとに水平方向に、すべての行を垂直方向に交互に配置する必要があります。(もちろんスペースは同じままにします)たとえば、2番目の例は次のようになります。 * * ### 3番目の例は次のようになります。 * * * * ### ### ***###*** 完全を期すために、ここに例4と5を示します。 #4 * * * * …

15
g l f a t a n 2
時には、デカルト座標(x,y)を極座標に変換するのは本当に大変です(r,phi)。r = sqrt(x^2+y^2)非常に簡単に計算できますが、角度を計算する際にケースの区別が必要になることがよくあります。phiこれarcsinはarccos、arctanおよび他のすべての三角関数が、それぞれが円の半分のみに広がる共領域を持つためです。 多くの言語には、直交座標を極座標に変換するための組み込みatan2機能があります。または、少なくとも(x,y)角度を計算する関数がありますphi。 仕事 あなたのタスクは、2つ(浮動小数点、両方ではないゼロ)デカルト座標を取るプログラム/関数を記述することで(x,y)、対応する極角出力するphi、phiと(度、ラジアン、またはグレードでなければならないグレード Iは、平均グラジアン 1であります/ 400の完全な円)、あなたにとってより便利な方。 角度は正の方向で測定され、の角度はゼロです(1,0)。 詳細 あなたは、角度計算ビルトインを使用することはできませんphiを含む2点の座標、与えられたatan2、rect2polar、argOfComplexNumberおよび同様の機能を。ただし、通常の三角関数とその逆関数を使用できます。これらの関数は1つの引数のみを取ります。単位記号はオプションです。 半径はr非負でなければならない、とphiの範囲でなければなりません[-360°, 360°](それはあなたの出力かどうかは関係ありません270°か-90°)。 例 Input Output (1,1) 45° (0,3) 90° (-1,1) 135° (-5,0) 180° (-2,-2) 225° (0,-1.5) 270° (4,-5) 308.66°
18 code-golf  math  geometry  trigonometry  code-golf  number-theory  fibonacci  code-golf  math  sequence  fibonacci  code-golf  string  code-golf  math  graphical-output  geometry  code-golf  string  code-golf  math  geometry  code-golf  math  bitwise  number  popularity-contest  graphical-output  image-processing  fractal  code-golf  number-theory  code-golf  date  multi-threading  code-golf  math  code-golf  math  number  sequence  code-golf  math  number  sequence  arithmetic  code-golf  decision-problem  logic-gates  code-golf  decision-problem  balanced-string  code-golf  math  arithmetic  combinatorics  code-golf  expression-building  code-golf  physics  code-golf  abstract-algebra  code-golf  number  arithmetic  integer  code-golf  ascii-art  number  code-golf  number-theory  primes  code-golf  arithmetic  grid  code-golf  code-golf  sequence  code-golf  kolmogorov-complexity  compression  code-golf  math  number  arithmetic  array-manipulation  code-golf  primes  hexagonal-grid  complex-numbers  code-golf  number  counting  code-golf  math  number  arithmetic 

1
ASCIIハマンタッシェンを数えてください!
今日のプリムでは、1つの習慣として、hamantaschen(単数形:hamantasch)と呼ばれるフィリング付きの三角形のクッキーを配ります。別の習慣は、大量に飲むことです。 私は最も完璧なパン屋ではありません。...配る不規則なサイズのハマンタッシェンはたくさんありますし、配る友達もたくさんいます!クッキーの写真を送った場合、どのサイズと詰め物をいくつ持っているか教えてもらえますか?しかし、それはPurimであり、私はあまりにも多くのコードを読むにはあまりにも酔っているので、できる限り小さいコードである必要があります。 定義 サイズ ハマンタッシュのサイズは任意です。最小のハマンタッシュはサイズ1で、次のようになります。 /\ -- -- \/ 時には、複数のハマンタッシェンが重なることがあります。以下の形状は、2つのハマンタッシェンとしてカウントされます(1サイズ1、1サイズ2): /\ /\ \ ---- 一部のハマンタッシェンには詰め物があります。これは、内部のすべての空白を文字で埋めることによって示されます。サイズ1のhamantaschenには詰め物がないことに注意してください。 私たちはします名前充填およびサイズに基づいてhamantaschenを。この形式<filling> <size>を使用して、埋められていない場合- <size>は、の代わりにスペースを使用できます-が、マークダウンはそれを好みません。 以下がa . 2、a . 4、およびa - 3です。 /\ /./\ ---- /./ \ \../ /./ \ \/ -------- これらは、a @ 3、a、. 2およびa - 4です。 /\ / /\ /\ / /@@\ /..\ / /@@@@\ …

4
圧縮された曜日
曜日のリストの入力が与えられると、リストの最短のソートされた表現を出力します。 入力の形式は、2文字のストリングの一つ以上からなる文字列であるSu(日)、 Mo(月)、 Tu(など)、 、We、Th、 FrおよびSa。入力は必ずしもソートされた順序で与えられるとは限りません。 入力を出力形式に変換するには、 入力を日曜日から始まる曜日で並べ替えます(例ThMoSaSuFrTuWe-> SuMoTuWeThFrSa)。 あいまいさを残さない場合は、略語を1文字に減らします。たとえば、最初のSが土曜日になることができなかったため、にSuMoTuWeなるはずSMTWです。これにより、出力がソートされなくなります(Tと同じ)。しかし、ThFrSaなるはずThFS火曜日と木曜日の両方が金曜日前にそれを減らしてくると、TFSあいまいさを作成します。 出力がnowの場合、代わりMTWTFに出力D(「week day s」を表します)。同様に、SSなるはずE週間のために終了。最後に、 SMTWTFSなるべきAために、すべての日。 入力と出力は両方とも単一の文字列でなければなりません。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | TuThSu STT Su Su | Sa Sa WeTh WT | FrTh ThF WeTu TW …

13
アスキーアートの成形
改行を含まない単一の印刷可能なASCII文字列と、スペース()およびハッシュ(#)を含む複数行の「型」が与えられます。 文字列内の文字ごとに移動し、左から右、上から下の順に文字列の文字を使用してハッシュを置き換える必要があります。文字列が短すぎて金型を満たすことができない場合は出力を停止し、文字列が長すぎる場合は文字列を切り捨てて金型を正確に埋めます。 文字列/型の例(文字列が長すぎる、切り捨てられた): Loremipsumdolorsitamet,consecteturadipiscingelit.Namsuscipitmagnanoneratgravidacondimentum.Vestibulumnecnisllorem.Fuscemolestieviverranibh,eueleifendnislplaceratnon.Namblanditturpislacus,vitaemolestielacusimperdietquis.Nullapulvinar,exquissollicitudinfacilisis,eratnullavolutpatlectus,etluctusenimvelitegetex.Inhachabitasseplateadictumst.Donecinterdumnullalacinia,sodalesloremin,eleifendturpis.Pellentesqueanisimi.Aeneannonlobortisdiam,quisaliquetquam.Aeneanaugueipsum,imperdietsedaliquetnon,volutpategetsapien.Nullampharetranullaquispretiumornare.Aliquamfermentumvestibulummassavitaevehicula. ########################################################### ##### ############## ###### ###### ###################### ##### ## ###### # ##### ###### ######## ###### ###### # # #### #### ##### ###### ####### ###### ##### ###### ### ### ##### ###### ####### ####### ##### ###### ##### ### ########### ###### ####### ### ###### ###### ###### ### ########## ###### ##### …

4
シンプルなDNAシミュレーター
あなたのコードは、DNAの非常に単純なASCIIアート表現を永久に生成します。必要な形式の入力として2つの数字を受け取ります。リスト、関数の引数、標準入力などです。 I0.0〜1.0の秒単位の浮動小数点間隔 Z1から64までの整数としてのズームレベル コードはI、1 秒ごとにstdoutまたはそれに相当するものに1行を出力し、次のような無限出力を生成します(ズームレベル4の場合)。 A T-----a G-------c G-----c g t-----A a-------T c-----G T A-----t C-------g ... 具体的には、DNAの我々の表現は、ハイフンで接続された正弦波のペア、文字から成るものであるa、c、g、及びt、文字の他A、C、G、およびT。場合はx私たちが現在印刷している行の0から始まるインデックス番号で、小文字の波の中の文字の0ベースの位置は次式で与えられ(sin(πx / Z) + 1) * Z、そして大文字の波にで与えられ(-sin(πx / Z) + 1) * Z、両方の丸い最寄りに(床のではありません)整数。詳細: 2つの波が重なる場合は、大文字の波から始めて、どちらの波が前面にあるかを交互に切り替える必要があります。(小文字の波から始めると、存在しない二重らせんができます!) 大文字小文字を無視して、実際のDNAのように、Aは常にTとペアになり、Cは常にGとペアになります。ペア自体は、4つの可能性にわたって均一に分布するようにランダムに選択する必要があります。ペアの選択がコードの連続した実行で同じか異なるかは関係ありません。あなたのランダムな選択の統計的品質は長い出力が明らかなパターンと、少なくとも十億にピリオドがないほどの問題ではありません(のような欠陥のPRNG RANDUは罰金ですが。) 後続のスペースがないか、そのズームレベル(上記の例では9文字)ですべての行を波の最大位置までパディングする必要があります。 DNAは小さいため、コードはできるだけ短くする必要があります。 その他の例: ズームレベル8: T C-----g A-----------t C-------------g G---------------c T-------------a T-----------a T-----a c g-----C t-----------A g-------------C a---------------T …

6
椅子を調整する
チャレンジ 新しい椅子を購入しました!問題は、それを制御する方法がわからないため、プログラムを作成してそれを実行する必要があることです。 調整されていない椅子に座っている時間は長くなります。したがって、コードはできるだけ短くする必要があります。 例 5,3,2,2,1 O | | | _ | | |_|_ | | O 3,5,2,3,5 O | _ | | |__|__ | | __|__ OOOOO 2,13,1,1,13 O | _ |______|______ ______|______ OOOOOOOOOOOOO これが飛行機のように見えると思うのは私だけですか? 椅子パーツ 椅子にはさまざまなコンポーネントがあります。 O | | <- Backrest | _ <- Armrest | | |__|__ <- …

1
変身ボックス
4つのボックススタイルを定義します。 +-----+ ooooooo ^^^^^ ******* | 1 | o 2 o < 3 > * 4 * | | o o < > * * +-----+ ooooooo vvvvv ******* 整数と文字列を指定したプログラムまたは関数を作成すると、文字列内で上記のボックスのいずれかが検出され、そのスタイルがユーザーが要求したボックススタイルに変更されます。例えば: 1 This is a test document. It ********* has no *purpose* other than dem*onstrat*ion. ********* になる: This is a test …

3
私の誕生日のテーマ:炎の中で
キャンドルを灯す必要があります。実際、私は任意の量のキャンドルを灯す必要があります。しかし、良いものだけ。 目的テキストのブロック(点灯、有効、無効のろうそくを含む)とN入力としてN数値を指定し、に既に点灯しているろうそくの数を引いた値に正確に等しい量を点灯するプログラムまたは関数を作成します。Nが有効なローソク足の数よりも大きい場合、プログラムは不足している有効なローソク足の数を出力する必要があります。ローソクが存在しない場合、出力はになります:(。 有効なキャンドルは次のとおりです。 . | . . | | . \ | | | / (末尾が、.のみ、|またはバランスがとれている、必ずしも隣接\していない/、および、任意の長さにすることができます。) 無効なキャンドルは次のとおりです。 . . . . \ | | | | | | \ . | ! (アンバランス\、ローソク足なし、切断された、|キャラクター以外、地面に植えられていない。) ろうそくが点灯する.と、有効なろうそくの次の文字(任意)で置き換えられます。 @ ^ & " ~ 少なくとも1つを使用する必要があり-10%、プログラムで使用されている各キャラクターに対して、各キャラクターが点灯したろうそくに現れるようにボーナスを獲得します。🔥絵文字を使用すると、-15バイトボーナスが得られます。これは、使用されている場合、パーセンテージボーナスの前に適用されます。バイトカウントが削減されました! これはcode-golfであるため、バイト単位の最短コードが優先されます。 IOの例 input: 8, . . | . ! . …

4
Xはスポットをマークします
Xスポットをマーク あなたの目標は、首都Xの周りに十字線を追加することです: 入力/出力の例 入力: mdhyyyyyyyhhhddmmm mdyyssoo oooosyyyhhhdmm hsso oossoooooyyhhdhhdmmm yoooooo oo ssysssyhhdyyyhmmmm myso oso o oyo hhhdhhyhyhhm mm m mhsyhhys oss yyyhhhsosyhhmmmmdmmm mhyhhhy y ssyhoho o shhdmmmmdmmmm hhyyyh s oo syysyyhhdysso oyhdhhhmmmmm dhysyys sdysoXoyyyyhhso syshm mmm hhyhyo o osss y shhyyhd mmmmmm yyhyyyss o oyyyydmmdmmmmmmmmm mm ysyhyhhho s osy sdm …

11
64ビットASCIIウィービング
入力 2つの整数: 織り方を指定する0から2 ^ 64-1の範囲の負でない整数W。 1〜255の範囲の正の整数S。辺の長さを指定します。 これらは、自分に合った順序で使用できます。 出力 SによるSの要求された織りのASCII表現(Sの改行は、ストリング分離Sのオプションの末尾の改行と文字)。織りは、次のように織り番号Wによって定義されます。 Wをバイナリに変換し、8バイトに分割します。最初の(最上位)バイトは、左(最上位ビット)から右への最上行を定義します。次のバイトは次の行を定義し、8行についても同様です。織り番号は、8 x 8の正方形を定義します。正方形は、左上から必要な領域にタイル張りする必要があります。つまり、その左上隅は、カバーする領域の左上隅に対応する必要があります。 すべて0がとして表示され、|すべて1がとして表示される必要があります- 例 入力: 0 8 出力: |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| 入力: 3703872701923249305 8 出力: ||--||-- |--||--| --||--|| -||--||- ||--||-- |--||--| --||--|| -||--||- 入力: 3732582711467756595 10 出力: ||--||--|| --||--||-- --||--||-- ||--||--|| ||--||--|| --||--||-- --||--||-- ||--||--|| …

9
成長する箱のスタックを描く
タスク この課題では、あなたの仕事は、高さが増加するいくつかのスタックの箱のASCIIアート表現を描くことです。入力としてスタックの数が与えられます。これは正の整数です。最初のスタックには、サイズが1つのボックスが含まれます2x2。2番目のスタックには、サイズの2つのボックスが含まれます3x3。一般に、kthスタックにkはsizeのボックスが含まれます(k+1)x(k+1)。 各ボックスの境界線は文字を使用して描画され-|+、その内部は空白で構成されます。隣接するボックスは境界線を共有するため+、別のボックスの境界線の一部であっても、角は常にで描画する必要があります。 例 の出力1: ++ ++ の出力2: +-+ | | +-+ ++ | ++-+ の出力3: +--+ | | | | +--+ | | +-+ | | +--+ +-+ | ++ | | ++-+--+ の出力5: +----+ | | | | | | | | +----+ | | | | | …

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