N.Puck,.Page,.Ford,.Ajax,.Act I:.Scene I:.[Enter Puck and Ford]Puck:Listen to thy heart!Ford:You is the difference between a cat and I.Scene V:.[Exeunt][Enter Page and Ajax]Ajax:You is the difference between a cat and Ford.Scene X:.Page:You is the product of Puck and I.Is you as big as zero?If so,you is the sum of the sum of the sum of a big big big big big cat and a big big big cat and a big cat and a cat.If not,you big big big big big cat.Speak thy mind!Ajax:You is the sum of you and a cat.Is you as big as Ford?If not,let us return to Scene X.Page:You is the sum of a big big big cat and a big cat.Speak thy mind![Exit Page][Enter Puck]Ajax:You is the sum of you and a cat.Is you as big as Ford?If not,let us return to Scene V.[Exeunt]
এটি অনলাইন চেষ্টা করুন!
সম্পাদনা করুন: সরকারী এসপিএল বাস্তবায়নের সাথে উত্তরটি সামঞ্জস্য করেছে - আমি এটি আগে কাজ করতে পারি না।
গল্ফড 6 বাইট কারণ দৃশ্যের সংখ্যা একটানা হতে হবে না।
ব্যাখ্যা :
এসপিএল হ'ল একটি ইসলং যা শেক্সপিয়ার নাটকের মতো দেখতে ডিজাইন করা হয়েছে। ধনাত্মক বিশেষ্যগুলির মান 1 (এখানে বিড়াল ব্যবহৃত হয়) এবং negativeণাত্মক বিশেষ্যগুলির মান -1 এর মান থাকে (কোনও কিছুই ব্যবহৃত হয় নি তবে শূকর তার মধ্যে একটি)। বিশেষণগুলি ধ্রুবককে 2 দ্বারা গুণিত করে পরিবর্তন করে।
N.
প্রথম বিন্দু পর্যন্ত সমস্ত কিছুই শিরোনাম এবং কোনও বিষয় নয়।
Puck,. row counter
Page,. column counter
Ford,. input
Ajax,. temp
অক্ষরগুলি পূর্ণসংখ্যার ভেরিয়েবল, তাদের প্রত্যেকের একটি স্ট্যাকও রয়েছে তবে আমার সেই বৈশিষ্ট্যটি ব্যবহার করার দরকার নেই।
Act I:.
Scene I:.
কাজ এবং দৃশ্যগুলি গোটো লেবেল হিসাবে ব্যবহৃত হয়
[Enter Puck and Ford]
ঠিক তখনই কার্যকর যদি দুটি অক্ষর একই সাথে মঞ্চে থাকে।
Puck:Listen to thy heart!
একটি সংখ্যা পড়ে এবং ফোর্ড এটি মনে রাখে makes
Ford:You is the difference between a cat and I.
আপনি দেখতে পাচ্ছেন এনগরিশ এসপিএলে বৈধ। এটি পকের মানকে "একটি বিড়াল এবং আমি মধ্যে আলাদা" করে তোলে। কিন্তু এটার মানে কি? catএটি একটি ইতিবাচক বিশেষ্য, তাই এটি Puck = 1 - Ford।
Scene II:.
[Exeunt]
এক্সান্ট কেবল "বহির্গমন" এর বহুবচন, এবং যুক্তি ছাড়াই মঞ্চের প্রত্যেকে বেরিয়ে আসার অর্থ।
[Enter Page and Ajax]
Ajax:You is the difference between a cat and Ford.
এটি Page = 1 - Fordকিন্তু তবে এটি অন্য অভিনেতা দ্বারা কথা বলেছে তাই Iভুল হবে। যেহেতু এটি একটি লুপ, আমি কেবল এর মানটি অনুলিপি করতে পারি না Puck।
Scene III:.
Page:You is the product of Puck and I.
এখনই বেশ সোজা Ajax = Puck * Page।
Is you as big as zero?
"as [adj] as" ==অপারেটর।
If so,you is the sum of the sum of the sum of a big big big big big cat and a big big big cat and a big cat and a cat.
যদি আজাক্স == 0 ... "বিড়াল" 1 হয়, "বড় বিড়াল" 2 হয়, "বড় বড় বিড়াল" 4 এবং আরও কিছু হয়। সরল স্থির প্রতিস্থাপনের পরে আমরা "32 এবং 8 এবং 2 এবং 1 এর যোগফলের যোগফল" -> "40 এবং 2 এবং 1 এর যোগফল" -> "42 এবং 1 এর যোগফল পাই" -> "43", এটি + এর জন্য ASCII।
If not,you fat fat fat fat fat cat.
অন্যথায় এটি কেবল "ফ্যাট ফ্যাট ফ্যাট ফ্যাট ফ্যাট বিড়াল", তাই অ্যাজাক্স একটি স্থানের জন্য ASCII 32 এর মান পায় gets
Speak thy mind!
এটি একটি অক্ষর আউটপুট করার কমান্ড is
Ajax:
You sum you and cat.Is you as big as Ford?If not,let us return to Scene III.
এটি একটি লুপ কনস্ট্রাক্ট। "আপনি এবং আপনার বিড়ালের যোগফল" ইনক্রিমেন্ট পেজ এবং if(Page != Ford) goto Scene III। প্রোগ্রামের বাকী অংশগুলি একই উপাদানগুলি ব্যবহার করে, তাই এখানে একটি আরও পাঠযোগ্য সিউডোকোড সংস্করণ:
1 ম দৃশ্য:
ইনপুট = [ইনপুট নম্বর];
সারি = 0 - ইনপুট + 1;
Scene2:
কল = 0 - ইনপুট + 1;
Scene3:
অস্থায়ী = সারি * কল;
যদি (অস্থায়ী == 0) {
টেম্প = '+';
} অন্য {
টেম্প = '';
}
putchar (টেম্প);
পৃষ্ঠা = পৃষ্ঠা + 1;
যদি (পৃষ্ঠা! = ফোর্ড) গোটো সিন 3;
আজাক্স = 10;
putchar (অ্যাজাক্স);
ছানা = ছানা + 1;
if (পাক! = ফোর্ড) গোটো সিন 2;