একটি; # দোভাষী


62

আমি সম্প্রতি একটি নতুন ভাষা তৈরি করেছি ;#(উচ্চারণিত "সেমিকোলন হ্যাশ") যার কেবল দুটি আদেশ রয়েছে:

; জমে এক যোগ করুন

#127 দ্বারা সংযোজকটি মডুলো করুন, একটি নিউলাইন ছাড়াই ASCII অক্ষর এবং আউটপুটকে রূপান্তর করুন । এর পরে, সংগ্রহকারীটিকে 0 এ পুনরায় সেট করুন Yes হ্যাঁ, 127 সঠিক is

অন্য কোনও চরিত্র উপেক্ষা করা হয়। এটি সঞ্চয়ের উপর কোনও প্রভাব ফেলে না এবং কিছু করা উচিত নয়।

আপনার কাজটি এই শক্তিশালী ভাষার জন্য দোভাষী তৈরি করা!

এটি হয় একটি সম্পূর্ণ প্রোগ্রাম বা কোনও ফাংশন হওয়া উচিত যা কোনও ;#প্রোগ্রামকে ইনপুট হিসাবে গ্রহণ করবে এবং সঠিক আউটপুট তৈরি করবে।

উদাহরণ

Output: Hello, World!
Program: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#

Output: ;#
Program: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#

Output: 2d{ (unprintable characters here; should have 4 `\000` bytes between the `d` and the `{` and 3 after the `{`)
Program: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;hafh;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;f;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;###ffh#h#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ffea;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#au###h;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;h;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o

Output: Fizz Buzz output
Program: link below

Output: !
Program: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#

100 পর্যন্ত Fizz Buzz


1
যদি কোনও ইন্টারপ্রেটার ইনপুটটির শেষে তার সম্পাদন শেষ না করে তবে অতিরিক্ত আউটপুট উত্পাদন না করে অনির্দিষ্টকালের জন্য লুপিং চালিয়ে যায় তা কি গ্রহণযোগ্য?
লিও

5
দ্বিতীয় উদাহরণটি আউটপুট উত্পাদন করার জন্য একটি প্রোগ্রাম এনকোড করার জন্য একটি প্রোগ্রাম সম্পর্কে আমাকে অবাক করে দেয় ... পুনরাবৃত্তির সংকলন!
ফ্রে্রুগি 8787

@ লিও হ্যাঁ ঠিক আছে
শে

1
@ আইমনোটমায়নার্ড সেমিকোলন হ্যাশ

2
সম্ভবত উইঙ্ক হ্যাশ বলা সহজ হবে
জেমস ওয়াল্ডবি - jwpat7

উত্তর:



17

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

s=>s.replace(/./g,c=>c=='#'?String.fromCharCode(a%(a=127)):(a+=(c==';'),''),a=0)

ডেমো

পুনরাবৃত্ত সংস্করণ, 82 77 বাইট

নীলকে ধন্যবাদ 5 বাইট সংরক্ষণ

সম্ভবত এটি ফিজ বাজ উদাহরণস্বরূপ বড় ইনপুটগুলির জন্য ক্র্যাশ হওয়ার সম্ভাবনা রয়েছে।

f=([c,...s],a=0)=>c?c=='#'?String.fromCharCode(a%127)+f(s):f(s,a+(c==';')):""

আমার মনে হয় f(s,a+(c==';'))আপনার পুনরাবৃত্ত সংস্করণটি তিনটি বাইট ছুঁড়ে দিতে পারে।
নিল

@ নীল এটি 5 টি বাইট সংরক্ষণ করে :-)
আর্নল্ড

আমি এখন সত্যি নিরীহ বোধ। আমি মূলত একটি বাগি সংস্করণ পেয়েছি এবং বাগটি ঠিক করতে 2 বাইট বিয়োগ করেছি। তবে আমি ভুল হিসাব করেছিলাম এবং বাগি সংস্করণটি আসলে 7 বাইট সংরক্ষণ করেছিল ...
নিল

12

রেটিনা , 336 63 67 65 66 62 59 বাইট

T`;#-ÿ`¯_
;{127}|;+$

(^|¯)
¯
+T`-~`_-`[^¯]
T\`¯`

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

হাইপোথটিকাল এস্কেপ সিনট্যাক্স ব্যবহার করে পাঠযোগ্য সংস্করণ :

T`;#\x01-ÿ`\x01¯_
;{127}|;+$

(^|¯)\x01\x01
¯\x02
+T`\x01-~`_\x03-\x7f`[^\x01¯]\x01
T\`¯`

NUL বাইট মুদ্রণ করে না, কারণ টিআইও তাদের উত্স কোডে অনুমতি দেয় না। এছাড়াও শেষে একটি অতিরিক্ত নিউলাইন প্রিন্ট করে তবে আমার ধারণা এটি অন্যথায় করতে পারে না। চলমান নিউলাইনটি @ লিওকে ধন্যবাদ চাপা দিয়েছে

-273 (!) ধন্যবাদ বাইট @ETHproductions

-2 ধন্যবাদ বাইট @ovs

-3 ধন্যবাদ বাইট @Neil । তাদের দুর্দান্ত 34-বাইট সমাধান দেখুন


1
ইস আমার কথাটা. তবে আপনি কি এক হাজার বাইট দিয়ে বাঁচাতে পারবেন না +T`\x01-~`_\x03-\x7f`[^\x01¯]\x01? (অবশ্যই একক অক্ষর হিসাবে
ছাপানো

@ ইথ প্রডাকশন অবশ্যই আপনি পারবেন। ধন্যবাদ! :)
Eush77

1
ইনপুটটিতে কোনও পিছনে #না থাকলেও বর্তমানে শেষ অক্ষরটি সর্বদা আউটপুট থাকে । আপনি আপনার দ্বিতীয় পর্যায়ে(;{127}|;+$)
ovs

1
তৃতীয় লাইনে আপনার কি + need দরকার? আপনি যখন পুরো ম্যাচটি সরিয়ে ফেলেন, দ্বিতীয় পুনরাবৃত্তিতে প্রতিস্থাপনের জন্য কিছুই অবশিষ্ট থাকবে না।
ovs

1
আমি মনে করি আমি এটি 34 বাইটে করতে পারি: T`;#\x01-ÿ`\x80\x7F_ \x80+$(খালি লাইন) \+T`\x7Fo`\x01-\x80_`\x80[^\x80](অরক্ষিতদের প্রতিনিধিত্ব করতে হেক্সাডেসিমাল পলায়ন ব্যবহার করে)। নালগুলির পরিবর্তে আউটপুটগুলি \ x7F।
নিল

12

জাভা 8, 100 বাইট

s->{int i=0;for(byte b:s.getBytes()){if(b==59)i++;if(b==35){System.out.print((char)(i%127));i=0;}}};

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


3
সাইটে স্বাগতম! :)
ডিজেএমসিএমহেম

আমি আপনার জন্য ফিজবজ উদাহরণের সাথে একটি অনলাইন অনুবাদকের সাথে একটি লিঙ্ক যুক্ত করেছি (লিঙ্ক পাঠ্যটি একটি মন্তব্যে ফিট করার পক্ষে দীর্ঘ ছিল)
জোনাথন অ্যালান


5
@ জেরোল্ডব্রোজার ইউনিকোড একটি চরিত্রের সেট: ইউটিএফ -8 এবং ইউটিএফ -16 হ'ল অক্ষর সেটটির দুটি এনকোডিং । এএসসিআইআই উত্সটি জাভা প্রোগ্রাম হিসাবে পুরোপুরি বৈধ, এবং আমার কাছে এএসসিআইআইতে প্রচুর জাভা উত্স ফাইল এনকোড করা আছে (এটি বৈধ ইউটিএফ -8, সুতরাং একটি ইউনিকোড এনকোডিংও রয়েছে)।

1
সম্পূর্ণরূপে গল্ফড, এক হিসাবে 81 বাইটের জন্য Consumer<char[]>:s->{char i=0;for(int b:s){if(b==59)i++;if(b==35){System.out.print(i%=127);i=0;}}}
অলিভিয়ার

11

জাপট , 18 বাইট

®è'; %# d}'# ë ¯J

এরপরে একটি অপ্রিনিতযোগ্য \ x7f চর রয়েছে %#এটি অনলাইন পরীক্ষা!

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

®   è'; %#   d}'# ë ¯  J
mZ{Zè'; %127 d}'# ë s0,J
                         // Implicit: operate on input string
mZ{           }'#        // Split the input at '#'s, and map each item Z to
   Zè';                  //   the number of semicolons in Z,
        %127             //   mod 127,
             d           //   turned into a character.
m              '#        // Rejoin the list on '#'. At this point the Hello, World! example
                         // would be "H#e#l#l#o#,# #W#o#r#l#d#!#" plus an null byte.
                  ë      // Take every other character. Eliminates the unnecessary '#'s. 
                    ¯J   // Slice off the trailing byte (could be anything if there are
                         // semicolons after the last '#').
                         // Implicit: output result of last expression

1
ডিও, উত্তরগুলি চেক করা উচিত ছিল! পাঞ্চের কাছে আপনি আমাকে মারধর করেছেন তা সন্ধান করার জন্য এটিতে কিছুটা সময় ব্যয় করেছে। q'# ®è'; u# dì¯Jএকই স্কোর জন্য কাজ করে।
শেগি

11

পাইথন , 65 বাইট

এই একটি গলফ হয় এই তার আগে উত্তর।

lambda t:''.join(chr(x.count(';')%127)for x in t.split('#')[:-1])

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

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

ব্যাখ্যা

এই বেশ সহজবোধ্য উত্তর আমরা নির্ধারণ কত হয় ;গুলি প্রতিটি মধ্যে হয় #এবং প্রিন্ট chrগেলিক ভাষার 127. শুধু একটি সামান্য বিট অদ্ভুত হতে পারে হয় [:-1]। আমাদের শেষ গ্রুপটি ফেলে দেওয়া দরকার কারণ এর #পরে আর কোনও হবে না ।

উদাহরণ স্বরূপ

;;#;;;;#;;;;;#;;;

বিভক্ত হবে

[';;',';;;;',';;;;;',';;;']

তবে আমরা শেষটি চাই না ;;;কারণ #মানটি মুদ্রণের জন্য এর পরে আর কিছু নেই ।


1
আমি একটি টিআইও লিঙ্কে সমস্ত পরীক্ষা পাওয়ার চেষ্টা করতে ব্যস্ত ছিলাম। Chr এর জন্য chr ছিল tএবং ব্যতীত x
জোনাথন অ্যালান

9

> <> , 35 বাইট

>i:0(?;:'#'=?v';'=?0
^   [0o%'␡'l~<

এটি অনলাইন চেষ্টা করুন! 0x7F, ^?বা "মুছুন" দিয়ে প্রতিস্থাপন করুন ।

প্রধান লুপ

>i:0(?;:'#'=?v      
^            <

এটি ইনপুট ( i) এর একটি অক্ষর গ্রহণ করে, এটি শূন্যের চেয়ে কম অর্থাৎ ইওএফ ( :0() এর চেয়ে কম কিনা তা পরীক্ষা করে এবং এটি যদি ( ?;) হয় তবে প্রোগ্রামটি সমাপ্ত করে । অন্যথায়, ইনপুটটি #( :'#'=) এর সমান কিনা তা পরীক্ষা করে দেখুন । যদি তা হয় তবে নীচে শাখা করুন এবং লুপটি পুনরায় চালু করুন ( ?v... ^ ... <)।

পাল্টা যুক্তি

              ';'=?0
              

ইনপুট ;( ';'=) এর সমান কিনা তা পরীক্ষা করে দেখুন । যদি তা হয় তবে ক চাপুন 0। নাহলে কিছুই করবেন না। এটি প্রধান লুপটি পুনরায় চালু করে।

প্রিন্টিং লজিক

>       '#'=?v      
^   [0o%'␡'l~<

যখন ইনপুট চরিত্রটি থাকে #, তখন স্ট্যাকটি ( ~) থেকে ইনপুটটি পপ করুন, স্ট্যাকের উপর সদস্য সংখ্যা পান ( l), 127 ( '␡') চাপুন এবং মডুলাসটি ( %) নিন। তারপরে, এটিকে অক্ষর হিসাবে আউটপুট করুন oএবং একটি নতুন স্ট্যাক ( [0) শুরু করুন। এই "জিরো" কাউন্টার আউট। তারপরে, লুপটি আবার শুরু হয়।


3
দরিদ্র> <>। এটি দুঃখজনক :0(:(
শে

9

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

উন্নত, @ উট উইজার্ড, @ ইউরাইলকে ধন্যবাদ

print(''.join(chr(s.count(';')%127)for s in input().split('#')[:-1]))

3
প্রোগ্রামিং ধাঁধা এবং কোড গল্ফ স্বাগতম! এখানে উদ্দেশ্য হ'ল কোডটি যতটা সম্ভব সংক্ষিপ্ত করা (বাইটে), সুতরাং আপনাকে বাইট গণনাটি হেডারে অন্তর্ভুক্ত করতে হবে :)।
আদনান

ব্যাখ্যা করার জন্য ধন্যবাদ, এটি জানেন না। আমি তখন এটিতে কাজ করব।
মিঃজিইক

2
এর পরে স্থানটি সরাতে পারেন :
পাভেল

1
আমি 74 বাইট গণনা। tio.run/nexus/…
ডেনিস

2
এছাড়াও, ';'==cএকটি স্থান বাঁচায়, তবে কোনও ifবিবৃতি ব্যবহার না করা আরও ছোট হবে।
ডেনিস

9

রাদা , 44 39 38 বাইট

5 বাইট @fergusq সংরক্ষণ করার জন্য ধন্যবাদ

{(_/`#`)|{|d|d~="[^;]",""chr #d%127}_}

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

অজ্ঞাতনামা ফাংশন যা স্ট্রিম থেকে ইনপুট নেয়।


অন্যান্য চরিত্রগুলিকে যদি উপেক্ষা করতে না হয় তবে আমি এটি পেয়েছি:

রাদা , 20 বাইট

{(_/`#`)|chr #_%127}

8

রুবি, 41 35 34 টি অক্ষর

( 40 34 33 অক্ষর কোড + 1 অক্ষর কমান্ড লাইন বিকল্প)

gsub(/.*?#/){putc$&.count ?;%127}

ধন্যবাদ:

  • জর্ডান (6 অক্ষর) এর putcসাথে সুস্পষ্ট রূপান্তরকরণের প্রয়োজন নেই বলে পরামর্শ দেওয়ার জন্য.chr
  • অপ্রয়োজনীয় প্রথম বন্ধনী (1 অক্ষর) সন্ধানের জন্য ক্যারিল এল।

নমুনা রান:

bash-4.4$ ruby -ne 'gsub(/.*?#/){putc$&.count ?;%127}' < '2d{.;#' | od -tad1
0000000    2  etb    d  nul  nul  nul  nul    {  nul  nul  nul
          50   23  100    0    0    0    0  123    0    0    0
0000013

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


ডোহ। যদিও আমি আমার প্রথম বছরগুলিতে সি করেছি, আমি পুরোপুরি ভুলে গিয়েছিলাম putc()। আপনাকে ধন্যবাদ, জর্দান
মানটওয়ার্ক

1
আমার নিজের অবাক করার জন্য, আপনি বাইট সংরক্ষণের
ক্যারিল এল।

ভালো লাগল, কিরিলল। ধন্যবাদ।
manatwork

7

05 এ বি 1 , 16 15 14 বাইট

কোড:

'#¡¨ʒ';¢127%ç?

ব্যাখ্যা:

'#¡              # Split on hashtags
   ¨             # Remove the last element
    ʒ            # For each element (actually a hacky way, since this is a filter)
     ';¢         #   Count the number of occurences of ';'
        127%     #   Modulo by 127
            ç    #   Convert to char
             ?   #   Pop and print without a newline

05AB1E- এনকোডিং ব্যবহার করে । এটি অনলাইন চেষ্টা করুন!


7

জেলি , 13 বাইট

ṣ”#Ṗċ€”;%127Ọ

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

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

ṣ”#Ṗċ€”;%127Ọ  Main link. Argument: s (string)

ṣ”#            Split s at hashes.
   Ṗ           Pop; remove the last chunk.
    ċ€”;       Count the semicola in each chunk.
        %127   Take the counts modulo 127.
            Ọ  Unordinal; cast integers to characters.

1
শব্দটির semicolaঅস্তিত্ব নেই এটি semicolons
এরিক আউটগলফার

@ এরিকথিউটগলফার en.m.wiktionary.org/wiki/semicola
ডেনিস

হুম, অদ্ভুত শব্দ।
এরিক আউটগলফার

@ এরিকথিউটগলফার উইকসনির উপর কেউ সম্ভবত লাতিনের বহুবচনটিকে ইংরেজিতে বৈধ করার চেষ্টা করছেন , তবে কোলা এবং সেমিকোলার বানানটি নিষিদ্ধ করা উচিত।
সিউর

7

এমএস-ডস-এ x86 মেশিন কোড - 29 বাইট

00000000  31 d2 b4 01 cd 21 73 01  c3 3c 3b 75 06 42 80 fa  |1....!s..<;u.B..|
00000010  7f 74 ed 3c 23 75 eb b4  02 cd 21 eb e3           |.t.<#u....!..|
0000001d

মন্তব্য সমাবেশ:

bits 16
org 100h

start:
    xor dx,dx       ; reset dx (used as accumulator)
readch:
    mov ah,1
    int 21h         ; read character
    jnc semicolon
    ret             ; quit if EOF
semicolon:
    cmp al,';'      ; is it a semicolon?
    jne hash        ; if not, skip to next check
    inc dx          ; increment accumulator
    cmp dl,127      ; if we get to 127, reset it; this saves us the
    je start        ; hassle to perform the modulo when handling #
hash:
    cmp al,'#'      ; is it a hash?
    jne readch      ; if not, skip back to character read
    mov ah,2        ; print dl (it was choosen as accumulator exactly
    int 21h         ; because it's the easiest register to print)
    jmp start       ; reset the accumulator and go on reading

6

05 এ বি 1 ই , 25 21 19 বাইট

-২ বাইট আদনানকে ধন্যবাদ

Îvy';Q+y'#Qi127%ç?0

ব্যাখ্যা:

Î                       Initialise stack with 0 and then push input
 v                      For each character
  y';Q+                 If equal to ';', then increment top of stack
       y'#Qi            If equal to '#', then
            127%        Modulo top of stack with 127
                ç       Convert to character
                 ?      Print without newline
                  0     Push a 0 to initialise the stack for the next print

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


1
আমি মনে করি আপনি i>}দ্বারা প্রতিস্থাপন করতে পারেন +
আদনান

6

রেটিনা , 34 বাইট

T`;#-ÿ`_
\+T`o`-_`[^]|$

এটি অনলাইন চেষ্টা করুন! পরীক্ষার কেস অন্তর্ভুক্ত। সম্পাদনা করুন: @ মার্টিনএেন্ডারের কিছু সহায়তায় 2 বাইট সংরক্ষণ করা হয়েছে। দ্রষ্টব্য: কোডটিতে অপ্রিন্টেবলগুলি অন্তর্ভুক্ত রয়েছে এবং &#x;কোডগুলি ব্যবহার করে ভুল ফলাফল উত্পন্ন করে কারণ ব্রাউজারটি আইএসও -8859-1 এর পরিবর্তে উইন্ডোজ -1222 ব্যবহার করে। ব্যাখ্যা: প্রথম লাইন ইনপুট আপ সাফ করে: ;পরিবর্তিত হয় \x80, #থেকে \x7F(কারণে Tio সীমাবদ্ধতা) এবং অন্য সব কিছুর মুছে ফেলা হয়। তারপরে যখনই আমরা এমন কোনওটি দেখি \x80যা অন্যটির আগে নয় \x80, আমরা এটিকে মুছে ফেলি এবং পরবর্তী কোনও অক্ষরের কোডটি চক্রাকারে বৃদ্ধি করি। কোনও \x80অক্ষর বাকী না থাকা পর্যন্ত এটি পুনরাবৃত্তি হয় । মূল কোড যা নাল বাইটকে সমর্থন করে মূলত 1 টি অপ্রিন্টযোগ্য বাইট থেকে বাদ দেয়, প্রথম লাইনে যেখানে \xFFঅপরিবর্তিত থাকে এবং \x7Fহয়ে যায়\x00। পাঠযোগ্যতার জন্য পলায়ন সহ:

T`;#\x00-\xFF`\x7F\x00_
\+T`\x7Eo`\x00-\x7F_`\x7F[^\x7F]|\x7F$

আপনি শেষ পর্যায়ে শেষ দুটি স্তর একত্রিত করে একটি বাইট সংরক্ষণ করতে পারেন \x80([^\x80]|$)
মার্টিন এন্ডার

টুইটারে বিরক্তিকরভাবে, \s+T`\x7Fo`\x01-\x80_`\x80(?!\x80).?শুধুমাত্র একটি বাইট সংরক্ষণ করে।
নীল

আহ, তবে [^\x80]|\x80$দুটি বাইট সাশ্রয় করেছে, আমার মনে হয়।
নীল

আহ ভাল, হ্যাঁ শেষটি কাজ করে। আমি নেতিবাচক চেহারার চেষ্টাও করেছি, তবে এটি sবিরক্তিকর।
মার্টিন এন্ডার

6

আর, 97 90 86 84 বাইট

একটি অনুষ্ঠান:

function(s)for(i in utf8ToInt(s)){F=F+(i==59);if(i==35){cat(intToUtf8(F%%127));F=0}}

আর যখন শুরু হয়, (সংখ্যাসূচক ) Fহিসাবে সংজ্ঞায়িত করা হয় ।FALSE0

Ungolfed:

function (s)
    for (i in utf8ToInt(s)) {
        F = F + (i == 59)
        if (i == 35) {
            cat(intToUtf8(F%%127))
            F = 0
        }
    }

এটি আর + পিআরআর হওয়া উচিত নয়?
L3viathan

@ L3viathan যেহেতু pryrএকটি আর প্যাকেজ তাই এটি এখনও আর কোড।
সোভেন হোহেনস্টেইন

এটি আর কোড, তবে এটির জন্য একটি অতিরিক্ত গ্রন্থাগার ইনস্টলেশন প্রয়োজন।
L3viathan

@ L3viathan আপনি কি আমার উত্তর অবৈধ বলে মনে করেন? আমার অতিরিক্ত প্যাকেজ ব্যবহার করা উচিত?
সোভেন হোহেনস্টেইন

2
@ বিএলটি কোন পার্থক্য নেই। আমার মতে চ্যালেঞ্জের আগে তৈরি হওয়া অতিরিক্ত প্যাকেজগুলি ব্যবহার করা কোনও সমস্যা নয় । এটি সব ভাষার ক্ষেত্রেই সত্য। পাইথনে আপনাকে আরতে থাকতে হবে importযখন ::আপনি প্যাকেজগুলিতে সরাসরি অ্যাক্সেস ফাংশন ব্যবহার করতে পারেন use আপনি প্রায়শই এখানে অতিরিক্ত প্যাকেজগুলির ব্যবহার দেখতে পাবেন (যেমন, পাইথন এবং জাভার জন্য)। তবে আমি আমার আগের পোস্টটি পরিবর্তন করেছি কারণ আমি আলোচনায় অংশ নিতে চাই না।
সোভেন হোহেনস্টেইন

5

পাইথন, 82 বাইট

lambda t:''.join(chr(len([g for g in x if g==';'])%127)for x in t.split('#')[:-1])

1
@ হোয়াইট উইজার্ড যেহেতু আপনি ইতিমধ্যে এটি উত্তর হিসাবে পোস্ট করেছেন, আমি বিশ্বাস করি যে আমার পক্ষে সঠিক পদক্ষেপটি আপডেটের পরিবর্তে এটির উন্নতি হবে
উরিল

4

সমতল টেক্স, 156 বাইট

\newcount\a\def\;{\advance\a by 1\ifnum\a=127\a=0\fi}\def\#{\message{\the\a}\a=0}\catcode`;=13\catcode35=13\let;=\;\let#=\#\loop\read16 to\>\>\iftrue\repeat

সুপাঠ্য

\newcount\a

\def\;{
  \advance\a by 1
  \ifnum \a=127 \a=0 \fi
}
\def\#{
  \message{\the\a}
  \a=0
}

\catcode`;=13
\catcode35=13

\let;=\;
\let#=\#

\loop
  \read16 to \> \>
  \iftrue \repeat

এটি কি প্রতীকীভাবে অক্ষরগুলি মুদ্রণ করতে পারে?
Eush77


4

পার্ল, 25 বাইট

$_=chr(y%;%%%127)x/#/

সঙ্গে চালান perl -043pe(4 বাইট হিসাবে গণনা থেকে perl -eমান)।

ব্যাখ্যা: -043লাইন-টার্মিনেটরে সেট করে #(ASCII 043)। -pইনপুট "লাইনগুলি" দিয়ে পুনরাবৃত্তি হয় (আসলে # এখন-সীমাবদ্ধ স্ট্রিং)। প্রতিটি "লাইন" এর y%;%%সংখ্যা গণনা করে ;x/#/নিশ্চিত করে যে আমরা যে প্রোগ্রামগুলিতে একটি # (তৃতীয় টেস্টকেসের মতো) শেষ হয় না তাদের জন্য অতিরিক্ত অক্ষর মুদ্রণ করব না। %127মোটামুটি সুস্পষ্ট হওয়া উচিত। $_=স্বাভাবিক বয়লারপ্লেট হয়।


কোনওটি মুগ্ধ করছে যদিও ত্রুটি রয়েছে: কারণ ;;#;;;এটি # 2 এর পরিবর্তে # 5 আউটপুট দেয়।
manatwork

আপনি এই ফলাফলটি কীভাবে পেলেন? echo -n ';;#;;;' | perl -043pe '$_=chr(y%;%%%127)x/#/' | xxdসঠিকভাবে 00000000: 02আমার মেশিনে আউটপুট । আপনি যদি ছেড়ে চলে যান 043বা কোনও কোডপেজ ব্যবহার করছেন যেখানে #ASCII 043 নেই, এটি আপনার ফলাফলটি ব্যাখ্যা করবে।
গ্রেমি 22'17 এ

1
উফ। দুঃখিত, আমার পরীক্ষায় আমার একটি টাইপ ছিল। আপনার কোড নিখুঁতভাবে কাজ করে।
manatwork

4

সিজেম, 27 বাইট

0q{";#"#") 127%co0 "S/=~}%;

ব্যাখ্যা:

0                            e# Push 0
 q                           e# Push the input
  {                          e# For each character in the input:
   ";#"#                     e#   Index of character in ";#", -1 if not found
        ") 127%co0 "S/       e#   Push this string, split on spaces
                      =      e#   Array access (-1 is the last element)
                       ~     e#   Execute as CJam code. ")" increments the accumulator,
                             e#     and "127%co0" preforms modulo by 127, converts to character, pops and outputs, and then pushes 0.
                        }%   e# End for
                          ;  e# Delete the accumulator

বিকল্প সমাধান, 18 বাইট

q'#/);{';e=127%c}%

ব্যাখ্যা:

q                   e# Read the whole input
 '#/                e# Split on '#'
    );              e# Delete the last element
      {             e# For each element:
       ';e=         e#   Count number of ';' in string
           127%     e#   Modulo by 127
               c    e#   Convert to character code
                }%  e# End for

বিজনেস বিড়াল যা অবৈধ অক্ষরগুলিকে উপেক্ষা করে না।
ফল

আপনার কেন ;সঞ্চালক মুছতে হবে?
কেয়ারড কোইনারিংহিংহিং

@ র্যান্ডমউজার সুতরাং এটি স্ট্রিংয়ের সাথে শেষে আউটপুট করা শেষ হবে না।
ETH প্রোডাকশনগুলি

4

এফ #, 79 91 93 বাইট

let rec r a=function|[]->()|';'::t->r(a+1)t|'#'::t->printf"%c"(char(a%127));r 0 t|_::y->r a y

Ungolfed

let rec run acc = function
    | [] -> ()
    | ';'::xs ->
        run (acc + 1) xs
    | '#'::xs ->
        printf "%c" (char(acc % 127))
        run 0 xs
    | x::xs -> run acc xs

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

সম্পাদনা: ';' ব্যতীত অন্য কোনও চরের চিকিৎসা করছিল? '#' হিসাবে এটিকে পরিবর্তন করা হয়েছে যাতে এটি অবৈধ অক্ষরকে উপেক্ষা করে।

বিকল্প

এফ #, 107 104 বাইট

let r i=
 let a=ref 0
 [for c in i do c|>function|';'->a:=!a+1|'#'->printf"%c"(!a%127|>char);a:=0|_->()]

রেফারেন্স সেল ব্যবহার করে 3 বাইট সাশ্রয় হয়

Ungolfed

let run i =
    let a = ref 0;
    [for c in i do
        match c with
        | ';' -> a := !a + 1
        | '#' ->
            printf "%c" (char(!a % 127))
            a := 0
        |_->()
    ]

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


4

প্রসেসিং.জেএস (খানকাদেমি সংস্করণ), 118 বাইট

var n="",a=0;for(var i=0;i<n.length;i++){if(n[i]===";"){a++;}if(n[i]==="#"){println(String.fromCharCode(a%127));a=0;}}

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

ব্যবহৃত প্রসেসিংয়ের সংস্করণটিতে কোনও ইনপুট পদ্ধতি ইনপুট নেই বলে এন করা হয়।


আপনি প্রযুক্তিগতভাবে নিজের নিজস্ব ইনপুট পদ্ধতিটি এর সাথে keyTyped=function(){ ... }
নকল

@Ethproductions এটি একটি ঘৃণার চেহারা।
ক্রিস্টোফার

নিবন্ধন করুন আমি এটা করেছি! আমি প্রসেসিংয়ে উত্তর দিতে চাই (আমার উত্তরগুলি পরীক্ষা করুন)
ক্রিস্টোফার

2
@ র্যান্ডম ব্যবহারকারী কেবল 1000 টি প্রতিনিধি নয় .. তবে 2 ^ 10 রেপ (

@ মিডনাইটাস ওহহ হ্যাঁ
ক্রিস্টোফার

4

ল্যাবরেথ , 61 47 বাইট

_36},)@
;    {
; 42_-
"#-  1
_ ; 72
_ ) %
"""".

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

ব্যাখ্যা

সমাধান কোডের রঙিন কোডেড চিত্র

কোড এক্সিকিউশনটি উপরের বাম কোণে শুরু হয় এবং প্রথম সেমিকোলনটি স্ট্যাকের বাইরে একটি অন্তর্নিহিত শূন্যকে বর্জন করে এবং ডানদিকে চালিয়ে যায়।

কমলা

  • _3636 স্ট্যাকের দিকে ধাক্কা দেয়। এটি ইনপুটটির সাথে তুলনা করার জন্য#
  • } স্ট্যাকের শীর্ষটি সেকেন্ডারি স্ট্যাকের দিকে সরায়
  • , স্ট্যাকের মধ্যে অক্ষরের পূর্ণসংখ্যা মানকে ঠেলে দেয়
  • )স্ট্যাকটি বৃদ্ধি করে (যদি এটি ইনপুটটির শেষ হয় তবে এটি স্ট্যাকটিকে 0 করে দেবে এবং প্রোগ্রামের প্রবাহটি @প্রস্থান এবং প্রস্থানের দিকে এগিয়ে যাবে )
  • { গৌণ স্ট্যাকের শীর্ষটিকে প্রাথমিক স্ট্যাকের শীর্ষে স্থানান্তরিত করে
  • -পপ ওয়াই, পপ এক্স, পুশ এক্স - ই। এটি #ইনপুটটির সাথে তুলনা করার জন্য (ascii এ 35)। যদি ইনপুট ছিল #কোডটি বেগুনি বিভাগে অবিরত থাকবে (কারণ স্ট্যাকের শীর্ষটি 0 আইপিটি আগে যে দিকে চলছিল সেদিকে চালিয়ে যায়), অন্যথায় এটি সবুজ বিভাগে অবিরত থাকবে।

রক্তবর্ণ

  • 127 স্ট্যাকের দিকে 127 চাপুন
  • % পপ এক্স, পপ ওয়াই, x% y টিপুন
  • . স্ট্যাকের শীর্ষস্থানীয় (সংযোজক) এবং একটি অক্ষর হিসাবে আউটপুট পপ করুন

এখান থেকে ধূসর কোডটি আমাদের স্ট্যাকের কিছুই না দিয়ে প্রোগ্রামের উপরের বাম কোণে নিয়ে যায়।

সবুজ

  • _24 24 স্ট্যাকের দিকে ধাক্কা
  • -পপ এক্স, পপ ওয়াই, ধাক্কা এক্স। 24 এর মধ্যে পার্থক্য #এবং ;তাই এই ইনপুটটি ছিল কিনা তা পরীক্ষা করে ;। এটি যদি ;কোডটি সোজা দিকে চলতে থাকে )। অন্যথায় এটি #স্ট্যাকের উচ্চতার দিকে ধাক্কা দেয় এমন দিকে ফিরে যাবে (সর্বদা একটি ধনাত্মক সংখ্যা, প্রোগ্রামটিকে পরবর্তী চৌরাস্তায় ডান দিকে ঘোরানো এবং কোডটি মিস করবে যা সংযোজককে বাড়িয়ে তোলে)
  • ; স্ট্যাকের উপরের অংশটি ফেলে দিন
  • ) স্ট্যাকের শীর্ষটি বৃদ্ধি করুন যা হয় অন্তর্নিহিত শূন্য বা এটি পূর্বে বর্ধিত শূন্য যা আউটপুট জন্য সঞ্চালক হিসাবে অভিনয় করছে

এখান থেকে ধূসর কোডটি কেবল স্ট্যাকের সাহায্যে প্রোগ্রামের উপরের বাম কোণে নিয়ে যায় যার উপর কেবলমাত্র সঞ্চালক রয়েছে।

ধূসর

উদ্ধৃতিগুলি কোনও অপ্স নয়, _স্ট্যাকের জন্য 0 টি ধাক্কা ;দেয় এবং স্ট্যাকের শীর্ষটি ত্যাগ করে। এগুলি সবই সঠিকভাবে নিয়ন্ত্রণ-প্রবাহকে বাধ্য করার জন্য এবং স্ট্যাকের শীর্ষ থেকে অতিরিক্ত কিছু বাদ দেওয়ার জন্য কেবল কোড।


কৌতূহলের বাইরে আপনি ব্যাখ্যা চিত্রটি কীভাবে তৈরি করলেন? আপনি নিজেই এটি তৈরি করেছেন?
স্টিফনচ

2
@ স্টেফনচ, আমি প্রতিটি অক্ষরের মধ্যে একটি ট্যাব রাখার জন্য আমি একটি পাঠ্য সম্পাদক ব্যবহার করেছি এবং তারপরে কোডটি মাইক্রোসফ্ট এক্সেলে পোস্ট করেছিলাম যা প্রতিটি চরিত্রকে তার নিজের ঘরে রেখে দেয়। আমি সমস্ত ঘর তাদের সমান প্রস্থ এবং উচ্চতা দিতে নির্বাচন করেছি selected তারপরে আমি রঙ এবং সীমানা সামঞ্জস্য করেছি এবং একটি স্ক্রিনশট নিয়েছি।
রবার্ট হিকম্যান

3

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

';#'&mXz!"@o?T}vn127\c&YD]]vx

ইনপুট একটি স্ট্রিং যা একক উদ্ধৃতিতে আবদ্ধ।

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

অনলাইন দোভাষীদের জন্য ফিজবজ প্রোগ্রামটি অনেক দীর্ঘ; এটি এই জিএফ-এ অফলাইনে কাজ করা দেখুন:

এখানে চিত্র বর্ণনা লিখুন

ব্যাখ্যা

সঞ্চয়ের মান স্ট্যাকের উপাদানগুলির সংখ্যা হিসাবে প্রয়োগ করা হয়। এটি প্রোগ্রামটিকে ধীরে ধীরে করে তোলে যদি সঞ্চয়ের মান স্ট্যাকের একক সংখ্যা ছিল তবে এটি কয়েকটি বাইট সংরক্ষণ করে।

';#'       % Push this string
&m         % Input string (implicit). Pushes row vector array of the same size with 
           % entries 1, 2 or 0 for chars equal to ';', '#' or others, respectively
Xz         % Remove zeros. Gives a column vector
!          % Transpose into a row vector
"          % For each entry
  @        %   Push current entry
  o?       %   If odd
    T      %     Push true. This increases the accumulator (number of stack elements)
  }        %   Else
    v      %     Concatenate stack into a column vector
    n      %     Number of elements
    127\   %     Modulo 127
    c      %     Convert to char
    &YD    %     Display immediately without newline
  ]        %   End
]          % End
vx         % Concatenate stack and delete. This avoids implicit display

3

এলিস , 22 বাইট

I!?';-n+?h$'@u%?'#-n$O

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

ব্যাখ্যা

আমরা কয়টি লোকের ;মুখোমুখি হয়েছি তার একমাত্র কাউন্টারকে আমরা স্ট্যাকটিতে রাখি। যখন স্ট্যাকটি খালি থাকে (যেমন প্রোগ্রামের শুরুতে) এটি স্পষ্টতই 0 হয় 0

I!?';-n+?h$'@u%?'#-n$O
I                      Push codepoint of next char from input
 !?                    store it on the tape and reload it right away
   ';-n+               add 1 to the counter if this char is a semicolon,
                       0 otherwise
        ?h$'           If the input char was -1 (EOF) execute the next command,
                       otherwise push its codepoint
            @          Terminate the program (or push 64)
             u         Set all bits up to the most significant as equal to 1
                       this turns 64 (1000000b) into 127 (1111111b)
              %        Compute modulo
               ?       reload the input char from the tape
                '#-n$O if it is a hash, pop the counter and print
                       the corresponding character
                       wrap back to the start of the line

এই প্রোগ্রামটির একটি সংক্ষিপ্ত, তবে নন-টার্মিনেট সংস্করণ পাওয়া যাবে



খারাপ ফর্ম্যাটিংয়ের জন্য দুঃখিত, আমি এটি আমার ফোন থেকে পোস্ট করেছি, আমি পিসিতে হাত পাওয়ার সাথে সাথেই এটি ঠিক করব
লিও

চ্যালেঞ্জ অন্যথায় নির্দিষ্ট না করা থাকলে প্রোগ্রামগুলি শেষ করতে হবে।
মার্টিন ইন্ডার

আপনি এর পরিবর্তে আক্ষরিক 0x7F ব্যবহার করে একটি বাইট সংরক্ষণ করতে পারেন ~h
মার্টিন এন্ডার

@ মার্টিনএেন্ডার এটি শেষ করে দিয়েছে। আমি কোডে একটি 0x7F সন্নিবেশ করতে পরিচালনা করতে পারেনি, কিন্তু আমি মনে করি এই বিকল্প পরিবর্তন যাহাই হউক না কেন বেশি আকর্ষণীয় :)
লিও

3

জেএস (ইএস 6), 97 92 বাইট

c=>(a=0,y="",c.split``.map(x=>x=="#"?(a%=127,y+=String.fromCharCode(a),a=0):x==";"?a++:0),y)

শেগির উত্তরের চেয়ে আলাদা পদ্ধতির চেষ্টা করার চেষ্টা করেছিল । আচ্ছা ভালো.


3

; # + , 59 বাইট, নন-কেপটিং

এই চ্যালেঞ্জের পরে ভাষা তৈরি করা হয়েছিল।

;;;;;~+++++++>~;~++++:>*(~<:-+!(<-;->(;))::<+-::!(<#>)-:-*)

এটি অনলাইন চেষ্টা করুন! নাল বাইট দিয়ে ইনপুট সমাপ্ত হয়।

ব্যাখ্যা

প্রজন্ম আমার থেকে হিসাবে একই # কোড উত্তর; জেনারেট করুন । এখানে পার্থক্যটি কেবল পুনরাবৃত্তি।

পুনরাবৃত্তির

*(~<:-+!(<-;->(;))::<+-::!(<#>)-:-*)
*(                                *)   take input while != 0
  ~                                    swap
   <                                   read value from memory (;)
    :                                  move forward to the accumulator memory spot (AMS)
     -                                 flip Δ
      +                                subtract two accumulators into A
       !                               flip A (0 -> 1, else -> 0)
        (     (;))                     if A is nonzero, or, if A == ';'
         <                             read from AMS
          -;-                          increment
             >                         write to AMS
                  ::                   move to cell 0 (#)
                    <                  read value from memory (#)
                     +                 subtract two accumulators into A
                      -                flip Δ
                       ::              move to AMS
                         !(   )        if A == '#'
                           <           read from AMS
                            #          output mod 127, and clear
                             >         write to AMS
                               -:-     move back to initial cell

3

বাশ + কোর্টিলস, 46 39 বাইট

tr -dc \;#|sed 'y/;/1/;s/#/.ZC7%P/g'|dc

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

ব্যাখ্যা

(ধন্যবাদ -7 বাইটের জন্য গাভী!)

trঅংশ সরিয়ে ফেলা হবে সব বিদেশী অক্ষর (আমি এই করা হতে পারে sedঠিক একই bytecount জন্য, কিন্তু তারপর এটা লাইনফীড চরিত্র সঠিকভাবে হ্যান্ডেল নয়, যেহেতু sedতাদের মধ্যে ছেড়ে dcশুধুমাত্র প্রথম লাইনফীড পর্যন্ত পায় ?)

sedবিশ্রাম নেয় এবং একটি dcপ্রোগ্রাম তৈরি করে :

স্ট্রিং ;হয়ে স্ট্রিং 1(ক দীর্ঘ আক্ষরিক)

#হয়ে যায় .ZC7%P(যদি এটি একটি স্ট্রিং অনুসরণ করে 1, এটি .কোনও অপ-এর জন্য দশমিক পয়েন্ট But তবে এটি যদি প্রোগ্রামের শুরুতে হয় বা অন্যটিকে অনুসরণ করে থাকে তবে #এটি আক্ষরিক হয় 0Then তারপরে এটি সংখ্যার দৈর্ঘ্য নেয়, এটিকে মোড করে, এবং সংশ্লিষ্ট ASCII মুদ্রণ করে।)


আপনার ;অভ্যন্তর থেকে বাঁচার দরকার নেই '...'এবং কেবল এটিকে পরিবর্তন dc -ez?করতে পারেন dc। এছাড়াও, ;স্ট্যাকটিতে 1 যুক্ত করার পরিবর্তে , আপনি তাদের একসাথে গ্রুপ করতে পারেন এবং Zএই tio.run/##S0oszvj/… এ পৌঁছানোর জন্য তাদের দৈর্ঘ্য পেতে পারেন
ক্রিটিকি লিথোস

এই টুইটটি ভাল, ধন্যবাদ! (এবং এটি dc -ez?প্রোগ্রাম শুরু করার জন্য অতিরিক্ত শূন্যের প্রয়োজনের ফলস্বরূপ) তবে আপনার প্রোগ্রামটি stderrধারাবাহিকভাবে #বা ইনপুট যেটির সাথে শেষ হয় #না উভয় ক্ষেত্রে অতিরিক্ত আউটপুট যুক্ত করে (উভয় ক্ষেত্রেই, আমি বোঝাতে চাইছি বহিরাগত অক্ষর অপসারণের পরে) । আমি don'tক্যমত্য আছে কিনা জানি না, তবে আমার মনে হয় অতিরিক্ত আউটপুট সমাধানটিকে অকার্যকর করে দেয়। যদিও আমি আপনার ধারণাটি অভিযোজিত করেছি এবং dcত্রুটি না ছড়িয়ে আপনার পরামর্শের চেয়ে মাত্র একটি বাইটে বেশি ক্ষতবিক্ষত করেছি !
সোফিয়া ল্যাটারের

এই স্টাডার অনুসারে চ্যালেঞ্জটি স্পষ্টভাবে যেমনটি না উল্লেখ করা যায় তবে এটিকে ডিসির পক্ষে খুব কার্যকর that এছাড়াও মনে রাখবেন যে এই বর্তমান সমাধান পরপর সঙ্গে ব্যর্থ #গুলি কারণ Zএর 0হয় 1, তাই এটি পরিবর্তে 0x01 0x00 (আমি ভাল হিসাবে যে একই ফাঁদে পড়ে, কিন্তু আমার ব্রাউজার unprintables প্রদর্শন হিসেবে তাদের hexcodes তাই আমি যে ধরা) আউটপুট।
ক্রিটসি লিথোস

3

সি, 65 64 60 বাইট

(-২ সিলিংক্যাটকে ধন্যবাদ)

c;f(char*s){for(c=0;*s;s++)c+=*s-35?*s==59:-putchar(c%127);}

cফাংশনটি পুনঃব্যবহারযোগ্য করতে আপনার শূন্য থেকে আরম্ভ করতে হবে ।
কনর ও'ব্রায়েন

@ কনরও ব্রায়ান স্থির। দুর্ভাগ্যক্রমে আমি কেবল যোগ করার চেয়ে আরও ছোট কিছু নিয়ে আসার ব্যবস্থা করিনি c=0এবং ডেনিসের উত্তর থেকে অনুলিপি করে প্রতারণা করতে চাই না।
এইচডিভি

@ceilingcat আবার ধন্যবাদ, আমি এর পরে আরও তিনটি বাইট খুলে ফেলতে সক্ষম হয়েছি। এটি ডেনিসের উত্তরে (সম্পাদনার পরে পরীক্ষিত) কোনও কৌশল ব্যবহার করে, তবে এবার এত বেশি সময় কেটে গিয়েছিল যে আমি এগুলি সব ভুলে গিয়েছিলাম এবং নিজেই এটি নিয়ে এসেছি।
এইচডিভি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.