রাখাল বলেছেন


23

আমি ক্লান্ত, তবে মনে হচ্ছে ঘুমিয়ে পড়েছি। আমাকে ভেড়া গণনা করতে সহায়তা করুন।

একটি ইনপুট এন (ধনাত্মক পূর্ণসংখ্যা) দেওয়া হয়েছে, নীচের নমুনার মতো এন ভেড়াকে একটি এসিআই বেড়ের উপরে ঝাঁপ দাও। একবারে কেবল একটি ফ্রেম প্রদর্শিত হবে:

o |-|
──|-|──  0

 o|-|
──|-|──  0

   o
  |-|
──|-|──  0

  |-|o
──|-|──  0

  |-| o
──|-|──  0

o |-|
──|-|──  1

 o|-|
──|-|──  1

   o
  |-|
──|-|──  1

গণনাটি 'গ্রাউন্ড' এর নীচের ডানদিকে রাখতে হবে। ট্রেলিং এবং শীর্ষস্থানীয় হোয়াইটস্পেস এবং নিউলাইনগুলি অনুমোদিত। যদি আপনার পছন্দের ভাষাটি প্রতিটি ফ্রেমের জন্য পর্দা সাফ করতে অসুবিধা হয় তবে আপনি পর্দা সাফ করার জন্য পর্যাপ্ত নিউলাইন যোগ করতে পারেন - দয়া করে আপনার উত্তরে এর জন্য আপনি কতগুলি লাইন যুক্ত করেছেন তা উল্লেখ করুন। N'th ভেড়া পঞ্চম তলাতে থাকলে প্রোগ্রামটি শেষ হওয়া উচিত।

আমাকে আগামীকাল শুরুর দিকে উঠতে হবে, তাই বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী। দয়া করে কোনও ফাংশন বা সম্পূর্ণ প্রোগ্রাম জমা দিন। স্ট্যান্ডার্ড লুফোলস প্রযোজ্য।


6
১. দয়া করে, লোকেরা যখন শর্ট কোডের ন্যায্যতা ব্যবহার করে তখন তা আমার বেদনা দেয় ("আগামীকাল আমার প্রথম দিকে উঠতে হবে") ২. ফ্রেমের মধ্যে আমরা কতটা সাদা অংশ রেখেছি? এটি দেখতে 1 টি নতুন লাইনের মতো মনে হচ্ছে তবে আপনি এটি স্পষ্টভাবে বলতে চাইবেন।
Rɪᴋᴇʀ

12
1) অ্যাসপিরিন নিন 2) স্ক্রিনে কেবল 1 ফ্রেম থাকতে পারে। এই ফ্রেমগুলি এখানে প্রতিটি রাজ্য পৃথকভাবে প্রদর্শন করতে হয় এবং একসাথে 1 স্ক্রিনে দৃশ্যমান হওয়া উচিত নয়।
স্টেনবার্গ

3
অনেক ভাষায় ডিসপ্লে সাফ করার বিকল্প নেই, এ জাতীয় ক্ষেত্রে তাদের কোন আউটপুট সরবরাহ করা উচিত?
জোনাথন অ্যালান

6
"স্ক্রিনটি সাফ করার জন্য পর্যাপ্ত নিউলাইনগুলি যুক্ত করুন"। এটি কি আউটপুট উইন্ডোর আকারের পাশাপাশি পর্দার সমাধানের উপর নির্ভর করে না?
এমিগানা

3
আপনার উদাহরণ অনুসারে, N=3শেষ ফ্রেমে ডান প্রান্তে একটি ভেড়া থাকবে এবং কাউন্টারটি এখনও বলবে 2। এটা কি ঠিক?
লুইস মেন্ডো 15

উত্তর:


15

এমএটিএল , 60 56 53 বাইট

:"@qXJx[HKCbO]"7Z"'  |-|  'v'o'@('--|-|--  '  JVhXxXD

উপরের কোড সহ অ্যানিমেশনটি খুব দ্রুত চলে। নীচের সংস্করণটিতে অ্যানিমেশনটিকে ধীর করে দেওয়ার জন্য আরও বিরতি দেওয়া হয়েছে এবং আরও 4 টি বাইট ব্যয়ে অ্যানিমেশনটি আরও ধীরে ধীরে দেখতে (চ্যালেঞ্জের দ্বারা আবশ্যক নয়) easier

:"@qXJx[HKCbO]"7Z"'  |-|  'v'o'@('--|-|--  '  JVhXxXD.2Y.

এমএটিএল অনলাইন এ চেষ্টা করুন ! দোভাষী একটি বিটা; পৃষ্ঠাটি কাজ না করে রিফ্রেশ করুন।

অথবা অফলাইন সংকলক থেকে একটি রেকর্ডিং দেখুন:

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

ব্যাখ্যা

:"              % Input N implicitly. Repeat N times
  @q            %   Push iteration index minus 1, that is, from 0 to N-1. This
                %   are the numbers of sheep
  XJx           %   Copy into clipboard J and delete
  [HKCbO]       %   Push array [2 4 7 -2 0]
  "             %   For each value in that array. This loops generates the 5
                %   frames for each number of sheep
    7Z"         %     Push string of 7 spaces
    '  |-|  '   %     Push this string
    v           %     Concatenate vertically. This gives a 2x7 char array
                %     with the upper part of the frame, except the 'o',
                %     which will be now placed in a varying position 
    'o'         %     Push string 'o'
    @           %     Push loop variable, that is, 2, 4, 7, -2 or 0
    (           %     Write 'o' into that position of the 2x7 char array.
                %     The position is interpreated linearly, that is, a single
                %     number is used as index into the 2D array in column-major
                %     order (down, then across). So index 2 is lower-left corner,
                %     index 4 is to the right of that etc. Indexing is
                %     semi-modular (modular for non-positive values). So 0 is
                %     the lower-right corner, and -2 is to the left of that
    '--|-|--  ' %     Push this string
    JV          %     Push current number of sheep converted to string
    h           %     Concatenate horizontally
    Xx          %     Clear screen
    XD          %     Display all stack contents
    .2Y.        %     Pause for 0.2 seconds (optional)
                %   End implicitly
                % End implicitly

6

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

f=(n,m=`   2
43|-|10
──|-|── `,s=0)=>n?alert(m.replace(s%5,'o').replace(/\d/g,' ')+' '+(n-1),(++s%5?f(n,m,s):f(n-1,m,0))):''

শেষ ফ্রেম গণনা করা প্রথম প্রদর্শিত হচ্ছে। এই লাফ নম্বরে ধন্যবাদ n-1
সালে alert, charaters বিভিন্ন প্রস্থ আছে তাই এটি দেখে মনে হচ্ছে এটা ভাঙ্গা।


পূর্ববর্তী উত্তর:

120 বাইট, জাম্প নম্বরটি ভুল কারণ এটি 0 এর পরিবর্তে 1 এ শুরু হয়

f=(n,m=`   2
43|-|10
──|-|── `,s=0)=>n?alert(m.replace(s%5,'o').replace(/\d/g,' ')+' '+n,(++s%5?f(n,m,s):f(n-1,m,0))):''

@ লুইস মেন্ডো আমি 0 এ শুরু করার জন্য কাউন্টারটি আপডেট করেছি। বারগুলির জন্য এটি ব্যবহৃত ফন্টের জন্য ধন্যবাদ alert। প্রান্তযুক্ত ক্রোমের চেয়ে আমার একই ফলাফল রয়েছে এবং এটি ফায়ার ফক্সের সাথে আরও খারাপ।
হেডি

6

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

আউটপুট সাফ করে এবং প্রতিটি ফ্রেমের মধ্যে 300 মিমি অপেক্ষা করে:

n=>(F=j=>((c=console).clear(),c.log(`   2
01|-|34
──|-|── `.replace(/\d/g,i=>(j-i)%5?' ':'o')+(j/5|0)),++j<n*5&&setTimeout(`F(${j})`,300)))(0)

আপনি এটি এখানে পরীক্ষা করতে পারেন (কনসোলটি খোলার বিষয়টি নিশ্চিত করুন)।


এই (থেকে পাল্টা বাড়ায় বলে মনে হচ্ছে না 4করার 5) এর পর গত ভেড়া বেড়া ... jumped হয়েছে
ʰᵈˑ

@ ʰᵈˑ - আমি মনে করি এটি প্রত্যাশিত আচরণ। (চ্যালেঞ্জ মন্তব্যগুলিতে লুই মেন্ডোর প্রশ্ন দেখুন।)
আর্নল্ড

আহা হ্যাঁ, আমি এটি পড়িনি - অন্য কারও জন্য মন্তব্য করার লিঙ্ক
ʰᵈˑ

4

রুবি, 83 বাইট

->n{(n*5).times{|i|$><<"   c
  |-|  
ab|-|de  #{i/5}
".tr('abcde',' '*(i%5)+'o ')}}

ছদ্মবেশে প্রিন্ট। নিউলাইনগুলি দ্বারা আউটপুট পৃথক। স্ক্রিনের উচ্চতা 3 কে হ্রাস করা একবারে কেবলমাত্র একটি চিত্র দৃশ্যমান করে তোলে।


4

সি #, 234 বাইট

using C=System.Console;class P{static void Main(string[]a){for(int n=0;n-1+""!=a[0];++n){foreach(int p in new[]{5,6,3,10,11}){C.Clear();C.Write("    \n  |-|  \n──|-|── ".Remove(p,1).Insert(p,"o")+n);for(var w=3e7;w>0;--w);}}}}

প্রথম নজরে, কিছু শ্বেত স্পেস রয়েছে যা কাছাকাছি string[] argsএবং কাছাকাছি ছিল for (intInt32.Parseহতে পারে int.Parse
ইয়াতসি 17

1
আপনি ক্লাসের নামটি Programকেবল Pবা অন্য কিছুতে পরিবর্তন করতে পারেন
মাতিয়াস সিসেরো

1
stringহতে পারে var। লুপের জন্য পূর্ণসংখ্যা একই সময়ে আপনি args[0]কোনও সংখ্যায় পার্স করার সময় আরম্ভ করতে পারেন ।
ইয়াতসি 11

আমি আপনাকে প্রতিবার বাইট গণনাটি কম করার সময়ে সম্পাদনা করতে দেখছি। তবে, অগ্রগতি
অবলম্বন

আপনার কেবল একটি ফাংশন থাকা দরকার যাতে একটিতে সংকলন করা যায় Action<string[]>এবং আপনি লুপের জন্য বাইরের চারপাশের বন্ধনীগুলি সরিয়ে ফেলতে পারেন তাই আমার বিশ্বাস আমি 200 বাইট পেয়ে যাব:using C=System.Console;a=>{for(int n=0;n-1+""!=a[0];++n)foreach(int p in new[]{5,6,3,10,11}){C.Clear();C.Write(" \n |-| \n──|-|── ".Remove(p,1).Insert(p,"o")+n);for(var w=3e7;w>0;--w);}};
TheLethalCoder

3

পিএইচপি + জাভাস্ক্রিপ্ট, 168 বাইট

<?extract($_GET);$s="     ";$s[$f=++$f%5]=o;echo strtr("<pre>   C
AB|─|DE
──|─|── $c",EABCD,$s),($c+=!$f)<$n?"<script>location.href='s.php?n=$n&c=$c&f=$f'</script>":"";

ফাইলে সংরক্ষণ করুন s.php, সাথে ব্রাউজারে কল করুন s.php?n=<n>

প্রতিটি ফ্রেমের জন্য নতুন প্যারামিটারগুলির সাথে নিজেকে কল করে, কোনও বিলম্ব নেই।


আমি এর সাথে আরও 5 টি সঞ্চয় করতে পারি index.php; তবে আমি এতদূর যেতে চাই না।


আমি পিএইচপি 5 এবং 7 এ চালানোর চেষ্টা করেছি, তবে সমস্ত ক্রোম আমাকে দেয় C AB|─|DE ──|─|── $c",EABCD,$s),($c+=!$f)<$n?"
স্টেনবার্গ

@ সপ্তনবার্গ আপনি short_open_tagঅক্ষম করেছেন এটি সক্ষম করুন (ডিফল্ট) বা phpপরে + স্পেস যুক্ত করুন <?
টাইটাস

হ্যাঁ, এটা। এটা এখন চলমান আছে।
স্টেনবার্গ

3

টিসিএল, 168 বাইট

10-সারি-উচ্চ স্ক্রিন ব্যবহার করে সংস্করণ। ( 7আপনার পর্দার উচ্চতার সাথে কলাম বিয়োগ চারে নীচে প্রতিস্থাপন করুন ))

set s {0 1 2 3 4 }
for {set n 0} {$n<$argv} {incr n} {foreach x $s {
puts [string repe \n 6][string map [split $s {}] [string map "$x o" {   2
01|-|34
--|-|--  }]]$n}}

এটি সত্যিই দ্রুত সঞ্চালিত হয়, সুতরাং আপনি দুটি লাইনে একটি বিরতি যুক্ত করতে পারেন:

টিসিএল, 177 বাইট

set s {0 1 2 3 4 }
for {set n 0} {$n<$argv} {incr n} {foreach x $s {after 250
puts [string repe \n 6][string map [split $s {}] [string map "$x o" {   2
01|-|34
--|-|--  }]]$n}}

এটি দুটি পৃথক জিনিসের জন্য শীর্ষে স্ট্রিংটি পুনরায় ব্যবহার করে কাজ করে:

  • অভ্যন্তরীণ লুপের জন্য তালিকা হিসাবে (মেষ + বেড়ার প্রতিটি সংস্করণ প্রদর্শন করতে)
  • ভেড়া + বেড়া চিত্র টেমপ্লেট থেকে অঙ্কগুলি সরাতে অঙ্ক-স্থানের ম্যাপিং হিসাবে

টেমপ্লেটটি নিজেই প্রদর্শিত স্ট্রিং চিত্র। প্রথমে আমরা ভেড়ার বর্তমান অবস্থানের অঙ্ক (অভ্যন্তরীণ লুপ) একটি 'ও' তে ম্যাপ করি (স্ট্রিং প্রতিস্থাপন করি)। তারপরে আমরা বাকী অঙ্কগুলি ফাঁকে ফাঁকে ম্যাপ করি। তারপরে আমরা ফলস্বরূপ স্ট্রিংটি মুদ্রণ করি।

(স্ট্রিংটি নিজেই শেষের পরে শুরু হয় third তৃতীয় লাইনে এবং শেষ লাইনে বামদিকে with দিয়ে শেষ হয়))


3

কিউব্যাসিক, ১১০ বাইট

INPUT n
FOR i=0TO 5*n-1
CLS
?
?"  |-|"
?"--|-|-- ";i\5
x=i MOD 5
LOCATE(x=2)+2,1+x-(x>1)+x\3
?"o"
SLEEP 1
NEXT

5*nটিক্স উপর লুপ । প্রতিটি টিক এ, স্ক্রিন সাফ করে, স্টাইল এবং ভেড়া গণনা প্রিন্ট করে এবং তারপরে উপযুক্ত জায়গায় LOCATEমুদ্রণ করতে ব্যবহার করে ox0 থেকে 4 এর মধ্যে অবস্থানের কোড হওয়ার সাথে :

  • সারি: (x=2)+2
    • যদি x=2সত্য হয়, -1+2=1
    • যদি x=2মিথ্যা হয়, 0+2=2
  • কলাম: 1+x-(x>1)+x\3
    • যদি xহয় 0বা 1, x>1মিথ্যা হয় এবং x\3হয় 0: 1+x-0+0= 1বা2
    • যদি xহয় 2, x>1সত্য এবং x\3হয় 0: 1+x-(-1)+0=4
    • যদি xহয় 3বা 4, x>1সত্য হয় এবং x\3হয় 1: 1+x-(-1)+1= 6বা7

অবশেষে, SLEEP1 সেকেন্ড এবং লুপের জন্য। আপনি যদি প্রতিটি ফ্রেমে প্রবেশ করে আঘাত করতে আপত্তি না করেন তবে আমি যুক্তিটি সরিয়ে দুটি বাইট শেভ করতে পারি SLEEP


3

পিএইচপি, 132 131 বাইট

মন্তব্যের পরে সম্পাদনা (ধন্যবাদ!):

<?php for(;$i<$argv[1]*5;sleep(1),system(clear),$c="    
  |-|  
──|-|──  ".floor($i/5),$c[[5,6,3,10,11][$i++%5]]=o)echo$c;

কোনটি অবরুদ্ধ:

<?php

ini_set('error_reporting', '0');        # golfing precondition

for(; $i<$argv[1]*5;                    # repeat N times
  sleep(1),                             # sleep after iteration
  system(clear),                        # clear screen (linux only)
  $c = "    
  |-|  
──|-|──  " . floor($i / 5),             # define template
  $c[[5, 6, 3, 10, 11][$i++ % 5]] = o)  # replace with sheep (and finish "for" statement)
  echo $c;                              # output result

আসল পোস্ট

<?php $i=0;for(;;){system("clear");$c="  \n  |-|  \n──|-|──  ";$c[[3,4,1,8,9][$i%5]]='o';echo"  $c".floor($i++/5);sleep(1);}

উবুন্টুতে পরীক্ষিত (জানিনা, system("clear")উইন্ডোতে কাজ করে কিনা )

Ungolfed:

<?php
$i = 0;
for(;;) {
  system("clear");
  $content = "  \n  |-|  \n──|-|──  ";
  $content[[3,4,1,8,9][$i%5]] = 'o';
  echo "  $content " . floor($i++/5);
  sleep(1);
}

1
আইডিকে হয় উইন্ডোজ সম্পর্কে, তবে আমি নিশ্চিত যে এর clearকোনও উদ্ধৃতি দরকার নেই।
টাইটাস

1
উইন্ডোজ সম্পর্কে চিন্তা করা ... এটি clsডস ছিল ।
তিতাস

1
সরান $i=0;, সতর্কতাগুলি সাধারণত কোড গল্ফ (-5 বাইট) এ প্রদর্শিত হয় না। একই কারণে, আপনার চারপাশে কোট clearএবং o(-4 বাইট) লাগবে না । \nগুলিটিকে রিয়েল নিউলাইনগুলি (-২ বাইট) দ্বারা প্রতিস্থাপন করুন । যেহেতু আপনার কেবল এক্সপ্রেশন রয়েছে, কোনও বিবৃতি নেই, তাই আপনি forবন্ধনীর ( for(;;system(clear),$c=…)sleep(1);) (-2 বাইট) অপসারণের অনুমতি দিয়ে আপনার লুপে সর্বশেষ ব্যতীত সমস্ত কিছুই রাখতে পারেন । এবং পরিশেষে, আপনি শর্তটি $i<$argv[0](+ 11 বাইট) যুক্ত করতে ভুলে গেছেন।
ব্ল্যাকহোল 14

ধন্যবাদ! লুপের প্রতিধ্বনি পেলাম না। তবে পুনরায় পোস্ট করা সমাধানটি এটি করছে।
user470370

3

node.js + ঘুম , 169 বাইট

c='   2\n01|-|34\n──|-|──  '
for(i=0;i<process.argv[2]*5;require('sleep').sleep(1))console.log('\033[2J'+c.replace(i%5,'o').replace(/\d/g,' ')+Math.floor(i++/5))

আসল সমাধান

নোড.জেএস, 146 142 185 বাইট

কেবল উবুন্টু টার্মিনাল দিয়ে পরীক্ষা করা হয়েছে (এবং এখন এন ভেড়া সহ):

i=0
c='   2\n01|-|34\n──|-|──  '
setInterval(function(){console.log('\033[2J'+c.replace(i%5,'o').replace(/\d/g,' ')+Math.floor(i++/5))
if(process.argv[2]*5==i)process.exit()},9)

ঠিক আছে, এটি প্রতি 9 এমএসে একটি ফ্রেম। আরও বেশি ঘুমের সংস্করণ (প্রতি 1 এস ফ্রেম):

i=0;setInterval(function(){console.log('\033[2J'+'   2\n01|-|34\n──|-|──  '.replace(i%5,'o').replace(/\d/g,' ')+Math.floor(i++/5))},1000)

এবং অবরুদ্ধ:

var i = 0;
setInterval(function(){
  console.log('\033[2J' + '   2\n01|-|34\n──|-|──  '.replace(i%5, 'o').replace(/\d/g, ' ') + Math.floor(i++/5));
}, 1000)

আমার প্রথম সমাধানে আমি এন
ভেড়াগুলির

2

05 এ বি 1 ই , 66 60 59 বাইট

FNU5Fð4×N<i¨'oJ},N<iðë'o}ðNÉis}"|-|  "JN1›iR},…──|Â'-sððXJ,

ব্যবহার সিপি-1252 এনকোডিং।

Explanantion

Iteration ভেড়া ভ্রমণের অভ্যন্তরীণ পুনরাবৃত্তি (0 -> 4) বোঝায়।

প্রধান লুপগুলি

F      # For N in range [0 .. input)
 NU    # Save N in variable X
 5F    # For N in range [0 .. 5)

শীর্ষ সারিতে উত্পন্ন করুন

ð4×         # push 4 spaces
N<i    }    # if we're on the 2nd iteration
   ¨'oJ     # replace the last space with an "o"
,           # print row

মাঝারি সারি তৈরি করুন

N<iðë'o}     # push a space if we're on the 2nd iteration, else push "o"
ð            # push a space
NÉis}        # if we're on an odd numbered iteration, swap the stacks top 2 chars
"|-|  "      # push this string
J            # join the stack to one string
N1›iR}       # if we're on the any of the last 3 iterations, reverse the string
,            # print row

নীচে সারি তৈরি করুন

…──|  # push the string "──|"
     # push a reversed copy
'-s   # push "-" between the 2 strings on the stack
ðð    # push 2 spaces
X     # push the N we saved in the main loop (current sheep number)
J,    # join and print row

1

জেলি , 55 54 53 বাইট

ị30214D¤“o    ”ṙ“   “
““|-|““
__|-|__  ”ż
×5Ḷµ:5ż@Ç€Y

TryItOnline

প্রিন্ট ফ্রেমগুলি লাইন ফিড দ্বারা পৃথক করা।

কিভাবে?

ị30214D¤“o    ”ṙ“   “
““|-|““
__|-|__  ”ż           - Link 1, build a frame without counts: frameNumber
       ¤              - nilad and link(s) as a nilad:
 30214                -     literal 30214 (a nilad)
      D               -     to decimal: [3,0,2,1,4]
ị                     - index into (1-based and modular, so frames go 4,3,0,2,1,4,...)
        “o    ”       - string "o    "
               ṙ      - rotated to the left by that number
                “   “ - the rest, except the last character, is:
““|-|““               -     an array of strings ["   ","\n","","|-|","","\n__|-|__  "]
__|-|__  ”            -     i.e. split where a sheep might go

          ż           - zip the sheep (the rotated "o    ") into that

×5Ḷµ:5ż@Ç€Y - Main link: nSheep
×5          - multiply by 5 -> nFrames
  Ḷ         - lowered range: [0,1,2,...nFrames-1]
   µ        - monadic chain separation
    :5      - integer division by 5 (vectorises): [5 zeros, 5 ones, ..., 5 (nSheep-1)s]
      ż@    - zip with reversed arguments
        ǀ  - call last link (1) as a monad for each (zip sheep numbers with frames)
          Y - join with line feeds (TODO: replace with future animate frames atom :p)

1

পাইথন 2, 171 159 144 বাইট, 163 151 136 টি অক্ষর

পুনরাবৃত্তি ফাংশন ব্যবহার করে সমাধান। F (int) হিসাবে কল করুন

সম্পাদনা

-12 মন্তব্যগুলি পড়ার পরে এবং মেষগুলি ক্ষেতের শেষ প্রান্তে পৌঁছলে গণনা বৃদ্ধি করতে হবে না তা দেখার পরে

-15 সরাসরি সূচক তালিকার মাধ্যমে পুনরাবৃত্তি করে এবং একটি ভেরিয়েবল হারাতে

def f(a,x=0):
 if a>0:
  for c in 5,6,3,10,11:
   b=list('    \n  |-|  \n──|-|──  ');b[c]='o';print"\n"*50+"".join(b)+(`x`)
  f(a-1,x+1)

নোট

অনুমান করে ইউটিএফ -8 এনকোডিং

Of এর পরিবর্তে (@ লুইস এমএটিএল উত্তরের হিসাবে) ব্যবহার করে অক্ষর গণনার সাথে মেলে বাইট গণনাটি 8 কে কমিয়ে আনে এবং ইউটিএফ -8 নির্ভরতা হারাবে

50 টি নতুন লাইন যুক্ত হয়েছে - কনসোলের আউটপুট নীচে রয়েছে (ওএস.সিস্টেম আমদানি ও ব্যবহারের তুলনায় সস্তা ("পরিষ্কার") এবং উইন্ডোজ এবং লিনাক্সে কাজ করে)

আউটপুটগুলির মধ্যে 1 দ্বিতীয় বার দেরি সহ সংস্করণ (170 বাইট, 162 টি অক্ষর)

import time
def f(a,x=0):
 if a>0:
  for c in 5,6,3,10,11:
   b=list('    \n  |-|  \n──|-|──  ');b[c]='o';print"\n"*50+"".join(b)+(`x`);time.sleep(1)
  f(a-1,x+1)

1

বাশ + স্ট্যান্ডার্ড লিনাক্স ইউটিলিটিস (৩৩৯ বাইট)

e(){ echo "$@";}
n(){ e -n "$@";}
r(){ [ $? -eq 0 ]&&s=o||s=" ";[ $1 ]&&n " $s "||n "$s";}
f(){ k=$(($1%5));n "  ";[ $k -eq 2 ];r .;e "  ";for i in 0 1;do [ $k -eq $i ];r;done;n "|-|";for i in 3 4;do [ $k -eq $i ];r;done;e;n "──|-|──";}
for l in `seq 1 $1`;do for z in `seq 0 4`;do clear;f $z;e "  $((l-1))";sleep 1;done;done
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.