আমাকে একটি নকল লোডার করুন


29

ঠিক এইভাবে একটি নকল লোডার তৈরি করুন:

পরামিতি:

  • এর মধ্যে একটি চক্রীয়ভাবে loading(স্পেস) প্রদর্শন করুন (স্থান) -\|/(0-100 থেকে শতাংশের পাল্টা) তারপরে ক %
  • শতাংশের পাল্টা প্রতিবার প্রদর্শন পরিবর্তিত হওয়ার সাথে সাথে 1 দ্বারা বাড়ার কথা।
  • পরবর্তী পুনরাবৃত্তিতে ঝাঁপ দিতে কাউন্টার দ্বারা নেওয়া সময়টি এলোমেলো। র্যান্ডম কোন ধরনের যতদিন ফাংশন / পদ্ধতি সীমার মধ্যে সব এলোমেলো পূর্ণসংখ্যার থাকার সম্ভাব্যতা> 0 উৎপাদিত করতে সক্ষম কি করতে হবে 1<= ms <=750এখানে msমিলিসেকেন্ডে সময় হচ্ছে।
  • শুরুloading - 0 %
  • শেষ সময়ে loading - 100 %
  • কোন ইনপুট প্রয়োজন হয় না।
  • একটি সম্পূর্ণ প্রোগ্রাম বা ফাংশন বা অনুরূপ যা কিছু জমা দিন ।

আমি যে কোডটি ব্যবহার করেছি:

সি ++

#include<stdio.h>
#include<time.h>
#include<windows.h>

int main()
{
    srand(time(NULL));
    char a[15],b[]="-\\|/";
    int i=0,j=0,ms;
    while(j<101)
    {
        (i<3)?i++:i=0;
        wsprintf(a,"loading %c %d ",b[i],j++);
        printf(a);puts("%");
            //This part is to make the output look cool
        switch(rand()%9)
        {
            case 0:ms=1;break;
            case 1:ms=2;break;
            case 2:ms=5;break;
            case 3:ms=10;break;
            case 4:ms=15;break;
            case 5:ms=20;break;
            case 6:ms=25;break;
            case 7:ms=50;break;
            case 8:ms=500;
        }
        Sleep(ms);  //Otherwise this is supposed to be random
        if(j<101)   //like this Sleep(rand()%750+1);
        system("cls");
    }
}

বিজয়ী

  • ন্যূনতম বাইটস সহ কোডটি জয়ী হয়।


1
আমি এটি একটি সদৃশ মনে করি নি। এই প্রশ্নটি> <> এ প্রয়োগ করা যাবে না, তবে উদাহরণস্বরূপ *> <> এ থাকতে পারে। আমার বেশ পছন্দ হয়েছে।
রেড স্টারকোডার

1
@ মেগো প্রশ্নটি সদৃশ নয়। আউটপুটটি একটু আলাদা, রানটাইম সম্পূর্ণ ভিন্ন l এবং আউটপুটে একটি নির্দিষ্ট 250 মিমি বিলম্বের পরিবর্তে এলোমেলো সময় প্রয়োজন । একটি প্রশ্নের উত্তরগুলি ভারী পরিবর্তন ছাড়া অন্যটিতে ব্যবহার করা যাবে না। দয়া করে প্রশ্নগুলি পড়ুন।
ইসমাইল মিগুয়েল

8
অন্যান্য চ্যালেঞ্জের লেখক হিসাবে আমি দুপ বিতর্কে পদক্ষেপ নেব। যদিও সাইক্লিং চরগুলি ( \|/-) একই, তবে উত্তরটি পৃথক বলে মনে হয় যে এটি অসীম নয় এবং স্থির আউটপুটের পরিবর্তে এলোমেলো সংখ্যার প্রজন্মকে জড়িত। অতএব আমি বলব, যদিও প্রথমদিকে আমার অনুলিপি অনুভূত হয়েছিল, এটি আমার কাছে একটি ছোপের মতো লাগে না।
ফ্লিপট্যাক

@ flp.tkc এই ধারণাটি অনেকগুলি জায়গা থেকে মিলিত হয়েছিল যেমন আমি -\|/কিছু গেমসে দেখেছি nd এবং আমি কনসোল ইনস্টলেশন প্রোগ্রাম থেকে অনুপ্রাণিত হয়েছিল।
মুকুল কুমার

উত্তর:


6

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

101:"'loading'O'-\|/'@)O@qVO37&hD750Yr100/&Xx

অফলাইন সংকলকটিতে চালিত উদাহরণ:

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

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

ব্যাখ্যা

101:          % Push array [1 2 ... 101]
"             % For each
  'loading'   %   Push this string
  O           %   Push 0. When converted to char it will be displayed as a space
  '-\|/'      %   Push this sring
  @)          %   Modular index into this string with iteration index
  O           %   Push 0
  @q          %   Iteration index minus 1
  V           %   Convert to string
  O           %   Push 0
  37          %   Push 37, which is ASCII for '%'
  &h          %   Concatenate horizontally into a string, Numbers are converted to char
  D           %   Display
  750Yr       %   Random integer with uniform distribution on [1 2 ... 750]
  100/        %   Divide by 100
  &Xx         %   Pause that many tenths of a second and clear screen
              % End (implicit)

16

পাওয়ারশেল, 71 68 65 বাইট

অনুরূপ https://codegolf.stackexchange.com/a/101357/59735

বোকা না হয়ে 3 বাইট সংরক্ষণ করা হয়েছে (লোড করার পরে ... ছেড়ে দিন)

-3 ভিজ্যুয়েলমেলনকে ধন্যবাদ

750 অন্তর্ভুক্ত রয়েছে তা নিশ্চিত করতে 750 -> 751 পরিবর্তন হয়েছে।

0..100|%{cls;"loading $("|/-\"[$_%4]) $_ %";sleep -m(random 751)}

ব্যাখ্যা:

0..100|%{                                  #For range 0-100...
    cls                                    #Clear Display
    "loading $("|/-\"[$_%4]) $_ %"    #Display the current string
    sleep -m(random 750)                  #Sleep random ms up to 750
}

আপডেট gif

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


আপনার আউটপুট ঠিক একই নয় দয়া করে আমার জিআইএফ দেখুন এবং আপনার নিজের সংশোধন করুন
মুকুল কুমার

আমি মনে করি আপনি পরে স্থানটি ফেলে দিতে পারেন -m, এবং চারপাশে প্রথম বন্ধনী হারাতে পারেন $_%4(মনে হচ্ছে আমার বক্সে কমপক্ষে কাজ করবে)।
ভিজ্যুমেলন

@ ভিজুয়ালমেলন ধন্যবাদ, ()আমি যে অন্য চ্যালেঞ্জগুলি থেকে সোজা আমার কোডটি অনুলিপি করেছি সেগুলি থেকে রক্ষা পেয়েছি।
ডেস্ক

8

পাইথন 2, 119 113 112 বাইট

আমি মূলত এলোমেলো পরিমাণে চলে গিয়েছিলাম random()/.75তবে শেষের পয়েন্টটি অন্তর্ভুক্ত করা হবে না। এলোমেলোতা এবং এটি আসলে শেষ হওয়ার সত্যতা ব্যতীত অসীম লোড সময়ের জন্য অন্যান্য প্রশ্নের সাথে এ থেকে খুব বেশি পার্থক্য নেই।

import time,random as r
for i in range(101):print'\rLoading','-\|/'[i%4],i,'%',;time.sleep(r.randint(1,750)/1e3)

6 জন বাইট সংরক্ষণের জন্য জনাথন অ্যালান এবং বাইট বাঁচানোর জন্য ডিজেএমসিমেহেমকে ধন্যবাদ!


1
6 বাইট সংরক্ষণ import time,random as rএবং r.randint
জোনাথন অ্যালান

@ জোনাথান অ্যালান বুঝতে পারেনি যে আপনি এর মতো আমদানি করতে পারবেন, ধন্যবাদ!
কেডে

: লুপ জন্য একটি সামান্য খাটোfor i in range(101):print'\rLoading','-\|/'[i%4],i,'%',;time.sleep(r.randint(1,750)/1e3)
DJMcMayhem

@ ডিজেএমসিমেহেম উফস, আমি range(1,101)কোনও কারণে এটি পরীক্ষা করে দেখছিলাম ..
কেডে

Acttually, আমি কিছু পাওয়া অন্য 3 খাটো বাইট:i=0;for c in'-\|/'*25:print'\rLoading',c,i,'%',;time.sleep(r.randint(1,750)/1e3);i+=1
DJMcMayhem

6

ব্যাচ, 185 বাইট

@set s=-\!/
@for /l %%i in (0,1,100)do @call:l %%i
@exit/b
:l
@cls
@set c=%s:~0,1%
@set s=%s:~1%%c%
@echo Loading %c:!=^|% %1 %%
@set/aw=%random%%%751
@ping>nul 1.1 -n 1 -w %w%

দুর্ভাগ্যক্রমে সময়টি মোটামুটিভাবে খারাপ, তবে ব্যাচের ব্যবহারের চেয়ে আরও ভাল কিছু নেই ping


এটি শুধুমাত্র উইন্ডোজে কাজ করে। ফ্রিকম ডস ব্যাচ দেয় Loading % Invalid switch. - /aw (আমি এখনও আমার অনুলিপিটি খুঁজে পেতে পারলে এমএস ডসটিতে এটি চেষ্টা করতে পছন্দ করব)।
ব্রায়ান মিন্টন

@ ব্রায়ানমিন্টন: এমএস ডস (পিং কমান্ড নয়) এটি শুভকামনা
জোশুয়া

উন্নত পরিবর্তনশীল বিকল্পগুলির কারণে @ ব্রায়ানমিন্টন এটির জন্য সিএমডি.এক্সই প্রয়োজন।
নীল

@ জোশুয়া ওয়েল, অন্তত অন্তর্নির্মিত নয়; উইন্ডোজ 2000 পর্যন্ত এটি ঘটেনি
নীল

6

*> <> (স্টারফিশ), 86 82 বাইট

| v1*aoooooooo"loading K"&0"-\|/"
!0x1! +
%$<.0+af{od;?)*aa&:&Soono$&+1:&"  %"{o:}

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

এটি আরও গল্ফ হতে সক্ষম হতে পারে তবে আমি সুস্পষ্ট কিছু দেখতে পাচ্ছি না। এটি 100 মি, 400 মিমি বা 700 মিমি ঘুমায়, যদি এটি পর্যাপ্ত পরিমাণে এলোমেলো না হয় তবে আমাকে জানান!

আমাকে 4 টি বাইট সংরক্ষণ এবং এটিকে আরও এলোমেলো করে দেওয়ার জন্য @TeelPelican কে ধন্যবাদ!

আমি যে সর্বাধিক চ্যালেঞ্জগুলি পেয়েছি (এটি এখনও ছোট রাখার চেষ্টা করা হয়েছিল) তা এলোমেলোভাবে ছিল এবং প্রকৃতপক্ষে আমার কাছাকাছি সুবিধার্থে কেবল প্রস্থান করার পরিবর্তে শেষে "লোডিং - 100%" আউটপুট করা হয়েছিল: পি।


1
আরে, আমি এটি <> ভাষাটিকে পছন্দ করি, এটি আরও অনেক চ্যালেঞ্জ খুলে দেয়: ডি - আপনার কোডটিতে আমি কিছুটা টুইট করতে পেরেছিলাম এবং এটিকে আমি খুব বেশি কমাতে পারি নি তবে এলোমেলো সংখ্যা পরিবর্তন করেছি। > <> কোডের সাথে লিঙ্ক করুন *> <> এ কার্যকর করার জন্য কেবলমাত্র পরিবর্তনটি সময়টি ব্যবহার করার জন্য কোড লিঙ্ক থেকে এস এ পরিবর্তন করতে হবে। এটি 749 অবধি সমস্তভাবে এলোমেলো সংখ্যা তৈরি করে এবং কিছু অতিরিক্ত স্ট্যাক ক্রিয়াকলাপগুলি কেটে দেয়। পিএস আমি এটি পছন্দ করতাম যদি আপনি *> <> অনলাইন অনুবাদক তৈরি করতে পারেন: ডি
টিল পেলিকান

1
@ ট্রিপেলিকান, ধন্যবাদ! আমি আপনার পরিবর্তনগুলি বিশেষত এলোমেলো সংখ্যা জেনারেটর ভালবাসেন! আমি একটি অনলাইন *> <> দোভাষী: পি। আমি জেএসের সাথে প্রায়শই প্রায় খেলি না, তবে আমি দু'জনই জেএসের সাথে খেলতে দেখব, বা গোফেরজেএসের মাধ্যমে গোপনীয় দোভাষীকে প্রথম দিকে শুরুর দিকে চালাচ্ছি। :)
redstarcoder

1
ধন্যবাদ, এটি একটি কার্যক্ষম সংস্করণ নিয়ে আসলে কিছুক্ষণ সময় নিয়েছিল তবে এটি মনে হচ্ছে মোস্টেড গল্ফড আমি উত্পন্ন করতে পারি। আমি এটির জন্য আমার নজর রাখব এবং না পারলে অজগরটি তৈরি করতে পারে। আমি এখনও মনে করি প্রথম লাইনটি আরও কিছুটা গল্ফ করা যেতে পারে তবে আমি নিজে এটি করতে পারিনি।
টেলি পেলিকান

1
@ ট্রিপেলিকান আশা করি এটি অনলাইনে দোভাষী চুলকাকে পূরণ করে, বা কমপক্ষে বলটি ঘূর্ণায়মান। আমি পরে কোড ভাগ করার একটি উপায় সন্ধান করতে যাচ্ছি। starfish.000webhostapp.com
redstarcoder

1
এটি দ্রুত ছিল, কেবল এখন এটিতে প্রোগ্রামটি চালাচ্ছে এবং ঠিকঠাক কাজ করছে বলে মনে হচ্ছে: ডি আমি এই সপ্তাহে কিছু চ্যালেঞ্জের জন্য এটি ব্যবহার করার চেষ্টা করব।
টেলি পেলিকান

5

পার্ল 6 , 67 বাইট

for |<- \ | />xx* Z 0..100 {print "\rloading $_ %";sleep .750.rand}

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

for

  # produce a list of all the pairs of values

  |<- \ | /> xx *   # a flat infinite list of "clock faces"
  Z                 # zipped with
  0 .. 100          # all the numbers from 0 to 100 inclusive

  # &zip / &infix:<Z> stop on the shortest list

{

  # 「$_」 will look something like 「("/", 39)」
  # when it is coerced to a Str, all of its elements
  # will be coerced to Str, and joined with spaces

  print "\rloading $_ %";

  sleep .750.rand

}

4

জাভাস্ক্রিপ্ট (ES6), 128 118 116 115 112 110 109 বাইট

এটি "র্যান্ডম" সংখ্যার এই স্কেচি উত্সের সাথেও পুরোপুরি সূক্ষ্মভাবে কাজ করে বলে মনে হচ্ছে।

(X=_=>setTimeout(i>99||X,1+new Date%750,document.body.innerHTML=`<pre>Loading ${'-\\|/'[i%4]} ${i++}%`))(i=0)


বিকল্প 1 , জাভাস্ক্রিপ্ট + এইচটিএমএল, 16 + 84 বাইট

বাকী সামগ্রীটি প্রদর্শন করতে এটি ইতিমধ্যে বিদ্যমান উপাদান ব্যবহার করে:

(X=_=>setTimeout(i>99||X,1+new Date%750,a.innerHTML=`${'-\\|/'[i%4]} ${i++}%`))(i=0)
Loading <a id=a>

বিকল্প 2 , 95 বাইট

যদি আমি ধরে নিতে পারি যে কোনও ট্যাব খোলা হয়েছে এবং আপনি এটি কনসোলে আটকে দিচ্ছেন:

(X=_=>setTimeout(i>99||X,1+new Date%750,document.title=`Loading ${'-\\|/'[i%4]} ${i++}%`))(i=0)

এইচটিএমএল দেখানোর পরিবর্তে নথির শিরোনাম বদলে যাবে।


2 বাইট সংরক্ষণের জন্য @ ইউজার 2428118 কে আপনাকে ধন্যবাদ !


আপনি দুটি বাইট সংরক্ষণ করতে ()পরে ড্রপ করতে পারেন Date
ব্যবহারকারী 2428118

@ user2428118 আমি জানতাম না যে এটি কাজ করে! বখশিষের জন্য ধন্যবাদ.
ইসমাইল মিগুয়েল

4

এফ #, 118 বাইট

async{let r=System.Random()
for i in 0..100 do printf"\rLoading %O %d %%""|/-\\".[i%4]i;do!Async.Sleep(r.Next(1,750))}

এই স্নিপেটটি চালানোর জন্য, এটিতে Async.Startবা পাস করুন Async.RunSynchronously


এফ # এর কারণে তাত্ক্ষণিক উর্ধ্বে
স্নোফায়ার

4

পিএইচপি, 90 83 80 78 77 বাইট

77:

বন্ধ করার ;দরকার নেই।

for(;$i<101;usleep(rand(1,75e4)))echo"\rloading ",'-\|/'[$i%4],' ',$i+++0,'%'

78:

ভেরিয়েবলটি আরম্ভ না করে প্রাথমিকভাবে 0 পাওয়ার জন্য অন্য কাজের সন্ধানের সময় আমি এটিকে সামনে নিয়ে এসেছি:

for(;$i<101;usleep(rand(1,75e4)))echo"\rloading ",'-\|/'[$i%4],' ',$i+++0,'%';

কয়েক বাইট জিতে ইকোতে ফিরে এসেছি কারণ আমি কেবল প্রিন্টফকে ইনট হিসাবে জোর-ফর্ম্যাট হিসাবে ব্যবহার করেছি। বর্ধিত $ i সহ 0 বৃদ্ধি করে আমি একটি বৈধ পূর্ণসংখ্যা পাই। স্ট্রিং ডিলিমিটার হিসাবে একক উদ্ধৃতি ব্যবহার করে ব্যাকস্ল্যাশ এড়াতে হবে না, ফলস্বরূপ অন্য বাইট মুক্ত হয়

80:

প্রবন্ধের শেষ বিভাগ থেকে। I এর ইনক্রিমেন্টটি সরানো আমাকে আরও 3 টি ছুটি দিয়েছে। (নীচের মন্তব্য দেখুন)

for(;$i<101;usleep(rand(1,75e4)))printf("\rloading %s %d%%","-\\|/"[$i%4],$i++);

83:

লোডারসেটস সহ একটি ভেরিয়েবলের init সরানো।

for(;$i<101;usleep(rand(1,75e4)),$i++)printf("\rloading %s %d%%","-\\|/"[$i%4],$i);

90:

আমি কিছু বাইট অর্জনের জন্য the i এর আরম্ভটি সরিয়ে দেওয়ার চেষ্টা করেছি, কারণ লোডার অ্যানিমেশনটি সক্ষম করতে আমাকে বেশ কয়েকটি যুক্ত করতে হয়েছিল। প্রিন্টএফ প্রতিধ্বনির বিপরীতে 2 যোগ করে তবে 0 এর ফলাফল হিসাবে পূর্ণসংখ্যার হিসাবে NULL ফর্ম্যাট করে।

for($l='-\|/';$i<101;usleep(rand(0,750)*1e3),$i++)printf("\rloading %s %d%%",$l[$i%4],$i);

একটি ভুল রয়েছে: প্রশ্নটির জন্য 1 থেকে 750 এর মধ্যে বিলম্ব হওয়া উচিত, সমেত। আপনার 0 থেকে 750 এর মধ্যে রয়েছে Also এছাড়াও, আপনি printfএকটি বাইট সংরক্ষণ করে আপনার বর্ধিতকরণটি সরিয়ে নিতে পারেন : for(;$i<101;usleep(rand(1,750)*1e3))printf("\rloading %s %d%%",'-\|/'[$i%4],$i++);(82 বাইট)
ইসমাইল মিগুয়েল

1
@ ইসমাইলমিগুয়েল র্যান্ড () অন্তর্ভুক্ত , বা এটি * 1e3 দ্বারা গুণনের কারণে? আমি যে ফ্রি বাইট ছিটিয়ে যাচ্ছি।
thisisboris

প্রশ্নের জন্য 1 মিমি এবং 750 মিমি (অন্তর্ভুক্ত) এর মধ্যে এলোমেলো ব্যবধান প্রয়োজনrand(0,750)*1e3আয় 0 (অবৈধ) এবং 750, যা 1000 দ্বারা গুন করা হয় এর মধ্যে একটি মান rand(1,75e4)রিটার্ন 1 (অবৈধ) এর মধ্যে একটি মান এবং 750000. বিলম্ব হওয়া আবশ্যক rand(1,750)*1e3, যেহেতু আপনি ব্যবহার usleep()। এটি মাইক্রোসেকেন্ডগুলির সাথে কাজ করে যা মিলিসেকেন্ডের চেয়ে 1000x ছোট।
ইসমাইল মিগুয়েল

এটি আপনাকে অসুবিধাজনকভাবে ব্যবহারের 5959178 এর উত্তরের নিকটে নিয়ে যেতে পারে তবে echoএটি 3 বাইটের চেয়ে কম printf। আপনি সর্বাধিক সাম্প্রতিক সংস্করণ শীর্ষে রাখতে চান এবং তার #titleপরিবর্তে ব্যবহার করতে পারেন **title**। এবং সংখ্যা এবং এর মধ্যে একটি স্থান নেই %
তিতাস

@Titus আমি ব্যবহারের এখানে echo করতে পারবেন না কারণ আমি আমার $ i এর, '' স্ট্রিং মূল্যায়ণ নাল মাধ্যমে printf, আমি বল পূর্ণসংখ্যা (% ঘ) আরম্ভ করা হয়নি নাল = 0. #justphpthings ফলে
thisisboris

3

গ্রোভি, 113 87 বাইট

-36৩ বাইট ধন্যবাদ লেলেন্ডকে ধন্যবাদ

{p=-1;101.times{print"\rLoading ${"-\\|/"[p++%4]} $p%";sleep Math.random()*750as int}}​

2
84 বাইট, এবং p=-1;101.times{println"Loading ${"-\\|/"[p++%4]} $p%";sleep Math.random()*750as int}
গ্রোভী

1
যদিও প্রশ্নের মালিক স্পষ্টভাবে অনুরোধ করেননি, তিনি সম্ভবত পর পরের লোড বার্তাগুলি একে অপরকে ওভাররাইট করতে চান। কোন আকার পার্থক্য, তাই ভাল পরিবর্তন println"Loading…print"\rLoading…। এবং সেই পরিবর্তনশীল পি সরিয়ে ফেলুন, পরিবর্তে এটি অন্তর্ভুক্ত করুন।
manatwork

3

বাশ, 162 104 বাইট

মানবিক কাজ দ্বারা ব্যাপক উন্নতি সহ একটি সম্পর্কিত প্রশ্নে জাচারির উত্তর পরিবর্তন :

s='-\|/'
for x in {0..100};{
printf "\rloading ${s:x%4:1} $x %%"
sleep `printf .%03d $[RANDOM%750+1]`
}

বাশ এলোমেলো নম্বরগুলি কীভাবে করতে হয় আমাকে সন্ধান করতে হয়েছিল।

অবহেলিত / ব্যাখ্যা করা

s='-\|/'
for x in {0..100}
{
    # \r returns the carriage to the beginning of the current line.
    # ${s:x%4:1} grabs a substring from s, at index x%4, with a length of 1.
    printf "\rloading ${s:x%4:1} $x %%"

    # "$RANDOM is an internal bash function that returns
    #   a pseudorandom integer in the range 0 - 32767."
    # .%03d is a dot followed by a base-ten number formatted to 3 places,
    #   padded with zeros if needed.
    # sleep accepts a floating point number to represent milliseconds.
    sleep `printf .%03d $[RANDOM%750+1]`
}

1
প্রথম চেষ্টা করুন। দেখুন ব্যাশ মধ্যে golfing জন্য টিপস উন্নতি টিপসের জন্য। ব্যক্তিগতভাবে s='-\|/';for x in {0..100};{ printf "\rloading ${s:x%4:1} $x %%";sleep `printf .%03d $[RANDOM%750+1]`; }বিটিডব্লিউয়ের সাথে যেতে হবে , আমাদের সহযোগী সাইট ইউনিক্স এবং লিনাক্সের ব্যাশ বা অন্যান্য ভাষা / ফ্রেমওয়ার্কগুলিতে কীভাবে পূর্ণসংখ্যা এবং ভাসমান গণনা করা যায় তা সম্পর্কে একটি প্রশ্ন রয়েছে ?
manatwork

টুইটসমূহ আমি পরিবর্তে $[math]ব্যবহার { }করা do doneবা তার পরিবর্তে ব্যাক টিক ব্যবহার করার বিষয়ে জানতাম না $()। হ্যাঁ, লোডার গ্রাফিক অ্যারে অ্যাক্সেসের জন্য $ x ব্যবহার করে বোঝা যায়। এছাড়াও, .ঘুমের জন্য দশমিক পেতে সংখ্যার সামনে একটি চড় মারা বেশ মধুর!
হাইড্রক্সান 14

3

সি #, 170 149 135 বাইট

()=>{for(int i=0;i++<=100;System.Threading.Thread.Sleep(new Random().Next(1,750)))Console.Write($"\rloading {@"-\|/"[i % 4]} {i} %");};

Ungolfed:

static void l()
{
    for (int i = 0; i <= 100; System.Threading.Thread.Sleep(new Random().Next(1, 750)))
        Console.Write($"\rloading {@"-\|/"[i % 4]} {i} %");   
}

আমি গ্যারান্টি দিচ্ছি না যে এতে প্রতিটি চরিত্র সঠিক, দয়া করে সংকলন ত্রুটি থাকলে আমাকে সংশোধন করুন। আমাকে আমার ফোনে পুরো জিনিসটি টাইপ করতে হয়েছিল যাতে আমি ঘটনাক্রমে কিছু ত্রুটি অন্তর্ভুক্ত করতে পারি ... ¯_ (ツ) _ / ¯ আমি আশা করি আপনি আমাকে ক্ষমা করেছেন

এটি আমার পিসিতে পরীক্ষিত হয়েছে, একটি কবজির মতো কাজ করে এবং এমনকি আমি পুরো 20 বাইট সংরক্ষণ করেছি পিএমবাঙ্কাকে ধন্যবাদ :)


1
আপনি এর \rপরিবর্তে (ক্যারেজ রিটার্ন) ব্যবহার করতে পারেন Console.Clear()। কিছু বাইট সংরক্ষণ করতে আপনি ইন ভেরিয়েবলটি ইনলাইন করতেও পারেন।
pmbanka

1
এছাড়াও আপনি প্রতিস্থাপন একটি অতিরিক্ত বাইট সংরক্ষণ করতে পারবেন i<=100জন্যi<101
auhmaan

for (int i = 0; i <= 100; i++)for (int i = 0; i++ <= 100;)এরপরে নতুন করে লেখা যেতে পারে তারপর আপনি থ্রেডটি রাখতে পারেন i যেখানে আমি ++ ছিল সেই জায়গাতেই ঘুমান এবং উভয় কোঁকড়ানো বন্ধনী সংরক্ষণ করতে পারেন। মোট 3 টি বাইট কাটা
CSharpie

এছাড়াও ওপি কোনও প্রোগ্রামেমের জন্য জিজ্ঞাসা static void l()()=>
করেনি

2

সি 112 103 বাইট

@ জি কে 9 টি বাইট সংরক্ষণ করা হয়েছে। Sliepen। খুব উত্তেজনাপূর্ণ নয়, মূলত আপনার সি ++ এর উত্তরগুলির একটি গল্ফ। এছাড়াও খুব উত্তেজনাপূর্ণ র্যান্ডম ফাংশন নয়। আমি ভেবেছিলাম Sleep(c[i%4]), বা Sleep(i)তারা এলোমেলো নয়!

#import<windows.h>
i;f(){for(;i<101;printf("\rloading %c %d %%","-\\|/"[i%4],i++),Sleep(rand()%750+1));}

Ungolfed:

#include <windows.h>
int i;
void f() {
  for(;i<101;) {
    printf("\rloading %c %d %%", "-\\|/"[i%4], i++);
    Sleep(rand()%750+1);
  }
}

3
আমি ভয় পাচ্ছি তবে rand ()%7500-749 থেকে সংখ্যাগুলি তৈরি করে আপনাকে 1 যোগ করতে হবে
মুকুল কুমার

আপনি যে ফলাফল চান তা পরিবর্তন rand()%750করা হচ্ছে rand()%751না। এটি 0 এবং 750 এর মধ্যে একটি এলোমেলো মান উত্পন্ন করবে question প্রশ্নে, বিলম্বটি 1 এবং 750 (সমেত) এর মধ্যে হতে হবে । মতে tutorialspoint.com/c_standard_library/c_function_rand.htm , ফাংশন 0 মধ্যে এবং (অন্তত) 32767. যদি আপনি না সংখ্যার উত্পন্ন , আপনি যেহেতু 0 পেতে । rand()0 % 7500 / <anything> == 0
ইসমাইল মিগুয়েল 21

char*c="-\\|/";ভেরিয়েবলের পরিবর্তে আক্ষরিক স্ট্রিংটি সরিয়ে এবং ব্যবহার করে 9 বাইট cprintf(...,"-\\|/"[i%4],...)
ছাঁটাই

2

গণিত, 133 বাইট

Dynamic[If[x<100,x++,,x=0];Row@{"Loading ",StringPart["-\|/",1+x~Mod~4]," ",x,"%"},
    UpdateInterval:>RandomReal@.75,TrackedSymbols:>{}]

এটি একবারে চলবে, ধরে নিবেন x অপরিশোধিত। Clear@xএটি আবার চালু হবে।

ভার্বোসিতে বাঁধা 55 অক্ষর: /


এটি কি একটি নির্দিষ্ট বিরতি বা এটি বারবার এলোমেলোভাবে করা হবে?
তিতাস

এটি এলোমেলো। আপডেটআইন্টারভোল্ট:>। 75 ঠিক করা হত
কেলি লোডার

1
টাইটাস: আমি বিশ্বাস করি যে UpdateInterval:>RandomReal@.75বারবার কল করা হয়েছে RandomReal, তবে UpdateInterval->RandomReal@.75কেবল একবার কল করবে।
ওমর

2

আর - 94 বাইট

for(i in 0:100){cat('\rLoading',c('-','\\','|','/')[i%%4+1],i,'%');Sys.sleep(sample(750,1)/1e3)}

সত্যিই দুর্দান্ত sample(750,1) == sample(1:750,1)



2

পিএইচপি, 66 79 বাইট

for($i=-1;++$i<101;usleep(rand(1,75e4)))echo"\rloading ","-\\|/"[$i%4]," $i %";

দুর্ভাগ্যক্রমে এটি আমাকে '0' মুদ্রণ করার জন্য assign i প্রদান করতে হয়েছিল।
ব্যবহার করুন:

php -r 'for($i=-1;++$i<101;usleep(rand(1,75e4)))echo"\rloading ","-\\|/"[$i%4]," $i %";'

সম্পাদনা: তিতাস মুকুল কুমারের সাথে ঠিক কী অনুমোদিত তা নিশ্চিত করে ধন্যবাদ জানাতে আমরা একটি কম সীমাবদ্ধ পরিসরে 3 বাইট সংরক্ষণ করতে পারি, তবে 9 টি বাইটস একটি সীমিত সীমার সাথে নয়। আমি সাইক্লিং চরিত্রটি ভুলে গিয়েছি এবং এটি করার জন্য একটি সহজ সমাধান সরবরাহ করার জন্য ধন্যবাদ।


1
এলোমেলো প্রয়োজনীয়তা হ'ল আপনি একটি সম্ভাবনা> 0 দিয়ে সমস্ত 1 মিমি থেকে 750 মিমি পর্যন্ত জেনারেট করে। আমি দেখতে পাচ্ছি না যে অন্যান্য মানগুলি নিষিদ্ধ। rand(1,75e4)3 বাইট সাশ্রয়; 1e6অন্য একটি সংরক্ষণ করতে পারেন; এবং কোনও প্যারামিটারগুলি 9 টি বাইট পুরোপুরি সংরক্ষণ করে না; এবং আমি দেখতে পাচ্ছি না যে এটি কোনও নিয়ম লঙ্ঘন করছে। তবে আপনি চরিত্রটি চক্র করতে ভুলে গেছেন: ","-\\|/"[$i%4],"পরিবর্তে এর জন্য +16 -
তিতাস

@ টিটাস usleep(rand(1,75e4))1 মাইক্রোসেকেন্ড এবং 750 মিলিসেকেন্ডের মধ্যে এলোমেলো ব্যবধান তৈরি করবে না ? এছাড়াও, প্রশ্ন অনুযায়ী, অন্তর অন্তর্ভুক্ত সহ 1 এবং 750 এর মধ্যে হতে হবে।
ইসমাইল মিগুয়েল

প্রশ্নের সর্বশেষ মন্তব্য দেখুন: 1 to 75e4গ্রহণযোগ্য।
তিতাস

@ টিটাস আমি তাদের মতো পরিবর্তনগুলি বিবেচনা করেছি কিন্তু প্রশ্নটির দ্বারা অন্তর্নিহিত বলে মনে হয়েছে (পূর্ণসংখ্যা মিলিসেকেন্ড বিলম্ব) with কি অনুমতি দেওয়া হয়েছে জিজ্ঞাসা করার জন্য ধন্যবাদ!
ব্যবহারকারী59178

2

নুডেল , 40 বাইট বিহীন

পুরানো চ্যালেঞ্জগুলির মধ্য দিয়ে ফিরে যাওয়া (যেমন নুডেলের আগে যে চ্যালেঞ্জগুলি হয়েছিল ) এবং নুডেলের সাথে প্রতিযোগিতা করা যেখানে এটি দুর্বল find

Loading¤”ḋḟƇḣ⁺s¤ṡ⁺Ḷ101ạ¤%ɱṠĖ²⁺Çṛ749⁺1ḍ€Ḃ

যদি চূড়ান্ত আউটপুট কোনও ব্যাপার না, তবে 2 বাইট সংরক্ষণ করতে পারেন।

Loading¤”ḋḟƇḣ⁺s¤ṡ⁺Ḷ101ạ¤%ɱṠĖ²⁺Çṛ749⁺1ḍ

নুডেল প্রোগ্রামের শেষে স্ট্যাকের শীর্ষে চাপ দেয় যাতে €Ḃএটি যুক্ত করে এটি ঘটতে বাধা দেয়।

চেষ্টা করে দেখুন :)

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

Loading¤”ḋḟƇḣ⁺s¤ṡ⁺Ḷ101ạ¤%ɱṠĖ²⁺Çṛ749⁺1ḍ€Ḃ # Main Noodel script.

Loading¤”ḋḟƇḣ⁺s¤ṡ⁺                       # Creates the array ["Loading¤-¤", "Loading¤\¤", "Loading¤|¤", "Loading¤/¤"]
Loading¤                                 # Pushes the string "Loading¤"
        ”Ƈḟḋḣ                            # Pushes the array ["-", "\", "|", "/"]
             ⁺s                          # Concats "Loading¤" to each element in the array by prepending.
               ¤                         # Pushes a "¤" onto the stack.
                ṡ                        # Pushes
                 ⁺

                  Ḷ101ạ¤%ɱṠĖ²⁺Çṛ749⁺1ḍ   # Main loop that creates the animation.
                  Ḷ101                   # Loop the following code 101 times.
                      ạ                  # Pushes on a copy of the next animation element from the array.
                       ¤%                # Pushes the string "¤%"
                         ɱ               # Pushes on the current count of the number of times that have looped (zero based).
                          Ṡ              # Swaps the two items at the bottom of the stack.
                           Ė             # Pushes the item at the bottom of the stack to the top (which will be the string selected from the array).
                            ²⁺           # Concat twice appending the loop count then the string "¤%" to the string selected from the array.
                              Ç          # Pops the string off of the stack, clears the screen, then prints the string.
                               ṛ749      # Randomly generate an integer from 0 to 749.
                                   ⁺1    # Increment the random number producing a random number from 1 - 750.
                                     ḍ   # Pop off the stack and delay for that number of milliseconds.

                                      €Ḃ # Ends the loop and prevents anything else being displayed.
                                      €  # Ends the loop (new line could be used as well)
                                       Ḃ # Destroys the current stack therein, nothing gets pushed to the screen at the end of the program.

<div id="noodel" code="Loading¤”ḋḟƇḣ⁺s¤ṡ⁺Ḷ101ạ¤%ɱṠĖ²⁺Çṛ749⁺1ḍ€Ḃ" input="" cols="14" rows="2"></div>

<script src="https://tkellehe.github.io/noodel/noodel-latest.js"></script>
<script src="https://tkellehe.github.io/noodel/ppcg.min.js"></script>


কেন ¤এতগুলি এস?
ক্রিটসি লিথোস

@ কৃতিক্সিলিথো নুডেল একটি এনওপি হিসাবে স্পেস ব্যবহার করেছে যাতে ¤ব্যবহৃত স্থানটি মুদ্রণের জন্য :)
টেকলেহলে

1
বিটিডব্লিউ, এটি চমৎকার যে এর জন্য একটি স্ট্যাক স্নিপেট রয়েছে :)
ক্রিটসি লিথোস

স্নিপেট কীভাবে কাজ করে? আমদানিকৃত স্ক্রিপ্টটি কি আইডি দিয়ে উপাদানটি খুঁজে পায় noodle, তারপরে codeজাভাস্ক্রিপ্টে অনুবাদ করে ?
কারসিজিনিট

@ কারসিজেনিকেট, হ্যাঁ "পার্সার" জাভাস্ক্রিপ্ট ফাংশন noodelযা codeসঠিকভাবে পরিচালনা করে । এটি codeটোকেনগুলিতে অনুবাদ করে যা জাভাস্ক্রিপ্ট অবজেক্ট যা এক সাথে জড়িত হয়ে পরে মৃত্যুদন্ড কার্যকর করা হয়। প্রদর্শনটি ppcg.min.jsযথাযথ এইচটিএমএল অবজেক্ট তৈরি করে এবং প্রদর্শনটি তৈরি করতে এইচটিএমএল অবজেক্টগুলিতে যা পার্স করা হয় তার আউটপুট অনুবাদ করে । প্রতিটি টোকেন তাদের মাধ্যমে পদক্ষেপ নিয়ে মৃত্যুদন্ড কার্যকর করা হয় যা স্ক্রিন আপডেট করার জন্য নিবন্ধিত একটি পদক্ষেপ ইভেন্ট :) এটি কি সহায়তা করে?
tkellehe

2

সি 126 121 বাইট

f(){i=0;char c[]="/-\\|";for(;i<101;i++){printf("\rloading %c %d %% ",c[i%4],i);fflush(stdout);usleep(1000*(rand()%75));}

অবরুদ্ধ সংস্করণ:

 void f()
 {
  int i=0;
  char c[]="/-\\|";
  for(;i<101;i++)
  {
    printf("\rloading %c %d %% ",c[i%4], i);
    fflush(stdout);
    usleep(1000*(rand()%75));  
  }
 } 

@ কারসিজেনিকেট @ মুকুল কুমার সেখানে লাইনগুলির মধ্যে পড়েনি, ধন্যবাদ! :)


1
সি [] এলোমেলো নয় ... তবে সাইকেল
মুকুল কুমার

অথবা, অন্য কথায়, আপনি "\ | / -" থেকে কোনও এলোমেলো চরিত্র বাছাই করার কথা নয়, আপনি / /, তারপরে, তারপরে \, তারপরে | একটি চক্র প্রদর্শন করবেন।
কারসিজিনিট

@ মুকুলকুমার @ কারসিজেনিকেট কোডটি আপডেট করেছে যাতে সাইক্লিং অক্ষরের বিষয়ে অনুমানের বক্তব্যটি এটি করে!
আবেল টম

1

ম্যাটল্যাব, 108 বাইট

function k;for i=0:100;a='-\|/';pause(rand*.749+.001);clc;['loading ' a(mod(i,3)+1) ' ' num2str(i) ' %']
end

1

অষ্টাভ, 122 120 119 108 বাইট

আমি চ্যালেঞ্জটি ভুলভাবে লিখেছি এবং একটি অসীম লোডার তৈরি করেছি যা এটি একবার 100 পেরিয়ে যাওয়ার পরে 0-এ আবার শুরু হয়েছিল it

a='\|/-';for i=0:100;clc;disp(['Loading ',a(1),' ',num2str(i),' %']);a=a([2:4,1]);pause(0.749*rand+.001);end

প্রচলন a, এখানেa=a([2:4,1]) flawr ধারণা ছিল । এছাড়াও, ম্যাটডাব্লুএইচ ধন্যবাদ দেওয়ার পরে প্রথম বন্ধন এড়িয়ে 2 বাইট সংরক্ষণ করা ।rand


এটা করা উচিত .749*rand()+.001? এটি 751ms এর জন্য অপেক্ষা করতে পারে। এছাড়াও আপনি ()অফ র্যান্ডটি ছেড়ে 2 বাইট সংরক্ষণ করতে পারেন ।
ম্যাটডাব্লুএইচ

1

ফোর্সলেং, 250 বাইট

নন-কেপটিং, এমন ভাষা বৈশিষ্ট্য প্রয়োজন যা প্রশ্ন পোস্ট করে দেয়

def D def
D w io.write
D l e+"loading"+s
D z string.char 8
D s string.char 32
D d datetime.wait 750.mult random.rand()
D e z.repeat 24
D n set i 1+i
D k s+n+s+"%"
set i -1
label 1
w l+"-"+k
if i=100
exit()
d
w l+"\"+k
d
w l+"|"+k
d
w l+"/"+k
d
goto 1

আমার সম্ভবত খুব শীঘ্রই স্ট্রিং আক্ষরিক পার্সিং সম্পর্কিত কিছু বাগগুলি ঠিক করা উচিত।


1

রেকেট 110 বাইট

(for((i 101))(printf"Loading ~a ~a % ~n"(list-ref'("-" "\\" "|" "/")(modulo i 4))i)(sleep(/(random 750)1000)))

Ungolfed:

(define(f)
  (for ((i 101))
    (printf "Loading ~a ~a % ~n" (list-ref '("-" "\\" "|" "/") (modulo i 4)) i)
    (sleep (/(random 750)1000))))

পরীক্ষামূলক:

(f)

আউটপুট: এখানে চিত্র বর্ণনা লিখুন

(এই জিআইএফ ফাইলটি বাস্তবের চেয়ে ধীরে ধীরে প্রদর্শন করছে)


জিআইএফ শেষে স্টাফ দিয়ে কি?
কারসিজিনিট

এটি স্ক্রিন ক্যাপচার প্রোগ্রামের একটি প্রত্নতাত্ত্বিক বলে মনে হচ্ছে।
rnso

1

107 75 রুবি

-32 মানটওয়ার্ক ধন্যবাদ

সাধারণ

i=0
(0..100).each{|c|
system'clear'
puts"loading #{'\|/-'[i=-~i%4]} #{c} %"
sleep rand*(0.750-0.01)+0.01
}

Golfed

101.times{|c|$><<"\rloading #{'-\|/'[c%4]} #{c} %";sleep rand*0.749+0.001}

ওভাররাইট করার জন্য আপনার একক আউটপুট আউটপুট দেওয়া হয়েছে, system'clear'এখানে ওভারকিল। এছাড়াও পৃথক ভেরিয়েবল ব্যবহার i। ওহ, এবং যেখানে সম্ভব সম্ভব প্রাকটিকুলেট: 0.750-0.010.749(এছাড়াও লক্ষ করুন যে আপনার 0.01 তে একটি দশমিক স্থানের অভাব রয়েছে - এটি 0.001 হওয়া উচিত)। ফল 101.times{|c|$><<"\rloading #{'-\|/'[c%4]} #{c} %";sleep rand*0.749+0.001}খুব অনুরূপ হয়ে কোনোর ব্রায়েন এর রুবি উত্তর মধ্যে লোড হচ্ছে ... সব সময় প্রবেশ করুন কিন্তু তাই চ্যালেঞ্জ।
manatwork

1

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

import time,random;f=0;n=0
while n<=100:
 print("Loading...","|/-\\"[f],n,"%",end="\r");f+=1
 if f>=3:f=0
 n+=1
 time.sleep(random.uniform(.25,.75))

লোড করার মতো ... চিরকাল, তবে আমাকে সেখান থেকে আমার উত্তরটি অনেকগুলি সম্পাদনা করতে হয়েছিল।


1

টিআই-বেসিক, 80 বাইট

For(I,0,100
For(A,0,randE2
End
Text(0,0,"loading "+sub("-\|/",1+fPart(I/4),1)+" ",I," %
End

এলোমেলোতা For(লুপ থেকে আসে (ই বৈজ্ঞানিক ই টোকেন) এবং যেহেতু টিআই-বেসিক ব্যাখ্যা করা হয় সেখানে স্বয়ংক্রিয়ভাবে কিছু ওভারহেডও উপস্থিত থাকে। মনে রাখবেন যে টিআই-বেসিকে, ছোট হাতের অক্ষর এবং কিছু কম সাধারণ ASCII চিহ্ন দুটি করে বাইট হয় (বিশেষত এই প্রোগ্রামটির জন্য, l o a d i n g sub( \ | %দ্বি-বাইট টোকেনগুলি


1

ক্লোজার, 109 বাইট

(doseq[[c i](map vector(cycle"\\|/-")(range 101))](print"\rloading"c i\%)(flush)(Thread/sleep(rand-int 751)))

"\|/-"চিরকাল পুনরাবৃত্তি করার অসীম তালিকার সাথে জিপযুক্ত 0 থেকে 100 পর্যন্ত সংখ্যার ব্যাপ্তির তালিকার উপরে লুপ হয় ।

; (map vector...) is how you zip in Clojure
;  All arguments after the first to map are lists. The function is expected to
;  take as many arguments as there are lists. vector is var-arg.
(doseq [[c i] (map vector (cycle "\\|/-") (range 101))]
  ; \r to erase the old line
  (println "\rloading" c i \%)
  (Thread/sleep (rand-int 751)))

1

tcl, 116

set i 0;time {lmap c {- \\ | /} {puts -nonewline stderr "\rloading $c $i%";after [expr int(187*rand())]};incr i} 100

Http://www.tutorialspPoint.com/execute_tcl_online.php?PID=0Bw_CjBb95KQMOXoybnVSOVJEU00 এ খেলতে পারবেন


আপনার আউটপুটটি সামান্য বন্ধ বলে মনে হচ্ছে ...
মুকুল কুমার

হুঁ ,,, আমার কোড অদৃশ্য! ...
সার্জিওল

আমি বোঝাতে চাইছি যে আপনার আউটপুটটি এই "লোডিং ... xx%" ফর্ম্যাটে রয়েছে পরিবর্তে এটি "লোডিং - এক্সএক্স%" এর মতো হওয়া উচিত যেখানে প্রশ্নে বর্ণিত '-' পরিবর্তিত হয়।
মুকুল কুমার

@ মুকুলকুমার: স্থির।
সার্জিওল

1

জাভা 8, 130 বাইট

()->{for(int n=0;n<101;Thread.sleep((long)(1+Math.random()*750)))System.out.print("\rloading "+"-\\|/".charAt(n%4)+" "+n+++" %");}

ব্যাখ্যা:

()->{                           // Method without parameter nor return-type
  for(int n=0;n<101;            //  Loop from 0 to 100
      Thread.sleep((long)(1+Math.random()*750)))
                                //   And sleep randomly 1-750 ms 
    System.out.print(           //   Print:
      "\r                       //    Reset to the start of the line
      loading "                 //    Literal "loading "
      +"-\\|/".charAt(n%4)+" "  //    + the spinner char & a space
      +n++                      //    + the number (and increase it by 1)
      +" %");                   //    + a space & '%'
                                //  End of loop (implicit / single-line body)
}                               // End of method

আউটপুট জিআইএফ:

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


0

ভিজ্যুয়াল বেসিক, 371 বাইট

module m
sub main()
Dim s as Object
for i as Integer=0 to 100
Select Case new System.Random().next(0,9)
Case 0
s=1
Case 1
s=2
Case 2
s=5
Case 3
s=10
Case 4
s=15
Case 5
s=20
Case 6
s=25
Case 7
s=50
Case 8
s=500
End Select
Console.SetCursorPosition(0,0)
console.write("loading "+"-\|/"(i mod 4)+" "+i.tostring+" %")
system.threading.thread.sleep(s)
next
end sub
end module

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

module m
    sub main()
        Dim s as Object
        for i as Integer=0 to 100
            Select Case new System.Random().next(0,9)
                Case 0
                s=1
                Case 1
                s=2
                Case 2
                s=5
                Case 3
                s=10
                Case 4
                s=15
                Case 5
                s=20
                Case 6
                s=25
                Case 7
                s=50
                Case 8
                s=500
            End Select
            Console.SetCursorPosition(0,0)
            console.write("loading " + "-\|/"(i mod 4) + " " + i.tostring + " %")
            system.threading.thread.sleep(s)
        next
    end sub
end module
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.