একটি ASCII পিয়ানোতে সংগীত কুইন্স


22

মানক পিয়ানো এবং 95 মুদ্রণযোগ্য আসকি অক্ষরগুলিতে 88 টি কী রয়েছে (হেক্স কোড 20 এর মাধ্যমে 7 ই):

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

('চরিত্র' এখানে থেকে যে কোনও মুদ্রণযোগ্য-এএসসিআইআই অক্ষর বোঝায়)

ইন এই JSFiddle আমি যে এর সুবিধা গ্রহণ এবং একটি সহজ সিনট্যাক্স যে ব্যবহার পিয়ানো সুর উত্পন্ন করেছি AudioSynth(যদি কেউ সত্যিকারের পিয়ানো নোট শোনার একটি লিঙ্কযোগ্য সেটে আমাকে গাইড করতে পারে তবে আমি কৃতজ্ঞ হব))

ইনপুট স্ট্রিংয়ের প্রতিটি অক্ষর () 01+-একটি পিয়ানো কী-এর সাথে মিলে যায়:

 CHARACTER:  !   "   #   $   %   &   '   *   ,   .   /   2   3   4   5   6   7   8   9   :   ;   <   =   >   ?   @   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z   [   \   ]   ^   _   `   a   b   c   d   e   f   g   h   i   j   k   l   m   n   o   p   q   r   s   t   u   v   w   x   y   z   {   |   }   ~
KEY NUMBER:  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88
      NOTE:  A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C  C#   D  D#   E   F  F#   G  G#   A  A#   B   C
    OCTAVE:  0   0   0   1   1   1   1   1   1   1   1   1   1   1   1   2   2   2   2   2   2   2   2   2   2   2   2   3   3   3   3   3   3   3   3   3   3   3   3   4   4   4   4   4   4   4   4   4   4   4   4   5   5   5   5   5   5   5   5   5   5   5   5   6   6   6   6   6   6   6   6   6   6   6   6   7   7   7   7   7   7   7   7   7   7   7   7   8

সুতরাং জেএসফিটলটিতে আপনি দেখতে পাবেন প্রিসেট টাইমিং প্যারামিটার ব্যবহার করে মেরি হ্যাড লিটল ল্যাম্বেরRPNPRRR প্রথম 7 টি নোট খেলে ।

স্পেস ( ) এমন একটি মিউজিকাল বিশ্রামের প্রতিনিধিত্ব করে যা এক নোটের ব্যবধানে স্থায়ী হয়। সুতরাং RPNPRRR PPP RUUমেরি হ্যাডের প্রথম 13 টি নোট খেলে একটি ছোট মেষশাবক তাদের যথাযথ স্থানে থাকে।

যদি এর সাথে অন্য কোনও অক্ষর 's এবং ' s (regex ) এর ()01অনুক্রম দ্বারা উপস্থাপিত হয় তবে সেই অনুক্রমটি বাইনারি সংখ্যা হিসাবে পাঠ করা হয় , এবং অক্ষরটি নিজের খ-ক অনুলিপি দ্বারা প্রতিস্থাপিত হয়। সুতরাং হয়ে যায় কারণ = 5, = 3, ইত্যাদি। ( স্ট্রিং শেষে 'গুলি এবং এর এর ক্রমটির কোনও প্রভাব নেই))01[01]+101A11 10+1-0B01CAAAAA ++-C1011101

()ম্যাচ করা বন্ধনী ( ) দুটি উদ্দেশ্যে পরিবেশন করে:

  1. যদি তাদের বিষয়বস্তু 'গুলি এবং এর ক্রমগুলির সাথে শেষ না হয় তবে সমস্ত নোট একই সময়ে বাজানো (যা অন্যথায় কোনও নোটের চেয়ে আলাদা নয়) হিসাবে চালানো হবে। সুতরাং একটি হল সি ছোটখাট জ্যা অষ্টক 4. উপর ডুপ্লিকেট নোট তাদের শব্দ এছাড়াও সদৃশ হয় উপস্থিত করে। সুতরাং এবং শব্দ ভিন্ন।01(NQU)
    (NN)(NNN)
  2. তাদের বিষয়বস্তু যদি না একটি ক্রম সঙ্গে শেষ 0's এবং 1এর যে ক্রম একটি বাইনারি সংখ্যা হিসাবে পড়া হয় , এবং প্রথম বন্ধনী এবং তাদের বিষয়বস্তু সঙ্গে প্রতিস্থাপিত হয় বিষয়বস্তু কপি। সুতরাং (NQU11)9 পৃথক নোট হয়ে: NQUNQUNQU

প্রথম বিবরণ:

  • পাখির প্রতিলিপি নির্মাণ প্রথম বন্ধনী (উদ্দেশ্য 2) জরিমানা: (N(QU10)11)(NQUQU11)NQUQUNQUQUNQUQU
  • অ-প্রতিলিপি প্রথম বন্ধনীর বাসা বাঁধাই (উদ্দেশ্য 1) ঠিক আছে তবে তার কোনও প্রভাব নেই: (A((+)C))হিসাবে একই (A+C)
  • আপনি উভয় একত্রিত করতে পারেন: ((N(QU10))11)(NQUQU)(NQUQU)(NQUQU)
  • নন-প্রতিলিপি প্রথম বন্ধনীর আগে একইরূপে পৃথক অক্ষরগুলির পুনরাবৃত্তি করার আগে 0'গুলি এবং এর একটি ক্রম 1। তাই 10(NQU)হয়ে যায় (NQU)(NQU)
  • প্রথম বন্ধনীর প্রতিলিপি দেওয়ার আগে 0'গুলি এবং এর ক্রমটির 1কোনও প্রভাব নেই।
  • (সর্বদা একটি মিল থাকতে হবে )তবে তদ্বিপরীত নয়: যেমন N)বৈধ।

প্লাস ( +) এবং বিয়োগ ( -) যথাক্রমে নোটগুলির সময়কাল বা নোটগুলির মধ্যে সময় ব্যবধান বৃদ্ধি এবং হ্রাস করে, যা তাদের প্রসঙ্গের উপর নির্ভর করে:

  • যখন ভিতরে অ প্রতিলিপি নির্মাণ প্রথম বন্ধনী, তারা অবিলম্বে বৃদ্ধি অথবা মিলিসেকেন্ড (দেখুন কিছু প্রিসেট সংখ্যা দ্বারা নোট সময়কাল পরিবর্তনশীল হ্রাস JSFiddle )। তাই স্বাভাবিকের চেয়ে দীর্ঘ সময় ধরে (++)Nখেলবে N
  • যখন বাহিরে অ প্রতিলিপি নির্মাণ প্রথম বন্ধনী, তারা বৃদ্ধি অথবা মিলিসেকেন্ড কিছু প্রিসেট সংখ্যা দ্বারা এটা (এবং প্রতিটি পরবর্তী ব্যবধান) পর পরবর্তী নোট শুরু ও নোট মধ্যে ব্যবধান হ্রাস। সুতরাং ++NPমধ্যবর্তী ব্যবধানে Nএবং Pস্বাভাবিকের চেয়ে দীর্ঘ হয়।

নোটগুলির সময়কাল এবং তাদের মধ্যে সময়ের ব্যবধান 0 এর নিচে নামতে পারে না।

চ্যালেঞ্জ

আমি ইচ্ছাকৃতভাবে () 01+-7 টি বিশেষ চরিত্র হিসাবে বেছে নিয়েছি কারণ এগুলি নিরঙ্কুশভাবে প্রচুর প্রোগ্রামিং ভাষায় অনেক প্রসঙ্গে থাকতে পারে।

আপনার টাস্কটি 512 বাইট বা তারও কম কুইনে লিখন লিখুন যা কোডটি নিজেই জেএসফিডেলে ইনপুট স্ট্রিং হিসাবে ব্যবহার করা হলে সবচেয়ে ভাল শোনার সুর তৈরি করে ।

আপনি 4 অন্তর / সময়কাল প্যারামিটারের জন্য কোনও প্রাথমিক মান (অ-নেতিবাচক পূর্ণসংখ্যক) চয়ন করতে পারেন, তবে আপনার টিউনটি 10 ​​মিনিটের বেশি স্থায়ী হবে না। আপনার সুরটি কোনও নির্দিষ্ট উপকরণে সেরা শোনাচ্ছে কিনা তাও আমাদের জানান।

বিধি

  • আপনার কোডে কেবলমাত্র ট্যাব, নিউলাইন এবং মুদ্রণযোগ্য-এএসসিআইআই অনুমোদিত allowed সমস্ত মুদ্রণযোগ্য এএসসিআইআই টিউন নির্মাতা দ্বারা উপেক্ষা করা হবে।
  • আউটপুট কোনও ফাইল বা স্টডআউট বা নিকটতম বিকল্পে যেতে পারে (যেমন জেএস সতর্কতা)। কোনও ইনপুট নেই।
  • সোর্স কোডের কোনও পঠন নেই। এটি একটি সত্য কুইন হতে হবে।
  • যে কোনও 3 টি সংঘবদ্ধ উত্স অক্ষর অপসারণের ফলে প্রোগ্রামটিকে আর কোয়াইন হিসাবে কাজ করতে হবে না। এটি স্ট্রিংয়ে লোকেরা একটি ভাল গান না লিখে তা নিশ্চিত করার জন্য এটির আউটপুট দেওয়ার জন্য একটি ক্ষুদ্রতম অংশ রয়েছে।
    • তাই আপনি যদি আপনার প্রোগ্রাম ছিল MYCODEতারপর MYC, MYE, MDE, এবং ODEসব না quines হওয়া উচিত (তারা ত্রুটি বা অন্য আউটপুট কিছু হতে পারে)।

এটি একটি জনপ্রিয়তা-প্রতিযোগিতা, সর্বাধিক ভোট দেওয়া উত্তর জয়ী।

আপডেট: স্বচ্ছন্দ গত নিয়ম।


3
আপনি ফোনের কীপ্যাডে মেরি হ্যাড একটি ছোট মেষশাবক খেলতে পারেন: 3212333 222 399 (এটি চেষ্টা করুন, এটি পুরোপুরি বেরিয়ে আসে))
স্তর নদী সেন্ট

পিয়ানো জন্য প্রচুর বিনামূল্যে সাউন্ডফন্ট আছে। এছাড়াও, দুর্দান্ত জেএসফিডাল!
Qwr

আমি মনে করি, এর আগে কোনও চ্যালেঞ্জের শেষ নিয়মটি আমি কখনই দেখিনি, উদ্দেশ্য হিসাবে বেশ কার্যকর I
justhalf

@Qwr আপনি কি সব 88 টি কীগুলির কোনও সেট সম্পর্কে জানেন যা এই ফ্যাশনে সরাসরি লিঙ্ক করা যেতে পারে ? আমি কিছুটা তাকালাম কিন্তু কিছু পেলাম না।
ক্যালভিনের শখ

উত্তর:


6

সি

আমি সিদ্ধান্ত নিলাম আমি পছন্দ কম শব্দ স্ট্রিং দ্বারা উত্পন্ন গজরানি /**/যা না তাই কাকতালীয়ভাবে খোলা পথে এবং বন্ধ সি দ্য একটি মন্তব্য শুধুমাত্র অন্যান্য আকর্ষণীয় বিট এখানে যে 34একটি "দ্বারা প্রতিস্থাপিত হয় 35-1(ক শেষ হওয়া 1 থেকে ইচ্ছাকৃতভাবে) খোদাভীরু কর্ডগুলি এড়িয়ে চলুন। আমি শেষের শব্দটি নাটকীয় করার চেষ্টা করেছি। আমি সত্যিই করেছি। এটিকে কিছুটা আরও ভাল করে দেওয়ার জন্য আমি পরে এটি সম্পাদনা করতে চাই।

/**/char*p= "/**/char*p= %c%s%c; int main(){printf(p,34,p,35-1);p++;/**/}/**/";
int main(){printf(p,34,p,35-1);p++;/**/}/**/

বিধিগুলি সম্পর্কে আমার বোঝার জন্য, মন্তব্য করা বিভাগগুলি এখনও চূড়ান্ত নিয়মটি পাস করেছে কারণ তাদের অপসারণের ফলে ব্যর্থ কুইন হয়।


3
"এটিকে কিছুটা আরও ভাল করে দেওয়ার জন্য আমি পরে এটি সম্পাদনা করতে চাই" " প্রায় এক বছর কেটে গেছে। আমি আরও ভাবতে শুরু করি যে আপনি এটিকে পরে আরও সম্পাদন করবেন না এটি আরও ভাল শোনার জন্য। : পি
অ্যালেক্স এ।

@AlexA। এক বছরেরও বেশি সময়!
wizzwizz4

5

জে

হ্যাঁ, আমি মনে করি আপনি অনুমান করতে পারেন এটি কীভাবে চলছে।

প্যারেন ছাড়াই জেতে শীতল কিছু করা খুব শক্ত এবং আপনি যেহেতু 0 ও 1 এর সাথে খুব কমই শেষ করতে পারেন তাই বেশিরভাগ জিনিস একই সাথে কীবোর্ডের উচ্চ এবং নিম্ন অংশে বসে থাকার মতো শোনাচ্ছে। আমি যথাসাধ্য চেষ্টা করেছি, আমি আপনাকে জানাবো।

আমি মনে করি এখানে পিয়ানো জন্য একটি মজাদার বেসলাইন। আমি কম্পোজিশনের প্রথম জিনিসটি সত্যই জানি না, আমি কেবল একটি কুইন ধরলাম এবং কিছুটা চারপাশে সংখ্যাগুলিকে গুঁড়িয়ে দিলাম।

(23 23,~,~i.124+-100){,'(23 23,~,~i.124+-100){,'''

এবং, কেবল মজা করার জন্য, এটিকে ইডিএম হিসাবে খেলুন। আমি এটাকে জোপেক্স যমজ নামে ডেকে আছি

".s=:'''".s=:'',''''''''&,@(,&'''''''')@(#~>:@(=&''''''''))s'

আপনি কোডের এই সূক্ষ্ম স্নিপেট এর quineiness নিশ্চিত করতে পারেন tryj.tk


1
এটি আসলে সংগীতের জন্য পাস করতে পারে। গ্রেট! :)
এমিল

4

পাইথনের সাথে মিউজিক কংক্রিট

আমার আজ খুব বেশি সময় নেই তবে আমি উত্তর পেতে চেয়েছিলাম gen জেনারটি কোনও কিছুর মতো শব্দ না করার বাহানা। কোনও ভিডিও গেমটিতে একটি শব্দ প্রভাব থাকতে পারে?

BFIN10=r"print('BFIN10=r\"'+BFIN10+'\"'+'\nexec(BFIN10)')"
exec(BFIN10)

আসলে খুব খারাপ লাগে না!
ক্লদিউ

প্রতি ইয়োকো ওনো অ্যালবাম
উইলিয়াম বারবোসা

4

সি

int(printf)(char*,...); (main)(){char*b=",*",i=(34),*m=("int(printf)(char*,...); (main)(){char*b="),
*z="%s%c%s%c,i=(34),*m=(%c%s%c)%sz=%c%s%c,*B=%c%s%c,*f=(%c%s%c)%s(/*)*/%s/*(*/);}//(+++fim)",*B="(f,
i,m,z),(i,z,m),(m,i),(f,b),(m,i),(m,i),(f,z,m),(m,i),(f,z,b),(m,i),(b,z),(B,i),(38,i),(29,B),(26,i),
(26,i),(B,f),(42,i),(i,m,f),B",*f=(";(printf)");(printf)(/*)*/(f,i,m,z),(i,z,m),(m,i),(f,b),(m,i),(m
,i),(f,z,m),(m,i),(f,z,b),(m,i),(b,z),(B,i),(38,i),(29,B),(26,i),(26,i),(B,f),(42,i),(i,m,f),B/*(*/)
;}//(+++fim)

শুধুমাত্র উপস্থাপনার উদ্দেশ্যে লাইন ব্রেকগুলির সাথে সম্পর্কযুক্ত; যদি নতুন লাইনগুলি সরিয়ে ফেলা হয় তবে এটি কেবল একটি কুইন (এবং কেবল দৈর্ঘ্যের প্রয়োজনীয়তা পূরণ করে)।

সংকলনের জন্য প্রিন্টফের ঘোষণার দরকার ছিল (printf)/*(*/এবং /*)*/কোডে প্রথম বন্ধনীর সাথে ম্যাচ করার জন্য ব্যবহৃত হত, যখন printfপ্যারামিটারগুলি থেকে ক্যার্ড গঠনের জন্য প্রথম বন্ধনী এবং কমা অপারেটরের মিশ্রণ ব্যবহৃত হত ।

সম্পাদনা করুন: আকারের প্রয়োজনীয়তার সাথে খাপ খোলার পাশাপাশি টুকরোটি আরও খানিকটা দ্রুত এগিয়ে যেতে পারে।

এটি পিয়ানোতে সেরা শোনাচ্ছে।


2
আমি এটা পছন্দ করি! এটি ধীরে ধীরে শুরু হয় তবে টোকেন 130 থেকে সমস্ত কিছু শক্তিশালীভাবে হান্টিং হয়। আপনি নিজের সুবিধার্থে চিৎকার ব্যবহার করেছেন।
ক্যালভিনের শখ

এই এক অর্কেস্ট্রা জন্য ফ্যান্টাসি পাস হতে পারে! : পি
সোহম চৌধুরী

2
আমি পুরানো সংস্করণটি আরও ভাল পছন্দ করেছি তবে এটি এখনও এখানে আমার প্রিয় গান। আমি আপনাকে অনুগ্রহ দেওয়ার চেষ্টা করছি তবে কোনও কারণে এটি কাজ করছে না। মেটা দেখুন: meta.codegolf.stackexchange.com/questions/2263/…
ক্যালভিনের শখ

3

পরিকল্পনা

এটি বিশেষ মেলোডিক নাও হতে পারে (বাস্তবে মনে হয় কেউ কোনও মৃত শূকরকে বাচ্চা-গ্র্যান্ডে ফেলে দেয়) তবে কমপক্ষে এটি সংগীতের একটি সংক্ষিপ্ত অংশ। স্কিমটিতে আরও দীর্ঘ বা কম ডেড-ফ্লাইং-পিগ-জাতীয় কিছু তৈরি করা কঠিন হবে।

((lambda (x) (list x (list 'quote x))) '(lambda (x) (list x (list 'quote x))))

1
ও, আমার কান ....
ক্লডিউ


1

কোবরা / ব্যাচ

@number float# 2>nul||@echo off
/# 2>nul
for /f "delims=" %%a in (%0) do echo %%a
#/# 2>nul
class P# 2>nul
    def main# 2>nul
        r="# 2>nul"# 2>nul
        s="@number float{3}||@echo off{2}/{3}{2}for /f {1}delims={1} %%a in (%0) do echo %%a{2}#/{3}{2}class P{3}{2}    def main{3}{2}      r={1}{3}{1}{3}{2}       s={1}{0}{1}{3}{2}       Console.write(s,s,34to char,10to char){3}"# 2>nul
        Console.write(s,s,34to char,10to char,r)# 2>nul

প্রযুক্তিগতভাবে ব্যাচে কোয়েন নয় (এটি তার নিজস্ব উত্স পড়ে)। এটি কোব্রায় একটি কোয়াইন।

এটি পিয়ানো মোডের সাথে সবচেয়ে ভাল লাগে, কিছুটা সুপার মারিও ওয়ার্ল্ড-এজ ভিডিও গেমের ভুত-স্তরের সংগীতের মতো।


1

Pyth

J"+K+N+J+N+\K+N+K+NJ"K"J"+K+N+J+N+\K+N+K+NJ

চতুর্থ সেটিং (পরিমাণ + এবং - পরিবর্তন ব্যবধান) প্রায় 20 এ সর্বাধিক খেলুন, ডিফল্টে বিশ্রাম নিন। পিয়ানোতে সেরা শোনাচ্ছে।


0

Haskell,

(পরিবর্তনশীল নামটি সর্বশেষ বিধি লঙ্ঘন করেছে কিনা তা আমি নিশ্চিত নই))

main=putStr$  jjlmjiebab ++ {--} show jjlmjiebab;jjlmjiebab = "main=putStr$  jjlmjiebab ++ {--} show jjlmjiebab;jjlmjiebab = "

স্ট্যান্ডার্ড + এবং - মান সহ 1000 মিলিসেকেন্ড নোটের সময়কাল এবং 250 মিলিসেকেন্ড নোটের ব্যবধান সহ পিয়ানোতে সেরা প্লে করা।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.