Fueue , 423 বাইট
Fueue একটি সারিতে ভিত্তিক esolang যা চলমান প্রোগ্রাম হয় কিউ।
)$$4255%%1(~):[)$$24%%0:<[~:)~)]~[$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]](H-):~:[)[):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):]~:](106328966328112328136317639696111819119696281563139628116326221310190661962811611211962861109696289611619628116111612896281115421063633063961111116163963011632811111819159628151213262722151522061361613096119619190661966311961128966130281807072220060611612811961019070723232022060611
এটি অনলাইন চেষ্টা করুন!
কিভাবে এটা কাজ করে
এই ব্যাখ্যা হাতছাড়া হতে পারে বা নাও পারে । অন্যদিকে আমি কীভাবে এটি আরও সংক্ষিপ্তভাবে ব্যাখ্যা করতে জানি না লোকেরা অনুসরণ করতে পারে আশা করি।
ফিউ চিট শীট
দেখা এই প্রোগ্রামটিতে ব্যবহৃত না হওয়া কয়েকটি বৈশিষ্ট্য সহ বিশদ বিবরণের জন্য এসোলাং উইকি নিবন্ধটি ।
প্রাথমিক প্রোগ্রামটি সারির প্রাথমিক অবস্থা, যাতে নিম্নলিখিত উপাদানগুলি থাকতে পারে:
- পূর্ণসংখ্যার আক্ষরিক (কেবল উত্সে অ-নেতিবাচক, তবে নেতিবাচকগুলি গণনা করা যায়), এগুলি কার্যকর করে একটি অক্ষর মুদ্রণ করা হয়।
- স্কোয়ার-ব্র্যাকেট সীমিত নেস্টেড ব্লকগুলি, জড় (কিছু ফাংশন তাদের উপর কাজ না করে অক্ষত সংরক্ষণ করা হয়)।
- ক্রিয়াকলাপ, তাদের তর্কগুলি তত্ক্ষণাত্ কাতারে নিম্নলিখিত উপাদানগুলি:
+*/-%
: পূর্ণসংখ্যার গাণিতিক ( -
একাত্ম, %
যৌক্তিক অবহেলা)। সংখ্যা যুক্তি না দেওয়া থাকলে জড়
()<
: বন্ধনীগুলিতে উপাদান রাখুন, ব্লক থেকে বন্ধনীগুলি সরান, ব্লকে চূড়ান্ত উপাদান যুক্ত করুন। দ্বিতীয়টি জড় হয়ে থাকে যদি না কোনও ব্লক অনুসরণ করে।
~:
: অদলবদল, সদৃশ
$
: অনুলিপি (সংখ্যা + উপাদান নেয়)। সংখ্যাবিহীন আগে জড়
H
: বন্ধ প্রোগ্রাম।
মনে রাখবেন যে []
বাসা থাকার সময় , ()
করবেন না - আধুনিকগুলি কেবল পৃথক ফাংশন।
এক্সিকিউশন ট্রেস সিনট্যাক্স
সংখ্যাগুলির মধ্যে বাদে হোয়াইটস্পেস Fueue এ alচ্ছিক। নিম্নলিখিত প্রয়োগের ট্রেসগুলিতে এটি প্রোগ্রামের কাঠামোর পরামর্শ দেওয়ার জন্য ব্যবহৃত হবে, বিশেষত:
- যখন কোনও ফাংশন কার্যকর হয়, তখন এটি এবং এর তর্কগুলি স্পেস সহ আশেপাশের উপাদানগুলি থেকে সরিয়ে দেওয়া হবে। যদি কিছু যুক্তি জটিল হয় তবে তাদের মধ্যেও একটি স্থান থাকতে পারে।
- অনেকগুলি মৃত্যুদন্ডের চিহ্নগুলি বাম দিকে "বিলম্ব ব্লব" তে বিভক্ত হয়, একটি অংশ থেকে ডানদিকে আলাদা হয় যা যথেষ্ট পরিমাণে ডেটা ম্যানিপুলেশন করে। পরবর্তী বিভাগ দেখুন।
কোঁকড়া বন্ধনী {}
(Fueue ব্যবহৃত হয় না) গাণিতিক প্রকাশের পূর্ণসংখ্যার ফলাফল প্রতিনিধিত্ব করতে ট্রেস ব্যবহার করা হয়। এটিতে নেতিবাচক সংখ্যা অন্তর্ভুক্ত রয়েছে, কেননা ফুয়েতে কেবল অ-নেতিবাচক আক্ষরিক রয়েছে - এটি প্রত্যাখ্যানের -
কাজ function
বিভিন্ন রূপান্তরযোগ্য নাম এবং ...
মান এবং সংক্ষেপগুলি বোঝাতে ব্যবহৃত হয়।
বিলম্ব কৌশল
স্বজ্ঞাতভাবে, সারিবদ্ধের চারপাশে কার্যকর করা চক্র, এটি যা যা করে তা আংশিকভাবে সংশোধন করে। পরবর্তী চক্র পর্যন্ত কোনও ফাংশনের ফলাফলগুলিতে আবার অভিনয় করা যাবে না। প্রোগ্রামের বিভিন্ন অংশ কার্যকরভাবে সমান্তরালে বিকশিত হয় যতক্ষণ না তারা ইন্টারঅ্যাক্ট না করে।
ফলস্বরূপ, কোডের অনেকগুলি সিঙ্ক্রোনাইজেশনে নিবেদিত হয়, বিশেষত সঠিক সময় পর্যন্ত প্রোগ্রামের অংশগুলি কার্যকর করতে বিলম্ব করতে। এটি গল্ফ করার জন্য অনেকগুলি বিকল্প রয়েছে, যা সেই অংশগুলি অপঠনযোগ্য ব্লবগুলিতে পরিণত করে যা কেবল তাদের সম্পাদন চক্রটিকে চক্র দ্বারা চিহ্নিত করে বোঝা যায়।
এই কৌশলগুলি সর্বদা নীচে পৃথকভাবে উল্লিখিত হবে না:
)[A]
A
একটি চক্রের জন্য বিলম্ব । (সম্ভবত সবচেয়ে সহজ এবং সর্বাধিক পঠনযোগ্য পদ্ধতি))
~ef
উপাদানগুলি অদলবদল করে e
এবং f
যা তাদের কার্যকর করতে বিলম্ব করে। (সম্ভবত কমপক্ষে পাঠযোগ্য, তবে ছোটখাটো বিলম্বের জন্য প্রায়শই সংক্ষিপ্ততম))
$1e
একক উপাদানকে বিলম্বিত করে e
।
-
এবং %
সংখ্যায় বিলম্বের জন্য দরকারী (পরে 0
এবং এর জন্য 1
)
- একটি সারিতে বেশ কয়েকটি সমান উপাদান বিলম্ব করার সময়
:
বা $
তাদের একক থেকে তৈরি করতে ব্যবহার করা যেতে পারে।
(n
n
বন্ধনীগুলিতে মোড়ানো , যা পরে সুবিধার্থে অপসারণ করা যেতে পারে। এটি সংখ্যার গণনার জন্য বিশেষত গুরুত্বপূর্ণ, যেহেতু সংখ্যাগুলি প্রথমে একটি ব্লকে না রেখে কপি করাও খুব অস্থির।
সামগ্রিক কাঠামো
বাকি ব্যাখ্যাকে চলমান প্রোগ্রামের একটি বিভাগের জন্য সাতটি ভাগে ভাগ করা হয়েছে। বৃহত্তর চক্র যার পরে তাদের অধিকাংশই পুনরাবৃত্তি করে তাদের সমগ্র কাতারে একক পাসের "চক্র" থেকে আলাদা করার জন্য "পুনরাবৃত্তি" বলা হবে।
প্রাথমিক প্রোগ্রামটি কীভাবে তাদের মধ্যে ভাগ করা হয়েছে তা এখানে:
A: )$$4255%%1(~
B: ):[)$$24%%0:<[~:)~)]~[$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]]
C:
D: (H-
E:
F:
G: ):~:[)[):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):]~:](106328966328112328136317639696111819119696281563139628116326221310190661962811611211962861109696289611619628116111612896281115421063633063961111116163963011632811111819159628151213262722151522061361613096119619190661966311961128966130281807072220060611612811961019070723232022060611
প্রোগ্রামের শেষে বড় অঙ্কটি প্রতিটি ASCII মান থেকে 30 বিয়োগ করে বিশিষ্ট বিপরীতে এনকোড করে, অক্ষর প্রতি দুটি অঙ্ক করে (যেমন উদাহরণস্বরূপ 10
এনকোড একটি (
।)
উচ্চ স্তরে আপনি এই প্রোগ্রামের ডেটাটি (বিগাইনাম দিয়ে শুরু) ডান থেকে বাম দিকে প্রবাহিত হিসাবে ভাবতে পারেন, তবে বাম থেকে ডানে প্রবাহিত নিয়ন্ত্রণ control যাইহোক, নিম্ন স্তরে ফুয়ে সমস্ত সময় কোড এবং ডেটার মধ্যে পার্থক্যকে ম্লান করে।
- বিভাগ জি বিগিনামকে এএসসিআইআই ডিজিটগুলিতে বিভক্ত করে (যেমন
0
পূর্ণসংখ্যার হিসাবে অঙ্ক 48
), প্রথমে কমপক্ষে উল্লেখযোগ্য অঙ্কগুলি বিভক্ত করে। এটি প্রতি 15 চক্রে একটি ডিজিট উত্পাদন করে।
- বিভাগ E এ উত্পাদিত অঙ্কের ASCII মানগুলি (একটি ব্লকের অভ্যন্তরে) থাকে যতক্ষণ না বিভাগ E সেগুলি গ্রাস করতে পারে।
- বিভাগ E একটি সময়ে উত্পাদিত অঙ্কগুলি দুটি পরিচালনা করে, তাদের ফর্মের ব্লকগুলিতে জুড়ে দেয় এবং
[x[y]]
প্রতিটি জোড়ের এনকোডযুক্ত অক্ষরও মুদ্রণ করে।
- বিভাগ ডিটি গভীরভাবে নেস্টেড ব্লককে ধীরে ধীরে
[x[y]]
ব্লকগুলি থেকে এমনভাবে তৈরি করা হয় যাতে এটিতে একবারে সমস্ত অঙ্ক থাকে, সেগুলি সমস্ত মুদ্রণের জন্য চালানো যায়, তারপরে পুরো প্রোগ্রামটি থামিয়ে দেয়।
- বিভাগ সি বিভাগ ডি নির্মাণের পরিচালনা করে, এবং বিভাগ E পুনরায় তৈরি করে
- বিভাগ বিটি বিভাগ সি পুনরায় তৈরি করে পাশাপাশি প্রতি 30 চক্রকে পুনরায় তৈরি করে।
- বিভাগ একটি অন্যান্য বিভাগের শেষ পুনরাবৃত্ত হওয়া পর্যন্ত চক্রকে গণনা করে। তারপরে এটি বিভাগ বি বাতিল করে এবং বিভাগ ডি চালায়
অধ্যায় একটি
বিভাগ এ প্রোগ্রামটির শেষের সময়সূচী পরিচালনা করে। একটি একক অদলবদলের ক্রিয়াকলাপটি হ্রাস করতে 4258 চক্র লাগবে ~
, যা পরে বিভাগ বিতে একটি সমন্বয় করে যা এর প্রধান লুপটি থামিয়ে দেয় এবং এর পরিবর্তে বিভাগ ডি চালিয়ে যায়।
)$ $4255% %1 (~
)$%%%...%% %0 [~]
)$%%%...% %1 [~]
⋮
)$ %0 [~]
) $1[~]
)[~]
~
- একটি
$
ক্রিয়াকলাপটি নীচের 4255 টি অনুলিপি তৈরি করে %
যখন বন্ধনীগুলিকে (
আবৃত করে ~
।
- প্রতিটি চক্র সর্বশেষে এবং এর
%
মধ্যে নিম্নলিখিত সংখ্যাটি টগল করতে ব্যবহৃত হয় ।0
1
- সমস্ত
%
ব্যবহার করা হয়ে গেলে , $1
1 টি অনুলিপি তৈরি করে [~]
(কার্যকরভাবে একটি এনওপি), এবং পরবর্তী চক্রটিতে )
বন্ধনীগুলি সরিয়ে দেয়।
বিভাগ বি
বিভাগ বিটি প্রতি 30 চক্রে নিজেকে নতুনভাবে পুনঃজেনার পাশাপাশি বিভাগ সি এর একটি নতুন পুনরাবৃত্তি পরিচালনা করে।
) : [)$$24%%0:<[~:)~)]~[$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]]
) [)$$24%%0:<[~:)~)]~[$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]] [BkB]
)$ $24% %0 :< [~:)~)] ~ [$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<] [BkB]
)$ %...%%% %1 < < [~:)~)] [BkB] [$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]
)$ %...%% %0 < [~:)~)[BkB]] [$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]
)$ %...% %1 [~:)~)[BkB][$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]]
⋮
) $1 [~:)~)[BkB][$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]]
) [~:)~)[BkB][$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]] (1)
~:) ~)[BkB] [$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]
) : [BkB] ) [$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<] (2)
) [BkB] [BkB] $11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<
- একটি
:
বৃহত ব্লক নিম্নলিখিতগুলি সদৃশ করে (একটি অনুলিপি সংক্ষেপিত হিসাবে [BkB]
), তারপরে )
প্রথম অনুলিপি থেকে বন্ধনীগুলি সরিয়ে দেয়।
$$24%%0
বিভাগ অ এর মত একটি গণনা সেট আপ করে
- যখন এটি নিচে নামা যায়,
:<
রূপান্তরিত হয় <<
এবং ~
দুটি নতুন ব্লকের পরিবর্তিত হয় , একটি নতুন বিভাগ সি এর জন্য কোডটি সর্বশেষে রেখে।
- দুটি
<
ফাংশন দুটি চূড়ান্ত ব্লককে প্রথম একের মধ্যে রাখে - এটি সাধারণ পুনরাবৃত্তিতে অপ্রয়োজনীয়, তবে ~
বিভাগ এ থেকে শেষ পর্যন্ত এটির কাজটি করার অনুমতি দেবে ।
- (1) গণনা শেষ হলে,
)
বাইরের বন্ধনীগুলি সরিয়ে ফেলা হয়। পরবর্তী~:)
সেকশন সি কোডটির শুরুতে রূপান্তরিত হয় ):
এবং ~)
এটিকে অদলবদল করে )
।
- (২) বিভাগ বি এখন প্রাথমিক চক্রের দিকে ফিরে এসেছে, যখন ক
)
খ বিভাগের সিটির নতুন পুনরাবৃত্তিটি চালানোর জন্য বন্ধনীগুলি সরিয়ে ফেলতে চলেছে
চূড়ান্ত পুনরাবৃত্তিতে, ~
বিভাগ A থেকে উপরের পয়েন্টে (1) উপরে উপস্থিত হবে:
~ ) [~:)~)[BkB][$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]] (1)
[~:)~)[BkB][$11~)~<[[+$4--498+*-:~-10)):])<~][)))~]<]] )
দ্য ~
অদলবদল )
ব্লক জুড়ে এবং অধ্যায় সি মধ্যে, থেকে অধ্যায় বি প্রতিরোধ আবার চালাতে হচ্ছে।
বিভাগ সি
বিভাগ সি বিভাগের ডি'র ব্লকের সাথে নতুন অঙ্কের অক্ষর জোড়াগুলি মার্জ করে এবং বিভাগ ই এর নতুন পুনরাবৃত্তি তৈরি করে les
নিচে সঙ্গে একটি টিপিক্যাল পুনরাবৃত্তির দেখায় x
এবং y
সংখ্যার 'ASCII কোড উপস্থাপন করে। প্রথম পুনরাবৃত্তিতে, আগত "ডি" এবং "ই" উপাদানগুলি প্রাথমিক [H]
এবং -
তার পরিবর্তে, পূর্ববর্তী কোনও বিভাগ E কোনও অঙ্কের অক্ষর জোড়া তৈরি করতে চালিত হয়নি।
C D E
$11~ ) ~<[[+$4--498+*-:~-10)):])<~] [)))~] < [)))~[...]] [x[y]]
~~~ ~~~ ~~~ ~~) [[+$4--498+*-:~-10)):])<~] < [)))~] [)))~[...][x[y]]]
~~~ ~~~ ) ~ [[+$4--498+*-:~-10)):])<~] [)))~[)))~[...][x[y]]]]
~~~ ~ ) [)))~[....]] [[+$4--498+*-:~-10)):])<~]
~~[)))~[....]] )[[+$4--498+*-:~-10)):])<~]
[)))~[....]] ~[+$4--498+*-:~-10)):])<~
- এটি সিঙ্ক্রোনাইজেশনের একটি পৃথক পদ্ধতি ব্যবহার করে যা আমি এই উত্তরের জন্য আবিষ্কার করেছি। যখন আপনার
~
একটি সারিতে বেশ কয়েকটি সোয়াপ ফাংশন থাকে, সারিটি প্রতিটি চক্রটি প্রায় 2/3 এ সঙ্কুচিত হয়ে যায় (কারণ এক ~
দুটি অনুসরণ করে দুটি পরিবর্তন করে) তবে মাঝে মাঝে এমন একটি বাকী অংশ থাকে ~
যা সাবধানতার সাথে ধ্বংসাত্মক ধ্বংসাত্মক ঘটনাটি অনুসরণ করে যা তা অনুসরণ করে।
$11~
যেমন একটি সারি উত্পাদন। পরেরটি নীচের ব্লকটিতে ~
একটি অদলবদল করে <
। <
শেষে অন্য একটিতে বিভাগ ডি ব্লকে একটি নতুন অঙ্কের জোড়া ব্লক (ASCII কোড হিসাবে অঙ্কগুলি x এবং y) সংযোজন করা হবে।
- পরবর্তী চক্র,
~
সারিটির একটি ~~
অবশিষ্টাংশ রয়েছে, যা নীচের অংশে অদলবদল ~
করে )
। অন্য <
একটি বিভাগে ডি বিভাগ যুক্ত করে [)))~]
।
- এরপরে অদলবদল
~
স্বয়ংক্রিয়ভাবে ডি ডি ব্লক জুড়ে নতুন বিভাগ ই কোডের সাথে নিম্নলিখিত ব্লকটি অদলবদল করে। তারপর একটি নতুন অবশেষ ~
একটি বিনিময়সমূহ )
জুড়ে, এবং পরিশেষে গত ~~
মধ্যে ~
জুড়ে বিভাগে ই তাদের সারি swap 'র এক ঠিক যেমন )
তার বন্ধনী সরিয়ে দিয়েছে।
চূড়ান্ত পুনরাবৃত্তির, বিভাগ ক-এর ~
একটি অদলবদল হয়েছে )
জুড়ে অধ্যায় বি এবং অধ্যায় সি মধ্যে যাইহোক, অধ্যায় সি তাই সংক্ষিপ্ত ছিলো এটি ইতিমধ্যে উধাও, এবং)
বিভাগ ডি এর শুরুতে শেষ হয় up
বিভাগ ডি
বিভাগ ডি চূড়ান্ত বড় অঙ্কটি মুদ্রণ করে এবং প্রোগ্রামটি থামিয়ে দেয়। বেশিরভাগ প্রোগ্রাম চলাকালীন, এটি একটি জড় ব্লক যা বি-জি বিভাগ গঠনে সহযোগিতা করে।
(H -
[H]-
⋮
[)))~[H-]] After one iteration of section C
⋮
[)))~[)))~[H-][49[49]]]] Second iteration, after E has also run
⋮
) [)))~[...]] [49[48]] Final printing starts as ) is swapped in
))) ~[...][49[48]]
)) )[49[48]] [...]
)) 49 [48][...] Print first 1
) )[48] [...]
) 48 [...] Print 0
)[...] Recurse to inner block
...
⋮
)[H-] Innermost block reached
H - Program halts
- প্রোগ্রামের প্রথম চক্রের মধ্যে, একটি বন্ধনী
(
বন্ধ করে ফাংশন আবরণ H
। নীচে -
, এটি অঙ্কের জোড়ার পরিবর্তে প্রথম পুনরাবৃত্তির জন্য ডামি উপাদান হিসাবে ব্যবহৃত হবে।
- সংখ্যায় অন্তর্ভুক্ত করা প্রথম আসল অঙ্কের জুটি হ'ল অঙ্কের
[49[49]]
ফাইনালের 11
সাথে মিল to
- শেষ অঙ্ক যুগল
[49[48]]
(সংশ্লিষ্ট 10
সংখ্যা শুরুতে) প্রকৃতপক্ষে ব্লক মধ্যে অন্তর্ভুক্ত করা হয় না, কিন্তু এই যেমন কোনো পার্থক্য করে তোলে )[A[B]]
এবং )[A][B]
সমতুল্য, উভয় পরিণত A[B]
।
চূড়ান্ত পুনরাবৃত্তির পরে, )
বিভাগ বি থেকে ডানদিকে অদলবদল করা হবে এবং বিভাগ ডি ব্লকটি ডিফলক করা হয়েছে। )))~
প্রতিটি সাব-ব্লক শুরুতে নিশ্চিত করুন যে সব অংশে সঠিক অনুক্রমে মৃত্যুদন্ড কার্যকর করা হয় তোলে। শেষ পর্যন্ত অন্তর্নিহিত ব্লকটিতে একটি H
থামানো প্রোগ্রাম রয়েছে।
বিভাগ E
বিভাগ ই বিভাগে জি দ্বারা উত্পাদিত এএসসিআইআই ডিজিটের সংমিশ্রনের জোড়গুলি পরিচালনা করে এবং উভয়ই সংশ্লিষ্ট এনকোডেড অক্ষর মুদ্রণ করে এবং বিভাগ এবং সি এবং ডিতে সম্মিলিত জোড়ের সাথে বাম দিকে একটি ব্লক প্রেরণ করে both
আবার নীচে অঙ্কগুলির ASCII কোডগুলি সহ উপস্থাপন x
এবং y
প্রতিনিধিত্ব করে ite
E F
~ [+$4--498+*-:~-10)):] ) < ~ [y] [x]
) [+$4--498+*-:~-10)):] < [x] [y]
+ $4- - 498 +*- :~ -10 ) ) : [x[y]]
+--- -{-498} +*- ~~{-10} ) ) [x[y]] [x[y]]
+-- - 498 +* -{-10} ~ ) x [y] [x[y]]
+- -{-498} + * 10 x )[y] [x[y]]
+ - 498 + {10*x} y [x[y]]
+ {-498} {10*x+y} [x[y]]
{10*x+y-498} [x[y]]
[x[y]]
- আগত অঙ্কের ব্লকগুলি অদলবদল করা হয়, তারপরে y ব্লকটি এক্স ব্লকের সাথে সংযুক্ত করা হয় এবং পুরো জোড়া ব্লকটি অনুলিপি করা হয়। সি এবং ডি বিভাগের জন্য একটি অনুলিপি শেষ অবধি থাকবে
- অন্য অনুলিপিটি আবার ডিলক করা হয়েছে, তারপরে অঙ্কের জন্য গাণিতিক ক্রিয়াকলাপগুলির একটি ক্রম প্রয়োগ করা হবে
10*x+y-498
, এনকোডেড অক্ষরের ASCII মান। 498 = 10*48+48-30
এর ফলে, 48
ASCII এনকোডিংটি পূর্বাবস্থায় ফিরে আসে x
এবং y
যখন 30
এনকোডিংটি স্থানান্তরিত 00–99
হয় 30–129
, এতে সমস্ত মুদ্রণযোগ্য ASCII অন্তর্ভুক্ত থাকে।
- ফলস্বরূপ সংখ্যাটি কার্যকর করতে বাকি থাকে, যা এর চরিত্রটি মুদ্রণ করে।
বিভাগ এফ
বিভাগে এএসসিআইআই সংখ্যার কোড যুক্ত জড় ব্লক রয়েছে। প্রোগ্রাম পরিচালিত বেশিরভাগের জন্য এখানে কমপক্ষে দু'জন থাকবে, যেহেতু বিভাগ ই তাদের এটিকে একই গতিতে গ্রাস করে যা জি তাদের উত্পাদন করে। তবে চূড়ান্ত মুদ্রণ পর্যায়ে কিছু অপ্রয়োজনীয় 0
অঙ্কগুলি এখানে সংগ্রহ করবে।
[y] [x] ...
বিভাগ জি
বিভাগ জি প্রোগ্রামের শেষে বড় সংখ্যা বিভক্ত করে, প্রথমে কমপক্ষে উল্লেখযোগ্য অঙ্কগুলি পরিচালনা করে এবং তাদের এএসসিআইআই কোড সহ ব্লকগুলি অন্য বিভাগে বামে প্রেরণ করে।
যেহেতু এটির কোনও থামানো চেক নেই, এটি 0
সংখ্যাটি 0তে নামিয়ে নামিয়ে দেওয়ার পরে প্রকৃতপক্ষে অঙ্কগুলি তৈরি করতে থাকবে, যতক্ষণ না বিভাগ ডি দিয়ে পুরো প্রোগ্রামটি থামিয়ে দেয়H
ক্রিয়াকলাপের দেয়।
[BkG]
বড় শুরুর কোড ব্লকের একটি অনুলিপি সংক্ষিপ্ত করে, যা নতুন পুনরাবৃত্তি শুরু করতে স্ব-প্রতিরূপে ব্যবহৃত হয়।
প্রথম চক্রের সূচনা:
) :~ : [)[):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):]~:] ( 106328966328112328136317639696111819119696281563139628116326221310190661962811611211962861109696289611619628116111612896281115421063633063961111116163963011632811111819159628151213262722151522061361613096119619190661966311961128966130281807072220060611612811961019070723232022060611
) ~ ~ [)[):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):]~:] [BkG] [10...11]
) [)[):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):]~:] ~ [BkG] [10...11]
) [):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):] ~ : [10...11] [BkG]
সাধারণ পুনরাবৃত্তি, N
সংখ্যাটি বিভক্ত করতে বোঝায়:
) [):~[)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+:5):] ~ : [N] [BkG]
) :~ [)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/]+ :5 ) : [N] : [BkG]
) ~ ~ [)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/] +5 5 ) [N] [N] [BkG] [BkG]
) [)~:~~([:~)*[):~[$1(+48]):~+]-:~~)10)~~]/] ~ 10 N [N] [BkG] [BkG]
) ~:~ ~ ( [:~)*[):~[$1(+48]):~+]-:~~)10)~~] / N 10 [N] [BkG] [BkG]
) ~ : [:~)*[):~[$1(+48]):~+]-:~~)10)~~] ( {N/10} [N] [BkG] [BkG]
) [:~)*[):~[$1(+48]):~+]-:~~)10)~~] : [{N/10}] [N] [BkG] [BkG]
:~ )*[):~[$1(+48]):~+]- :~ ~)10 ) ~ ~ [{N/10}] [{N/10}] [N] [BkG] [BkG]
~~) *[):~[$1(+48]):~+]- ~~10 ) ) [{N/10}] ~ [{N/10}] [N] [BkG] [BkG]
) ~ * [):~[$1(+48]):~+] -10 ~ ) {N/10} [N] [{N/10}] [BkG] [BkG]
) [):~[$1(+48]):~+] * {-10} {N/10} ) [N] [{N/10}] [BkG] [BkG]
) :~ [$1(+48]) :~ + {-10*(N/10)} N [{N/10}] [BkG] [BkG]
) ~ ~ [$1(+48] ) ~ ~ {N%10} [{N/10}] [BkG] [BkG]
) [$1(+48] ~ ) {N%10} ~ [{N/10}] [BkG] [BkG]
$1( + 48 {N%10} ) [BkG] [{N/10}] [BkG]
( {48+N%10} BkG [{N/10}] [BkG] New iteration starts
[{48+N%10}] ....
- এখানে বিলম্ব ব্লব বিশেষত লোমশ। তবে দুটি নতুন চক্রটি বিলম্ব
+:5
না করে কেবলমাত্র নতুন বিলম্বিত কৌশলটি ব্যবহার করা use হায়রে প্রোগ্রামের এস এর মধ্যে অন্যতম একজন এর দ্বারা সহায়তা করেছিল।--10
10
10
[N]
এবং [BkG]
ব্লক সদৃশ হয়, তত্কালীন একটি কপি N
দ্বারা বিভক্ত করা হয় 10
।
[{N/10}]
অনুলিপি করা হয়, তারপরে শেষ অঙ্কের ASCII কোড গণনা করার জন্য আরও গাণিতিক ফাংশন ব্যবহার করা N
হয় 48+((-10)*(N/10)+N)
। এই এএসসিআইআই কোড সহ ব্লকটি এফ বিভাগে ছেড়ে দেওয়া হয়েছে।
- একটি নতুন পুনরাবৃত্তির সূচনা সেট করতে ব্লকের
[{N/10}]
মধ্যে অন্য অনুলিপিটি অদলবদল হয়ে যায় [BkG]
।
বোনাস কুইন (540 বাইট)
)$$3371%%1[~!~~!)!]):[)$$20%%0[):]~)~~[)$$12%%0[<$$7%~~0):~[+----48+*-~~10))]<]<~!:~)~~[40~[:~))~:~[)~(~~/[+--48):]~10]+30])):]]][)[H]](11(06(06(21(21(25(19(07(07(19(61(96(03(96(96(03(11(03(63(11(28(61(11(06(06(20(18(07(07(18(61(11(28(63(96(11(96(96(61(11(06(06(19(20(07(07(18(61(30(06(06(25(07(96(96(18(11(28(96(61(13(15(15(15(15(22(26(13(12(15(96(96(19(18(11(11(63(30(63(30(96(03(28(96(11(96(96(61(22(18(96(61(28(96(11(11(96(28(96(61(11(96(10(96(96(17(61(13(15(15(22(26(11(28(63(96(19(18(63(13(21(18(63(11(11(28(63(63(63(61(11(61(42(63(63
এটি অনলাইন চেষ্টা করুন!
যেহেতু আমি নিশ্চিত ছিলাম না যে কোন পদ্ধতিটি সবচেয়ে কম হবে, তাই আমি প্রথমে দুটি অঙ্কের দ্বারা পৃথক পৃথক পৃথক পৃথক অক্ষরগুলিকে এনকোড করার চেষ্টা করেছি (
গুলি । মূল কোডটি কিছুটা ছোট, তবে 50% বৃহত্তর ডেটা উপস্থাপনা এটির জন্য তৈরি করে। অন্যটির মতো গল্ফড নয়, যখন আমি বুঝতে পেরেছিলাম তখন এটি হারাবে না। এটির একটি সুবিধা রয়েছে: এর জন্য বিগনাম সমর্থন সহ একটি প্রয়োগকরণের প্রয়োজন হয় না।
এর সামগ্রিক কাঠামো মূলটির সাথে কিছুটা মিল রয়েছে। বিভাগের উপস্থিতি নিখোঁজ হয়েছে যেহেতু উপাত্তের উপস্থাপনাটি সরাসরি এফ বিভাগে পূরণ করে। যাইহোক, বিভাগ E এ দুটি অঙ্কের সংখ্যার অঙ্কগুলি পুনর্গঠন করতে অবশ্যই একটি অনুরূপ ডিভোড গণনা করতে হবে।