সমস্ত বর্ণানুক্রমিক অক্ষর এবং আন্ডারস্কোর মুদ্রণ করুন


37

এমন কোনও প্রোগ্রাম বা ফাংশন লিখুন যা বর্ণানুক্রমিক বর্ণগুলির একটি স্ট্রিং মুদ্রণ করে বা ফেরত দেয়, কোনও ক্রমে আন্ডারস্কোর করে । সুনির্দিষ্টভাবে বলতে গেলে, নিম্নলিখিত বর্ণগুলি আউটপুট হওয়া দরকার এবং আরও :

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_

Stdout এ মুদ্রণ করার সময়, আপনার আউটপুট অনুমোদিত হওয়ার পরে anচ্ছিক ট্রেলিং নিউলাইন।

উপরের 9 বা ততোধিক অক্ষরগুলিতে অন্তর্নির্মিত ধ্রুবকগুলি অনুমোদিত নয়।


বাইটস মধ্যে সংক্ষিপ্ত কোড।

এটি একটি খুব সহজ চ্যালেঞ্জ, যা আমি বিশ্বাস করি তবুও কিছু আকর্ষণীয় উত্তর উত্পন্ন করবে।


লিডারবোর্ড

নিয়মিত লিডারবোর্ড এবং ভাষার দ্বারা বিজয়ীদের একটি সংক্ষিপ্ত বিবরণ উভয়ই তৈরি করতে এখানে একটি স্ট্যাক স্নিপেট।

আপনার উত্তরটি প্রদর্শিত হয়েছে তা নিশ্চিত করতে, দয়া করে নীচের মার্কডাউন টেমপ্লেটটি ব্যবহার করে আপনার উত্তরটি শিরোনাম দিয়ে শুরু করুন:

# Language Name, N bytes

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

# Ruby, <s>104</s> <s>101</s> 96 bytes

যদি আপনি নিজের শিরোনামে একাধিক সংখ্যা অন্তর্ভুক্ত করতে চান (যেমন আপনার স্কোর দুটি ফাইলের সমষ্টি বা আপনি পৃথকভাবে দোভাষী পতাকা দণ্ডের তালিকা করতে চান), নিশ্চিত করুন যে আসল স্কোরটি শিরোনামের শেষ সংখ্যা:

# Perl, 43 + 2 (-p flag) = 45 bytes

আপনি ভাষাটির নামটিকে একটি লিঙ্কও বানাতে পারেন যা লিডারবোর্ড স্নিপেটে প্রদর্শিত হবে:

# [><>](http://esolangs.org/wiki/Fish), 121 bytes


2
মন্তব্যগুলি বর্ধিত আলোচনার জন্য নয়; এই কথোপকথন চ্যাটে সরানো হয়েছে ।
ডেনিস

উত্তর:


11

উত্তল, 9 বাইট

নতুন পদ্ধতি! এছাড়াও, আমি বুঝতে পেরেছিলাম যে এটি লুইয়ের উত্তরের মতো ঠিক ঠিক একই কিন্তু উত্তল ক্ষেত্রেও, তবে আমি স্বাধীনভাবে এটি নিয়ে এসেছি।

'{,®\W"Oò

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

'{,           Array of chars from NUL to 'z
   ®\W"       Regex to match non-word characters
       Oò     Replace all matches with emtpy string

ওল্ড সলিউশন, 10 বাইট:

A,'[,_¬^'_

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

A,          0-9
'[,_¬^      A-Za-z
'_          _

1
@ mbomb007 হ্যাঁ এটি সিজেএম কোডের সমতুল্যA,'[,_el^'_
গ্যামারকর্পস

এটি কোন এনকোডিংটি?
কনার ও'ব্রায়েন

@ সিও'বিʀɪᴇɴ সিপি -১২২২ বা উইন্ডোজ
-১২২২


12

পার্ল, 20 বাইট

-Eকোনও অতিরিক্ত ব্যয় ছাড়াই প্রয়োজন ।

say+a.._,A.._,_..9,_

সুতরাং, আমার আসল উত্তরটি (নীচে) কিছুটা বিরক্তিকর ছিল। কেবলমাত্র আমি যে জিনিসটি সামনে আসতে পেরেছি তা হ'ল উপরের বিষয়গুলি হুবহু একই, তবে এটি আরও কিছুটা বিভ্রান্তিকর দেখাচ্ছে ... এটি নীচের সাথে বেশ খানিকটা সমান:

say a..z,A..Z,0..9,_

আমি মন্তব্যগুলিতে @ msh210 এর পরামর্শ পছন্দ করি তবে সেগুলি কিছুটা দীর্ঘ long


1
+1 টি। কিছুটা আকর্ষণীয় তবে এর চেয়ে লম্বা আর সমস্ত 27 বাইট রয়েছে: say grep/\w/,map chr,1..122|| say map{chr=~/\w/;$&}1..122|| say map{chr=~s/\W//r}1..122
এমএস 210

1
@ এমশ 210 এখনও এটি আরও সঙ্কুচিত করতে পারে না ... একটি 25 পরিচালিত হয়েছে যদিও: say chr=~/\w/g for 1..255...
ডম হেস্টিংস

10

চেদার, 31 27 বাইট

->97@"123+65@"91+48@"58+"_"

এটি @"অপারেটরটিকে ভালভাবে প্রদর্শন করে

সম্পূর্ণ না হওয়ায় অবশেষে আমি অপারেটরটিকে ঠিক করতে প্রস্তুত হয়েছি @"। ত্রুটিটি হ'ল এটি কোনও চেড্ডার পরিসরটি জেএস পরিসীমা নয় জেনারেট করে তাই এটি সঠিকভাবে কাজ করতে পারে না


ব্যাখ্যা

@"অপারেটর দ্বারা @ CᴏɴᴏʀO'Bʀɪᴇɴ পরিকল্পনা করা হয়েছিল, এবং কি এটা আছে LHS থেকে RHS করার জন্য একটি স্ট্রিং পরিসীমা উৎপন্ন হয়। যখন অ্যানারি অপারেটর হিসাবে ব্যবহৃত হয়, তখন প্রদত্ত কোড পয়েন্টে চরটি ফেরত দেয় (পাইথনের মতো chr)

Ungolfed

->
  97 @" 123 +
  65 @" 91  +
  48 @" 58  +
  "_"

10

ব্রেনফাক, 58 বাইট

+++[[<+>->++<]>]<<[-<->]<<-.+<<++[->>+.>+.<<<]<--[->>.+<<]

এটি অনলাইনে চেষ্টা করুন

টেপটি 3 · 2 এন থেকে শুরু করে এবং সেখান থেকে কাজ করে।

+++[[<+>->++<]>]    initialize the tape
                    |   0 |   3 |   6 |  12 |  24 |  48 |  96 | 192 | 128 |   0 |   0 |
                                                                                    ^
<<[-<->]            subract 128 from 192
                    |   0 |   3 |   6 |  12 |  24 |  48 |  96 |  64 |   0 |   0 |   0 |
                                                                        ^
<<-.+<<++           ouput '_'; increment 24 twice
                    |   0 |   3 |   6 |  12 |  26 |  48 |  96 |  64 |   0 |   0 |   0 |
                                                ^
[->>+.>+.<<<]       output aAbBcC ~ zZ
                    |   0 |   3 |   6 |  12 |   0 |  48 | 122 |  90 |   0 |   0 |   0 |
                                                ^
<--[->>.+<<]        decrement 12 twice; output 0 ~ 9
                    |   0 |   3 |   6 |   0 |   0 |  58 | 122 |  90 |   0 |   0 |   0 |
                                          ^

9

জাভাস্ক্রিপ্ট (ES6), 62 বাইট

_=>String.fromCharCode(...Array(123).keys()).replace(/\W/g,'')

ফিরে আসে 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz, সুতরাং স্ট্রিং আক্ষরিক ফিরে আসে এমন ফাংশনটির চেয়ে কম 6 বাইট কম। হ্যাঁ, এটি স্তন্যপান।


আপনি এমন স্ট্রিং সন্ধানের চেষ্টা করতে পারেন যার জন্য btoaপ্রয়োজনীয় আউটপুট ফেরত দেয়।
gcampbell

@ জি ক্যাম্পবেল ০! (Fact০ টি ফ্যাক্টরিয়াল) স্ট্রিংগুলি অনুসন্ধান করতে কিছুটা সময় নিতে পারে ...
নীল

আপনি শুধু ব্যবহার করতে পারে atob
gcampbell

@gcampbell- এ আমাকে কোনওরকমভাবে উপস্থাপনযোগ্য স্ট্রিং বাদ দিতে হবে।
নীল

@gcampbell দেখা যাচ্ছে যে btoa সংস্করণটি যাইহোক 62 বাইট লাগে: 45 টি 60 টি বর্ণমালা, 3 টি আননকোডেড অক্ষর (সহ _) এবং 14 এর জন্য এনকোড করতে 45 ​​লাগে _=>atob("")+""
নিল

9

হাস্কেল, 38 বাইট

'_':['a'..'z']++['A'..'Z']++['0'..'9']

এখানে ব্যাখ্যা করার মতো কিছুই নেই।


2
প্রশ্ন: কি পার্থক্য :এবং ++?
ডাউনগোট

3
@ ডাউনগোট: ++দুটি স্ট্রিং লাগে এবং সেগুলি সংযুক্ত করে। :একটি চর এবং একটি স্ট্রিং নেয় এবং স্ট্রিংয়ের সামনে চরটি রাখে। "_"++['a'..'z']...এছাড়াও কাজ করে, তবে এটি একটি বাইট দীর্ঘতর।
নিমি

8

পাওয়ারশেল v3 +, 35 33 বাইট

-join([char[]](1..127)-match'\w')

একটি গতিশীল অ্যারে তৈরি করে 1..127, এটিকে হিসাবে অ্যাস্ট করে char-matchএটি রিজেক্সে কাজ করা অপারেটরকে খাওয়ানো হয়েছে \w, যা মেলে এমন সমস্ত উপাদানগুলি (যেমন, সঠিকভাবে বর্ণানুক্রমিক এবং আন্ডারস্কোর) ফিরিয়ে দেবে। আমরা সেগুলি অ্যারে উপাদানগুলিকে একটি -joinস্ট্রিং হিসাবে বান্ডিল করতে একটিতে আবদ্ধ করি । এটি পাইপলাইনে রেখে গেছে এবং আউটপুট অন্তর্ভুক্ত।


1
আরে, এটা ন্যায্য নয়। আমি নিজের শুরুটি বাদ দিয়ে আমার নিজস্ব সমাধান অভিন্ন 0...
জো

@ জোয়ে গোট্তা দ্রুত যান : ডি
অ্যাডমবর্কবার্ক

বিশেষত তুচ্ছ এবং সুস্পষ্ট সমাধানের জন্য, আমি অনুমান করি ;-)
জো

7

ভি, 27 বাইট

i1122ñYpñvHgJ|éidd@"Í×

এটি অনলাইন চেষ্টা করুন!

এই উত্তরটি ভয়াবহভাবে সংশ্লেষিত। আমি পরে একটি ব্যাখ্যা পোস্ট করব।

Hexdump:

00000000: 6916 1631 1b31 3232 f159 7001 f176 4867  i..1.122.Yp..vHg
00000010: 4a7c e969 6464 4022 1bcd d7              J|.idd@"...

ব্যাখ্যা:

রিডেবল:

i<C-v><C-v>1<esc>                                   "Insert the text "<C-v>1"
                                                    "<C-v> means "literal"
                 122ñ       ñ                       "122 times,
                     Yp                             "Duplicate this line
                       <C-a>                        "And increment the first number on this line
                             vHgJ                   "Join every line together
                                 |éi                "Insert an 'i' at the beginning of this line
                                    dd              "Delete this line
                                      @"<esc>       "And execute it as V code.
                                                    "That will generate every ascii value from 1-123
                                             Í×     "Now remove every non-word character.

5
: ডি: ডি: ডি চেডার একটি গল্ফ ল্যাংয়ের সাথে বাঁধা!
ডাউনগোট

7

জে, 30 29 28 বাইট

র্যান্ডম্রা ধন্যবাদ একটি বাইট সংরক্ষণ!

~.u:95,;48 65 97+i."*10,,~26

আউটপুট:

   ~.u:95,;48 65 97+i."*10,,~26
_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

ব্যাখ্যা

আমি প্রতি সে সম্পর্কে একটি ব্যাখ্যা সরবরাহ করব না , তবে মধ্যবর্তী ফলাফল সরবরাহ করব।

   10,,~26
10 26 26
   i. b. 0
1 _ _
   *  b. 0
0 0 0
   i."* b. 0
   i."*2 3 4
0 1 0 0
0 1 2 0
0 1 2 3
   i. 2
0 1
   i. 3
0 1 2
   i. 4
0 1 2 3
   i."*10,,~26
0 1 2 3 4 5 6 7 8 9  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
0 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
0 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
   0 1 2 + i."*10,,~26
0 1 2 3 4 5 6 7  8  9  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
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
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
   48 65 97+i."*10,,~26
48 49 50  51  52  53  54  55  56  57  48  48  48  48  48  48  48  48  48  48  48  48  48  48  48  48
65 66 67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
   ;48 65 97+i."*10,,~26
48 49 50 51 52 53 54 55 56 57 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
   95,;48 65 97+i."*10,,~26
95 48 49 50 51 52 53 54 55 56 57 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 ...
   u:95,;48 65 97+i."*10,,~26
_01234567890000000000000000ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
   ~.u:95,;48 65 97+i."*10,,~26
_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

6

হাস্কেল, 31 বাইট

do(x,y)<-zip"aA0_""zZ9_";[x..y]

এক্সপ্রেশনটি zip "aA0_" "zZ9_"শেষ পয়েন্টগুলির তালিকা দেয় [('a','z'),('A','Z'),('0','9'),('_','_')]doস্বরলিপি প্রতিটি লাগে (x,y)সমেত থেকে \(x,y)->[x..y]এবং ফলাফল যোগসূত্র। এর doপরিবর্তে দুটি বাইটের জন্য অ্যান্ডারস কাসের্গকে ধন্যবাদ জানাই >>=

বিকল্পের সাথে তুলনা করুন:

do(x,y)<-zip"aA0_""zZ9_";[x..y]

zip"aA0_""zZ9_">>= \(x,y)->[x..y]
f(x,y)=[x..y];f=<<zip"aA0_""zZ9_"
id=<<zipWith enumFromTo"aA0_""zZ9_"
[c|(a,b)<-zip"aA0_""zZ9_",c<-[a..b]]
f[x,y]=[x..y];f=<<words"az AZ 09 __"

2
doস্বরলিপি দুটি বাইট সংরক্ষণ করে:do(x,y)<-zip"aA0_""zZ9_";[x..y]
অ্যান্ডারস ক্যাসরগ

4

সি, 50 বাইট

f()কোনও যুক্তি ছাড়াই কল করুন ।

f(n){for(n=128;--n;)isalnum(n)|n==95&&putchar(n);}

ছাপে

zyxwvutsrqponmlkjihgfedcba_ZYXWVUTSRQPONMLKJIHGFEDCBA9876543210

1
isalnum(n)|n==95&&putchar(n)
orlp

সেখানে ইউবি আছে। আপনি প্রয়োজনীয় যুক্তি পাস করেন নি।
ভেন

@orlp - আপনি এর putcপরিবর্তে ব্যবহার করেছেন putcharputcপ্রবাহটিও লিখতে পারে বলে আশা করে, যা আপনি পাস করেননি। ফাংশনটি নিজেই দুর্দান্ত কাজ করে (আপনার putcপুরোপুরি সরিয়ে দেওয়ার চেষ্টা করুন , এবং এটি কার্যকর) works
owacoder

ওওভোডার উফ!
orlp

1
@QPaysTaxes এটি ভুল। If the number of arguments does not equal the number of parameters, the behavior is undefined.6.5.2.2/6, এন 1570 দেখুন
ভেন

4

/// , 63 বাইট

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_

এটি কিভাবে বৈধ উত্তর? দেখে মনে হচ্ছে এটি নিয়ম লঙ্ঘন করছে।
নিকেল

@ নিকেল কোন নিয়ম?
লিকি নুন

"অন্তর্নির্মিত ধ্রুবকগুলিতে উপরে বর্ণিত 9 বা ততোধিক অক্ষর রয়েছে তা নিষিদ্ধ করা হয়েছে।" ... আমি কি স্পষ্টত কিছু অনুভব করছি, @ লিকি?
নিকেল

4
হ্যাঁ, এটি কোনও অন্তর্নির্মিত ধ্রুবক ব্যবহার করে নি।
ফুটো নুন

ঠিক আছে, তবে এটি অন্তত অদ্ভুত। অবশ্যই ওপি আপনাকে ক্রমটি কপি-পেস্ট করতে বলবে না, এটি আকর্ষণীয় নয়।
নিকেল

4

পাইথন 3, 58 বাইট

print('_',*filter(str.isalnum,map(chr,range(123))),sep='')

একটি সম্পূর্ণ প্রোগ্রাম যা STDOUT- এ প্রিন্ট করে।

আউটপুটটি হ'ল: _0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

কিভাবে এটা কাজ করে

map(chr,range(123))       Yield an iterator containing all ascii characters with
                          code-points in [0,122]...
*filter(str.isalnum,...)  ...keep characters if alphanumeric and unpack into tuple...
print('_',...,sep='')     ...add underscore and print all characters with no separating
                          space

আইডিয়নে চেষ্টা করে দেখুন

যদি স্ট্রিং কনস্ট্যান্টের অনুমতি দেওয়া হত তবে নিম্নলিখিতগুলি 45 বাইট হত:

from string import*
print('_'+printable[:62])

1
print('_'+*filter(str.isalnum,map(chr,range(123))))
লিকি নুন

@ লাকিউন এটি একটি সিনট্যাক্স ত্রুটি ছুড়ে ফেলেছে। আমি এর সাথে অনুরূপ কিছু করার বিষয়ে ভেবেছিলাম print('_',*filter(str.isalnum,map(chr,range(123)))), তবে এটি স্পেসগুলি পৃথক করে; ওপি মন্তব্যগুলিতে বলেছে যে '... আউটপুটটিতে কোনও স্থানই ছাড়ার অনুমতি নেই'।
TheBikingViking

পাইথন 2 এই পদ্ধতির সাহায্যে একটি বাইট সংরক্ষণ করতে পারে:print''.join(filter(str.isalnum,map(chr,range(123)))),'_'
এ্যাটলজিস্ট

4

কোডগল্ফে আমার প্রথম প্রচেষ্টা!

সি #, 168 152 150 147 130 127 117 116 115 109 106 বাইট

for(var a='0';a<'~';a++){Console.Write(System.Text.RegularExpressions.Regex.IsMatch(a+"","\\w")?a+"":"");}

অ্যালোসডিজ, অ্যাস্ট্রোডান, লিকি নুন এবং কেভিন লউকে অনেক ধন্যবাদ - মন্তব্যে সমস্ত সহায়তার জন্য কেনিকে নয়।


2
পিপিসিজিতে আপনাকে স্বাগতম! সমস্ত স্থান অপসারণ নির্দ্বিধায়! এছাড়াও পরীক্ষা C # golfing জন্য টিপস কিছু টিপস জন্য।
অ্যালোআইএসডিজি মনিকা

1
দুর্দান্ত - আমাকে আরও 2 বাইট বেশি সঞ্চয় করেছে। আমি সত্যিই এই কোডগলফটি পছন্দ করতে শুরু করছি :)
ড্যানিয়েল

1
আফাইক, \wরেজেক্স ক্লাস বর্ণমালা এবং এছাড়াও কভার করে _, যা "\\w"আপনার রেজেক্স ম্যাচ ফাংশনের জন্য যথেষ্ট বৈধ হওয়া উচিত ।
মান কালি

1
আপনার কোডটি কোনও বিবরণ নয়, একটি সম্পূর্ণ প্রোগ্রাম হতে হবে। আপনার কোডের একটি প্রদর্শন ভাগ করে নেওয়ার জন্য নেটফিডেলটিও ব্যবহার করুন :)
অ্যালোআইএসডিজি মনিকা

2
"গ # কোডগল্ফের পক্ষে সেরা নয়" আমি গল্ফ কোড দেওয়ার পক্ষে সি # মজা যথেষ্ট পাই। আমি মনে করি এটি খেলতে একটি দুর্দান্ত মূলধারার ভাষা। আপনি যদি এখানে জয়ী হন তবে আপনি শিথিল হবেন। আপনার উদ্দেশ্যটি শেখা এবং একটি ভাল সময় হিসাবে সংজ্ঞা দিন এবং আপনি সর্বদা জিতে যাবেন।
অ্যালোইসডজি বলছেন মনিকার পুনঃস্থাপন


4

অবজেক্ট প্যাসকাল, 85 83 73 বাইট

অক্ষরের একটি সেট ব্যবহার করে কেবল প্লেইন অবজেক্ট প্যাসকাল। কোনও পদ্ধতির পরিবর্তে একটি সম্পূর্ণ প্রোগ্রাম লেখা 2 বাইট বন্ধ করে দেয়। প্রোগ্রামের কীওয়ার্ডটি সরিয়ে ফেললে আরও 10 টি বাইট শেভ হয়।

var c:char;begin for c in['a'..'z','A'..'Z','0'..'9','_']do write(c);end.

আমি সর্বদা ছিলাম এবং সম্ভবত সর্বদা অবজেক্ট পাস্কেলের সঠিক শ্রেণিবদ্ধকরণ দ্বারা বিভ্রান্ত হয়ে পড়ব। অযথা programকীওয়ার্ড ব্যতীত টার্বো / বোরল্যান্ড পাস্কাল এবং ফ্রিপ্যাসাল অবশ্যই খুশি ।
manatwork

@ মান্যাটওয়ার্ক আমি এটি জানতাম না। অদ্ভুতভাবে যথেষ্ট এখন এটি এখানে
পাস্কালকে

আমি যে ভাষা নিয়ে বড় হয়েছি। আমি জানি যে এটি এখনও মারা যায় নি ...
রেক্সকোটিটানস

@ রেক্সকোজিটানস হ্যাঁ আমি এটি স্কুলে শিখেছি, কিন্তু তখন থেকে আর কিছুই মনে করতে পারি না ... আমি এখন আবার কিছু প্রোগ্রামিং নিয়ে খেলছি
hdrz

4

বাশ - 47 37 বাইট

man sh|egrep -o \\w|sort -u|tr -d \\n

আমার সিস্টেমে আউটপুট হল:

_0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ

সহায়ক পরামর্শের জন্য ডিজিটাল ট্রমা ধন্যবাদ।

কিছু সিস্টেমে আপনি বাইট সংরক্ষণ করার asciiপরিবর্তে ব্যবহার করতে সক্ষম হতে পারেন man sh


1
man sh|egrep -io _\|\\w|sort -u|tr -d \\n
ডিজিটাল ট্রমা

1
@ ডিজিটালট্রামা আপনাকে ধন্যবাদ! পরীক্ষিত এবং \wম্যাচগুলি খুঁজে পেয়েছে _এবং ইতিমধ্যে সংবেদনশীল ক্ষেত্রে এটি তাই আরও সংক্ষিপ্ত করতে পারে।

envপরিবর্তে man shবেশিরভাগ পরিবেশে কাজ করা উচিত। এটা আমার উপর। $ env|egrep -o \\w|sort -u|tr -d \\n-> 0123456789ABCDEFGHIKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz
ওয়াইএসসি

নেই J। আমার খারাপ।
ওয়াইএসসি

4

পিএইচপি, 40 বাইট

_0<?for(;$a++^9?$a^q:$a=A;)echo" $a"|$a;

অনলাইন ডেমো


1
শ্রেষ্ঠত্বের জন্য +1। পার্শ্ব দ্রষ্টব্য: পিএইচপি 7.2 সতর্কতা দেয় যে ভবিষ্যতের সংস্করণগুলি অপরিজ্ঞাত স্থায়ীদের জন্য ত্রুটি ফেলবে mentioning :-(
তিতাস

4

রেটিনা , 30 19 16 15 12 বাইট

আমি এই সর্বশেষ সংস্করণটির জন্য আমার মূল বর্ণমালার প্রবর্তনটি পরিবর্তন করেছি । প্রতিটি চরিত্র একটি লুপে মুদ্রিত হয়।

প্রথম লাইনটি খালি।


;
+T\`;w`w_

এটি অনলাইনে চেষ্টা করুন

আউটপুট:

_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

আমার সর্বশেষ প্রচেষ্টা বন্ধ 4 বাইট গল্ফ করার জন্য Leaky নুন ধন্যবাদ।


আমি বলব যে এটি w9 বা ততোধিক প্রয়োজনীয় অক্ষর সমন্বিত ধ্রুবক হিসাবে গণনা করবে। আপনাকে সম্ভবত ডানদিকে প্রসারিত করতে wহবে এবং বাম দিকে বামদিকে প্রতিস্থাপন করতে হবে o। যদিও আপনি এর EOপরিবর্তে ব্যবহার করে একটি বাইট সংরক্ষণ করতে পারেন dযেহেতু তাদের প্রতিটিতে কেবল পাঁচটি অক্ষর থাকে।
মার্টিন ইন্ডার 21

wলিপ্যন্তর পর্যায়ের ভিতরে @ mbomb007 এর রেজেক্স করার কিছুই নেই। এটি একটি শর্টহ্যান্ড যা প্রয়োজনীয় characters 63 টি অক্ষরের তালিকায় প্রসারিত। কমপক্ষে আমি এই কেসটি সম্পর্কে বিশেষভাবে অর্পালকে জিজ্ঞাসা করব, কারণ এটি \wএকটি রেজেক্সে ব্যবহার করা থেকে একেবারেই আলাদা ।
মার্টিন এন্ডার

3

এমএটিএল , 11 বাইট

7W:'\W'[]YX

এটি অনলাইন চেষ্টা করুন!

7W     % Push  2 raised to 7, i.e. 128
:      % Range [1 2 ... 128]
'\W'   % Push string to be used as regex pattern
[]     % Push empty array
YX     % Regex replace. Uses (and consumes) three inputs: source text, regex pattern, 
       % target text. The first input (source text) is implicitly converted to char.
       % So this replaces non-word characters by nothing.
       % Implicitly display

2 বাইট সংক্ষিপ্ত:8W:'\w'XX
ডিজেএমসিএমহেম

2
টুইটারে তবে আমি মনে করি যে নিউলাইনগুলি পৃথককারী হিসাবে অনুমোদিত নয়। চ্যালেঞ্জটি বলেছে "বর্ণানুক্রমিক বর্ণগুলির একটি স্ট্রিং প্লাস আন্ডারস্কোর ... এবং আরও কিছু নেই"
লুইস মেন্ডো

1
তাহলে 8W:'\w'XX!আমি যা চেষ্টা করেছিলাম কিন্তু কাজ করে না কেন আপনি তা করতে পারেননি
ডিজেএমসিএমহেম

@ ডিগ্রিগ্রিনএগ্রস এবং আইরনম্যান খুব ভাল প্রশ্ন! আমাকে চ্যাটে আপনাকে উত্তর দিতে দিন যাতে আমি আরও কিছু অক্ষর ব্যবহার করতে পারি
লুইস মেন্ডো

3

ব্র্যাচল্যাগ , 25 বাইট

"_"w9yrcw"A":"Z"ycL@l:Lcw

এটি নিম্নলিখিতটি মুদ্রণ করে STDOUT:

_9876543210abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

ব্যাখ্যা

"_"w               Write "_"
9y                 Get the list [0:1:2:3:4:5:6:7:8:9]
  rcw              Reverse it, concatenate into one number, write
"A":"Z"y           Get the list of all uppercase letters
        cL         Concatenate into a single string L
          @l:Lcw   Concatenate L to itself lowercased and write

3

পাইথ, 13 12 বাইট

s:#"\w"0rk\|

এটি অনলাইন চেষ্টা করুন!

রেগেক্সের সাথে মেলে এমন U + 0000 থেকে U + 007B এর সমস্ত অক্ষর সন্ধান করে /\w/

আউটপুটস 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz

বিকল্প পদ্ধতির: 15 বাইট

ssrMc4"0:A[a{_`

এটি অনলাইন চেষ্টা করুন!

মূলত অর্ধেক-সমেত রেঞ্জ প্রয়োজনীয় উত্পন্ন: 0-:, A-[, a-{, _-`


3

সিজেম , 15 14 11 বাইট

@ ফ্রাইআমডিজম্যান এবং @ ডেনিসকে 4 বাইট বন্ধ ধন্যবাদ!

A,'[,_el^'_

এটি অনলাইন চেষ্টা করুন!

A,    e# Push range [0 1 ... 9]
'[,   e# Push range of chars from 0 to "Z" ("[" minus 1)
_el   e# Duplicate and convert to lowercase
^     e# Symmetric difference. This keeps letters only, both upper- and lower-case
'_    e# Push "_".
      e# Implicitly display stack contents, without separators

3

ব্রেইনফাক, 89 বাইট

+++++++++[>+++++>+<<-]>+++.>[<+.>-]<+++++++>>+++++++++++++[<+<+.+.>>-]<<+++++.+>[<+.+.>-]

এখানে চেষ্টা করুন

বিবরণ:

+++++++++[>+++++>+<<-]>+++.  Goes to '0' while remembering a 9 for the 9 other numbers
[<+.>-]                      Simply prints for the next 9 characters
<+++++++>                    Moves it 7 space to the letters
>+++++++++++++               Saves a 13
[<+<+.+.>>-]                 Prints 2 char at a time while making a second '13' space
<<+++++.+>                   Moves 5, prints '_' and moves to the lowercases
[<+.+.>-]                    And again the double print

আমি যদি মন্তব্য করতে পারতাম তবে আমাকে অন্যের উত্তরগুলি উন্নত করতে হবে। তবে যেহেতু আমি পারছি না, আমি নিজের নিজের পোস্টও করতে পারি। আমি যখন এটি লিখতে শুরু করলাম তখন সর্বনিম্ন BF এক দীর্ঘ ছিল।


3

এফ #, 50 59 বাইট

Seq.iter(printf"%c"<<char)(95::[48..57]@[65..90]@[97..122])

আউটপুট:

_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

সম্পাদনা: অঙ্কগুলি প্রথমবার মিস করল

এডিট 2, এই হাস্কেল সমাধান দ্বারা অনুপ্রাণিত এই এফ # স্নিপেট 67 বাইট।

Seq.zip"aA0_""zZ9_"|>Seq.iter(fun(x,y)->Seq.iter(printf"%c")[x..y])

আউটপুট:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_

3

হেক্সাগনি, 33

"A}_8_47<='>({a/_x.@.9!\356);');

সম্প্রসারিত:

    " A }
  _ 8 _ 4 7
 < = ' > ( {
a / _ x . @ .
 9 ! \ 3 5 6
  ) ; ' ) ;
   . . . .

আউটপুট:

aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ1203568479_

এটি অনলাইন চেষ্টা করুন!

নোট করুন যে 0x1Aপ্রোগ্রামটির প্রথম বাইট হিসাবে একটি অপ্রকাশিত অক্ষর রয়েছে । এটি প্রসারিত হেক্সাগনের প্রথম সারিটিকে সাজানোর মতো করে তোলে। আমাকে এই কৌশলটি দেখানোর জন্য পাশাপাশি বর্ণমালা প্রিন্ট করার জন্য অ্যালগরিদমের পরামর্শ দেওয়ার জন্য মার্টিনকে অনেক ধন্যবাদ!

এটি একটি ষড়্ভুজকের দুটি কিনার এবং অক্ষরের মধ্যবর্তী অংশটিকে স্পর্শ করে যে ষড়্ভুজের কিনারায় 26 সংখ্যাটি সংরক্ষণ করে aএবং বর্ণমালাটি মুদ্রণ করে A। এটি দেখতে এরকম কিছু দেখাচ্ছে:

A \ / a
   |
   26

তারপরে এটি একটি লুপগুলিতে প্রবেশ করে যা অক্ষরগুলি মুদ্রণ করে এবং তারপরে সেগুলি বৃদ্ধি করে এবং তারপরে সংখ্যা হ্রাস পায়। এক পুনরাবৃত্তির পরে আমাদের এটি হবে:

B \ / b
   |
   25

ইত্যাদি। Initialisation জন্য রৈখিক কোড হল: 0x1A " A } a। নিয়ন্ত্রণ প্রবাহ পরিবর্তনের লুপ বাইরে জন্য রৈখিক কোড হল: ; ) ' ; ) { ( ' =

কাউন্টার শূন্যে পৌঁছে গেলে আমরা সংখ্যাগুলি এবং আন্ডারস্কোরটি মুদ্রণের জন্য একটি পৃথক পথ অনুসরণ করি। সুসংগত আউট লিখিত এই হল: x 3 5 6 8 4 7 9 ! ; { @। এটি বর্তমান মেমরি প্রান্তটির মানকে 1203568479 সংখ্যাটি প্রতিস্থাপন করে (দ্রষ্টব্য যে xএর ASCII কোডটি 120), যা সমস্ত দশমিক সংখ্যার সমন্বয়ে রয়েছে। আমরা এই নম্বরটি মুদ্রণ করি এবং তারপরে আমরা হেক্সাগনির একটি ঝরঝরে বৈশিষ্ট্য ব্যবহার করি: আমরা ASCII চরিত্র হিসাবে 256 নম্বরটি মুদ্রণ করি। এটি কেবল 95 বা আন্ডারস্কোর হতে পারে।


3

ব্রেইনফাক, 114 103 98 90 76 71 বাইট

আরেকটি তুচ্ছ (এখন অ-তুচ্ছ) সমাধান, তবে এবার বিএফ!

14 (!) বাইটস সংরক্ষণ করেছেন @ প্রিয়মোকে ধন্যবাদ।

রেঞ্জটি পিছনের দিকে তৈরি করার জন্য @ প্রিমোর পরামর্শের জন্য আরও 4 টি বাইট সংরক্ষণ করা হয়েছে, এবং আমি ছোট হাতের অক্ষরগুলির জন্য মুদ্রণের আগে বাড়িয়ে আরও একটি সংরক্ষণ করেছি another

নতুন (পুনরাবৃত্তি 4, 71):

+[--[<+++++++>->+<]>-]<<+++<--<-<-----<++++.+>>>[-<<.+<+.>>>]>[-<<.+>>]

পুরানো (মান, 114):

-[----->+<]>--->++++++++++>--[----->+<]>-------.++>----[---->+<]>++>++++[->++++++<]>++[-<<.+<<.+>>>>]<<<<<<[-<.+>]

পুরানো (পুনরাবৃত্তি 1, 103):

++++++++++[[<+>->+<]>+++++++++++++++]<<[<]>>+>++++++++>>----->>-----.++<<<<<[->>>.+>>.+<<<<<]<[->>.+<<]

পুরানো (পুনরাবৃত্তি 2, 90):

+++++++[[<+>->+<]>>+++[-<+++++++>]<]<<[<]>+++>-->->----->++++.++<<<[->>.+>.+<<<]<[->>.+<<]

পুরানো (পুনরাবৃত্তি 3, 76):

+[[<+++++++>->+<]>+++]<<[<]>+++>-->->----->++++.++<<<[->>.+>.+<<<]<[->>.+<<]

8 বিট মোড়ানো সেল এবং মোড়ানোর মেমরি ধরে নেয়। আমি এটি অনলাইনে ব্যবহার করে দেখুন

সমস্ত মুদ্রণ _AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789

প্রথম, এই অংশ

+[--[<+++++++>->+<]>-]<<

এই মানগুলির সাথে টেপটি আরম্ভ করে

[91, 70, 49, 21, 7]
                 ^

এটি কাজ করে কারণ আমি পুনরাবৃত্তির সম্পর্কটিকে মডেল করেছি যা মূলত f(x) = 7 * (3 * x + 1)পিছনের দিকে। দেখুন @ Primo এর হ্যালো, বিশ্ব! পুনরাবৃত্ত সম্পর্ক কী তা ব্যাখ্যা করার জন্য উত্তর দিন

তারপরে, এই মানগুলি দরকারী বিষয়গুলিতে পরিবর্তন করা মোটামুটি সহজ। (এবং আন্ডারস্কোর মুদ্রণ)

Code: +++<--<-<-----<++++.+

Tape: [96, 65, 48, 26, 10]
       ^

তারপরে, সরল লুপগুলি বাকী অক্ষরগুলি মুদ্রণের জন্য মানগুলি ব্যবহার করে। আমি মুদ্রণের আগে একটি বর্ধন করে 1 বাইট সংরক্ষণ করি।

>>>[-<<.+<+.>>>]>[-<<.+>>]

আমার সত্যিই একটি সংক্ষিপ্ততর ক্রম প্রজন্মের সন্ধান করা উচিত।

আমি একটি পুনরাবৃত্ত সম্পর্ক খুঁজে পেয়েছি যা ভাল কাজ করে বলে মনে হচ্ছে তবে এর চেয়ে কম সংক্ষেপে ডাব্লু / কম শিকার এবং পেকে থাকতে পারে।

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

@ প্রিমো পুনরাবৃত্তির সম্পর্কের ক্ষেত্রে অনেক উন্নতি করেছে, ধন্যবাদ।


পিছনের দিকে কী হবে? +[--[<+++++++>->+<]>-]
প্রিমো

@ প্রিমো বাহ! ওটা কিভাবে কাজ করে?
নীল

3 অসম তাই এটি পুরো 256 বার লুপ করবে। এর সাথে শেষ করে >-]আপনি নিশ্চিত হতে পারবেন যে চূড়ান্ত মেয়াদটি 1 (x7) হবে। আসলে, আপনার সম্ভবত এটি শুরু করা উচিত -, এটি অনেক দ্রুত শেষ হয়।
প্রাইমো

3

সেসোস , 17 বাইট

00000000: a854be 2cbc9e 71d597 14bc56 1ad99e 713b           .T.,..q....V...q;

আউটপুট

0123456789AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz_

এটি অনলাইন চেষ্টা করুন! উত্পন্ন বাইনারি কোড দেখতে ডিবাগ পরীক্ষা করুন ।

কিভাবে এটা কাজ করে

উপরের বাইনারি ফাইলটি নিম্নলিখিত এসএএসএম কোডটি একত্রিত করে তৈরি করা হয়েছে।

add 48     ; Set cell 0 to 48 ('0').
fwd 1      ; Advance to cell 1.
add 10     ; Set cell 1 to 10.
jmp        ; Set an entry marker and jump to the jnz instruction.
    rwd 1  ;   Retrocede to cell 0.
    put    ;   Print its content (initially '0').
    add 1  ;   Increment cell 0 ('0' -> '1', etc.).
    fwd 1  ;   Advance to cell 1.
    sub 1  ;   Decrement cell 1.
jnz        ; While cell 1 in non-zero, jump to 'rwd 1'.
           ; This loop will print "0123456789".
rwd 1      ; Retrocede to cell 0, which holds 48 + 10 = 58.
add 7      ; Set cell 0 to 65 ('A').
fwd 1      ; Advance to cell 1.
add 26     ; Set cell 1 to 26.
jmp        ; Set an entry marker and jump to the jnz instruction.
    rwd 1  ; Retrocede to cell 0.
    put    ; Print its content (initially 'A').
    add 32 ; Add 32 to convert to lowercase ('A' -> 'a', etc.).
    put    ; Print the cell's content.
    sub 31 ; Subtract 31 to switch to the next uppercase letter ('a' -> 'B', etc.).
    fwd 1  ; Advance to cell 1.
    sub 1  ;   Decrement cell 1.
jnz        ; While cell 1 in non-zero, jump to 'rwd 1'.
           ; This loop will print "AaBb...YyZz".
rwd 1      ; Retrocede th cell 0, which holds 65 + 26 = 91.
add 4      ; Set cell 0 to 95 ('_').
put        ; Print its content.


এক মনে মনে দুর্দান্ত মনে হয়!
ডেনিস

@ লেকিউন এইচএম, দেরি করে এসেছেন, তবে মনে হচ্ছে আপনারটি 3 বাইট সংক্ষিপ্ত ...
এরিক দ্য আউটগোল্ফার

@ এরিকথ আউটগল্ফার সেসোস কম দক্ষ পদ্ধতিতে এনকোড করা হত। উভয় প্রোগ্রাম এখন 17 বাইট দীর্ঘ।
ডেনিস 13

@ ডেনিস আহ, ভাল, টিআইও ক্যাশে মাঝে মাঝে বিভ্রান্তিকর হতে পারে।
এরিক আউটগল্ফার

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