সাধারণ মুদ্রণ তীর


23

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

নিয়ম:

অ্যাসাইনমেন্টটি নীচে বর্ণিত। ব্যবহারকারীকে দু'বার ইনপুট জিজ্ঞাসা করা উচিত, যদিও প্রম্প্টগুলিতে কিছু বলতে হয় না, এবং এটি একটি পৃথক ক্রমে হতে পারে।

স্ট্যান্ডার্ড লুফোলস প্রযোজ্য।


নিয়োগ 3: তীর

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

How many columns? 3
Direction? (l)eft or (r)ight: r
*
 *
  *
 *
*
How many columns? 5
Direction? (l)eft or (r)ight: l
    *
   *
  *
 *
*
 *
  *
   *
    *

23
এটিকে বাড়ির মতো দেখাচ্ছে ... ওহ, কিছুই নয়।
টেসেল্ল্যাটিংহেকলার

প্রতিটি লাইনে স্থান অনুসরণ করার অনুমতি রয়েছে?
lirtosiast

@ থমাসকওয়া হ্যাঁ
aks।

এই প্রশ্নটির মতো আমরা কি কর্সারটি সরানোর জন্য নিয়ন্ত্রণের অক্ষরগুলি ব্যবহার করতে পারি ?
lirtosiast

@ থমাসকওয়া শিওর ... যদিও আমি সত্যতার সাথে এটির অর্থ কী তা নিশ্চিত নই এবং আমি এটি কার্যকরভাবে দেখতে আগ্রহী।
aks।

উত্তর:


8

পাইথ, 23 বাইট

এই মন্তব্যের উত্তরের ভিত্তিতে বৈধ হতে পারে বা নাও হতে পারে । নির্বিশেষে, আমি এই ঝরঝরে খুঁজে পেয়েছি এবং এটি অবৈধ থাকলে অন্য পাইথের উত্তরগুলিও অবৈধ। ;) ঠিক আছে, এটি বৈধ , কারণ আমি স্পষ্টতই স্পষ্টভাবে মিস করেছি। : /

সম্পাদনা: আমি জিতলাম !!!! Yesss !!!! প্রথমবারের মতো! : ডি

j+_J_Wqz\r.e+*dkb*\*QtJ

সরাসরি নমুনা.


1
m+*\ d\*Qপরিবর্তে যে গণনার জিনিস গণনা। 2 বাইট সঞ্চয়
জাকুব

7

পাইথ, 27

j<tQ_Wqz\l++Jm+*\ d\*Q_PJtJ

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

এখানে মূল ধারণাটি হ'ল একটি স্ট্রিং তৈরি করা যা 5 টির জন্য, দেখে মনে হচ্ছে:

*
 *
  *
   *
    *
   *
  *
 *
*
 *
  *
   *
    *

এবং তারপরে এটি উল্টাপাল্টা করুন যদি আমরা lআমাদের ইনপুট হিসাবে পাই । তারপরে আমরা input-1এই স্ট্রিংয়ের শেষ লাইনগুলি ব্যতীত সমস্তই নিয়েছি এবং এটি মুদ্রণ করে আছি ।


7

পাইথন 2, 81 79 বাইট

c=input()
r=1
l=0
exec"print' '*(%sabs(c-r))+'*';r+=1;"%("c+~"*input())*(2*c-1)

এখনও গল্ফযোগ্য হতে পারে, কিন্তু আমরা দেখতে পাবেন :)


2
ইনপুটগুলি ভেরিয়েবল হতে lএবং সহ দুর্দান্ত ধারণা revalকোডের মতো একই পরিবেশে ইনপুটটি 'এড' তা আমি বুঝতে পারি নি ।
xnor

4

পাইথ, 30 28 27 বাইট

VtyQ+*+*tQJqz\r_WJ.a-hNQd\*

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

স্পষ্টতই আমি বর্তমানে সম্পূর্ণ ভিন্ন পদ্ধতির সাথে FryAmTheEggman এর সাথে আবদ্ধ । (আমি মনে করি যে একটি বুদ্ধিমান is

উদাহরণ

$ python pyth.py spa.p
r
3
*
 *
  *
 *
*

$ python pyth.py spa.p
l
5
    *
   *
  *
 *
*
 *
  *
   *
    *

ব্যাখ্যা

 tyQ                              (columns * 2) - 1
V                               loop N through range(the above)
        tQ                                columns - 1 (maximum number of spaces)
       *                                multiplied by
           qz\r                           1 if direction == "r" else 0
          J                               also save that 1 or 0 to J
      +                               plus
                  .a-hNQ                    abs(N - columns + 1)
               _WJ                      negate that if direction == "r"
     *                  d           that many spaces
    +                    \*       add the star and print

@ পিটু ১৯৯৮ আপনি এখনও যা করছেন তার একটি প্রাথমিক বিবরণে আমি আগ্রহী। আমি দেখতে পাচ্ছি যে আপনার কাছে কেবল 1 টি লুপ রয়েছে এবং কোনও মানচিত্র বা ল্যাম্বডা নেই ...
আকস।

@aks। আমি একটি ব্যাখ্যা যোগ।
পূর্কাকুডারী

4

পাওয়ারশেল, 91 85 102 বাইট

$c=(Read-Host)-1;if(!$c){"*";exit}(@(0..$c+($c-1)..0),@($c..0+1..$c))[(Read-Host)-eq'l']|%{" "*$_+"*"}
  • কলামগুলি পান, এতে জমা হন $c। আমরা একটি বিয়োগ করি কারণ প্রতিটি কলামে একটিও রয়েছে *এবং আমরা কেবলমাত্র কতগুলি স্থান প্রয়োজন সে বিষয়ে আগ্রহী।
  • যদি প্রবেশ করা মানটি একটি হয় 1, মুদ্রণ করুন *এবং প্রস্থান করুন - স্ক্রিপ্টের বাকী অংশে কোনও পার্থক্য নেই। + +
  • পরবর্তী বিভাগটি প্রথমে দিকনির্দেশ পায় এবং এটি -eqইউল কিনা তা পরীক্ষা করে l, তারপরে মানটির উপর ভিত্তি করে গতিশীলভাবে উত্পন্ন অ্যারেগুলির অ্যারেটিতে সূচকের ভিত্তিতে একটি অ্যারে তৈরি করে $c। ম্যাজিক। মূলত, আমাদের লাইনে এটি কতগুলি স্পেস প্রয়োজন।
  • উদাহরণস্বরূপ, 5 rএই সংগ্রহের জন্য রাখা হবে (0,1,2,3,4,3,2,1,0)
  • অ্যারে নিয়ে যায় এবং এটিকে ফোরচ-অবজেক্ট %লুপে পাইপ দেয় , যেখানে আমরা এক্স সংখ্যার ফাঁকা জায়গা আউটপুট আউটপুট আউট করি, তারপরে*

ব্যবহারের উদাহরণ:

PS C:\Tools\Scripts\golfing> .\simple-printing-arrows.ps1
6
r
*
 *
  *
   *
    *
     *
    *
   *
  *
 *
*

সরাসরি সম্পাদনা 2 সম্পাদনা $eপাইপ দিয়ে সম্পাদনা - পরিবর্তনশীল সরানো
- সঠিকভাবে এখন 1 কলামের জন্য অ্যাকাউন্টগুলি accounts

+ যদি এখনও 1-কলামের তীরগুলির জন্য দিকনির্দেশের জন্য ইনপুট নেওয়া বাধ্যতামূলক হয় (আমি এটি দাবি করি না) তবে আমরা 106 এর জন্য ভেরিয়েবলটি Read-Hostপুনরায় প্রবর্তন করে আরও কয়েকটি বাইট হারাতে পারি :$d

$c=(Read-Host)-1;$d=Read-Host;if(!$c){"*";exit}(@(0..$c+($c-1)..0),@($c..0+1..$c))[$d-eq'l']|%{" "*$_+"*"}

1 কলাম এবং বাম রাখার চেষ্টা করুন - আপনি একটি 2 কলামের ডান তীর পেয়েছেন। 1 টি কলাম এবং ডান রাখার চেষ্টা করুন - আপনি একটি 'বৈধ মানগুলির সীমা থেকে সুনির্দিষ্ট যুক্তি' পেতে পারেন error আমি ভেবেছিলাম আপনার 85 টি দ্বিগুণ-আপ-রেঞ্জগুলি এড়িয়ে পরাজিত করা সম্ভব হবে। তবে আমি কাছেও যেতে পারি না। 1 টি কলামের তীরের জন্য অ্যাকাউন্টিং, আমি বর্তমানে 112 টি অক্ষরে আছি। > _ <
টেসেল্লাটিংহেকলার

1
@ টেসেল্লাটিংহেকলার ধন্যবাদ - সংশোধন হয়েছে।
অ্যাডমবর্কবার্ক

1
যে পুলিশের 102 পর্যন্ত ধাক্কা এবং আমার আমি এই দিকে তাকান আর বেয়ার পারবেন না, কিন্তু সেখানে আরো এক আমি মুছে দিতে পারেন হওয়া আবশ্যক 102. নিচে আছে ...: ডি
TessellatingHeckler

4

টিআই-বেসিক, 75 65 57 54 50 47 বাইট

সঠিক বাইট গণনা এবং গল্ফিং 10 বাইটের জন্য @ থমাসকওয়া ধন্যবাদ জানাই ।

আমার টিআই -৪৪ + সিলভার সংস্করণে পরীক্ষিত

প্রথম টিআই-বেসিক জমা, গল্ফিং পরামর্শগুলি স্বাগত জানায় (আমি এখনও অনেক কৌশল জানি না)। যদি নামটি দেখানো মেমোরিতে কোনও ফ্যাক্টর অভিনয় করে, তবে এটির 1 এর পরিবর্তে 3 টি অক্ষর ছিল (আমি নিজেই আমার ক্যালকুলেটরটিতে বাইট গণনাটি দেখেছিলাম)। এই প্রোগ্রামটি outputফাংশনটির বিধিনিষেধের দ্বারা সীমাবদ্ধ (আমি 4 দৈর্ঘ্যের তীরগুলি মনে করি), তবে আমি সম্ভবত স্যুইচ করতে পারতাম text, যা দৈর্ঘ্যের খুব কম হলে গ্রাফিকভাবে প্রদর্শিত হয়।

Prompt L,Str1
Str1="R
For(I,1,2L-1
Output(I,(1-2Ans)abs(I-L)+AnsL+1,"*
End

নোট করুন যে এটি স্ক্রিনটি সাফ করে না বা এটি বিরতি দেয় না।

আমি যে সমীকরণটি ব্যবহার করছি সেটিকে আরও বেশি গল্ফ করা যেতে পারে বলে আমি সত্যিই অনুভব করি। শেষের উদ্ধৃতি চিহ্নটি বাদ দেওয়াও এতো ভুল বলে মনে হয়।


@ থমাসকওয়া ধন্যবাদ! আমি এখন এটি করব।
কোল

2
দ্বিতীয়ত: Ansমুক্ত, কারণ আপনার ইনপুট জন্য এটি ব্যবহার করবেন না এবং Output(সংশোধন না Ans। এটি ব্যবহার করুন, এবং ভেরিয়েবল থেকে মুক্তি পান A। আপনি ব্যবহার করে নিয়োগ করতে পারেন -2(Str1="R; শর্তসাপেক্ষের দরকার নেই।
lirtosiast

1
টিপসটির জন্য @ থমাসকওয়া ধন্যবাদ, দেখে মনে হচ্ছে টিআই-বেসিক যাওয়ার জন্য আমার কোনও উপায় আছে।
কোল

3
তৃতীয়: মানটি গুণ করে আসলেই দরকার নেই -2। শুধু Str1="Rদ্বিতীয় লাইনের জন্য না। এটি চতুর্থ লাইন তৈরি করে Output(I,(1-2Ans)abs(I-L)+AL+1,"*, যা আপনাকে আরও 4 বাইট জাল করে। তবে অপেক্ষা করুন, সেখানে একটা ব্যাপার বাগ্ধারা জন্য (1-2Ans)-এটা এর cos(πAns), যা এক বাইট সংরক্ষণ, প্লাস আরো এক কারণ আমরা বিনামূল্যে জন্য খোলা প্রথম বন্ধনী পেতে!
lirtosiast

1
যে কোনও ভাষায় গল্ফিংয়ে দক্ষ হয়ে উঠতে কেবল অনুশীলনের প্রয়োজন; আপনি সেখানে পাবেন।
lirtosiast

2

পাইথন 2, 89 বাইট

c=input()-1
d=raw_input()>'l'
for j in range(2*c+1):print' '*(d*c-(2*d-1)*abs(c-j))+'*'

আমার পাইথ উত্তরটির সাথে প্রায় একইভাবে কাজ করে, কেবল উড়ে যাওয়ার জায়গাগুলির সঠিক সংখ্যা গণনা করে।


2

পাওয়ারশেল, 104 102 97 বাইট

# 97 version:
$o=@(($c=(read-host)-1))[(read-host)-eq'l'];($j=2*$c)..0|%{' '*[Math]::Abs($o++%($j+!$j)-$c)+'*'}

3
r
*
 *
  *
 *
*

# Previous 102 version:
$o=@(($c=(read-host)-1))[(read-host)-eq'l'];(2*$c)..0|%{
' '*[Math]::Abs($o++%(2*($c+(!$c+0)))-$c)+'*'}

বিশেষ দ্রষ্টব্য। আপনি যদি এটি আবার চালাতে চান তবে একটি নতুন পাওয়ারশেল খুলুন বা rv oপরিবর্তনশীল স্থিতি পুনরায় সেট করতে।

অন্যরা কীভাবে ক্ষয় হয় তার তুলনায় এটি ব্যথা পায়। [122 এর তুলনায় 97 টিরও কম আঘাত করা] এটির দুটি অংশ, তাদের উভয়ই খুব আশ্চর্যজনক নয়; বেশ কয়েকটি কলাম পড়ে, অফসেট পেতে একটি অ্যারে-ইনডেক্স-টের্নারি-অপারেটর-বিকল্প ব্যবহার করে এবং অফসেটে শুরু হওয়া একটি তরঙ্গ ফাংশন দিয়ে চালিত হয় (এবং এটি একটি ঝাপটা যাতে এটি করার ফলে পড়ে না mod 0)।

(এবং ওউচ আমি সেই তরঙ্গ কার্যক্রমে যুগে যুগে কাটিয়েছি, আমার ভুল বোঝাবুঝি চিহ্নিত করতে অক্ষম, এবং এটি সমস্ত-নয়-এলআইএসপি-, সত্যবাদী প্যারেনস টাইপ করেছি)।


2
এটি রক্তাক্ত উজ্জ্বল।
অ্যাডমবর্কবার্ক

2

পাইথন 2, 98 89 বাইট

f=[' '*n+'*'for n in range(input())]
if'l'==input():f=f[::-1]
print'\n'.join(f+f[-2::-1])

আরও কিছুটা লম্বা।


ব্যবহার

$ python2 test.py
3
"l"
  *
 *
*
 *
  *

স্পষ্টতই ভেঙে গেছে। NameError: name 'l' is not defined, NameError: name 'd' is not defined
টেসেল্ল্যাটিংহেকলার

ব্যবহার পরীক্ষা করুন। @ টেসেল্লাটিংহেকলার
জ্যাচ গেটস

আহ, চালাক তবে আপনার 1-কলামের তীরগুলির দুটি তীর মাথা রয়েছে। (আমি সংরক্ষণকারী না করে আরও মনে করি আপনি এটা গলফ পারা iএবং dসবকিছু ঠিক ব্যবহার range(P())এবং if P()=='l'...)
TessellatingHeckler

পরামর্শের জন্য ধন্যবাদ! আমি ডাবল তীর মাথাও স্থির করেছিলাম। @ টেসেল্লাটিংহেকলার
জ্যাচ গেটস

এটিএম পরীক্ষা করতে পারে না তবে আপনি সম্ভবত f=[...][::2*('r'>input())-1]বাস্তবে এমন কিছু করতে পারেন
Sp3000

2

পার্ল, 85 বাইট

($-,$_)=<>;$,=$/;@}=map$"x$_.'*',0..--$-;@}=reverse@}if/l/;print@},map$}[$--$_],1..$-

ব্যবহার:

perl 59874.pl <<< '6
r'

4
আমি পছন্দ করি আপনি কীভাবে আপনার স্ক্রিপ্টগুলির এমন
কোনও

@ এমবম্ব007 হা হা! আপনি জানেন, আমি আসলে আমার স্ক্রিপ্টগুলির নাম রাখি না, তবে আমি মনে করি ব্যবহারের নির্দেশাবলীর জন্য simplearrows2.plকোনও সাধারণ নামকরণ করা ভাল ... এটির মতো ভাল বলে মনে হয় না! : পি
ডম হেস্টিংস

2

পিএইচপি, 156 বাইট

<?for($c=1+fgets(STDIN);--$c;$s[-$c]=$t[]=sprintf("%{$c}s","*"));arsort($s);$a=fgetc(STDIN)==r?$s+$t:$t+$s;array_splice($a,count($a)/2,1)?><?=join("
",$a);

দুটি অ্যারে তৈরি করে:

$t = [
    0 => "  *"
    1 => " *"
    2 => "*"
]
$s = [
    -1 => "*"
    -2 => " *"
    -3 => "  *"
]

তারপরে অ্যারে ইউনিয়ন $s+$tবা $t+$sতাদের একত্রিত করতে এবং array_spliceমাঝখানে উপাদানটি সরানোর জন্য ব্যবহার করে। অবশেষে আউটপুট ব্যবহার করে<?=join()


এসডিআইএন-এর পরিবর্তে সিআইএল আর্গুমেন্ট সহ আমার কোডটি 8 বাইট কম হবে;)
ফ্যাবিয়ান শেমংলার

2

পাইথন 2, 111 109 104 বাইট

খুব সহজ সমাধান। আমি নিশ্চিত এটি আরও গল্ফ করা যেতে পারে। যারা জানেন না, ~x+nতাদের মতোই n-1-x

n=input()
r=range(n)
r+=r[-2::-1]
for i in[r,[~x+n for x in r]]['r'>raw_input()]:print"*".rjust(i+1," ")

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

সম্পাদনা : এটি সর্বশেষ লাইনে গল্ফ হয়েছিল:

if'r'>d:r=[~x+n for x in r]
for i in r:print"*".rjust(i+1," ")

2

মতলব, 109 105 96 বাইট

ধন্যবাদ আমাকে 9 বাইট সংরক্ষণের জন্য @beaker করতে

x=eye(input(''));if(input('','s')<114),x=fliplr(x);end
x=x*10+32;disp(char([x;x(end-1:-1:1,:)]))

আপনি এসিআই কোডগুলি সন্নিবেশ করানো দুটি লাইন প্রতিস্থাপন করেন তবে আপনি 9 বাইট সংরক্ষণ করতে পারবেনx=x*10+32;
বেকার

@ বেকার খুব চালাক, ধন্যবাদ!
লুইস মেন্ডো

1

রুবি, 118 বাইট

2.times{l,d=gets.split;l=l.to_i;a=(d=="r"?(0..l-1):(l-1).downto(0)).to_a;(a+a[0..-2].reverse).each{|x| puts "#{' '*x}*"}}

2.times{ - দু'বার, অবশ্যই ...

l,d=gets.split; - ইনপুট পান

l=l.to_i; - পূর্ণসংখ্যার দৈর্ঘ্য পরিবর্তন করুন

a=(d=="r"?(0..l-1):(l-1).downto(0)).to_a; - 0 এর দৈর্ঘ্য থেকে দৈর্ঘ্য পর্যন্ত একটি অ্যারে তৈরি করুন

(a+a[0..-2].reverse).each{|x| puts "#{' '*x}*"} - পুনরাবৃত্তি করুন, তীরগুলি তৈরি করতে স্ট্রিংগুলিতে পরিণত করুন

এখন পর্যন্ত সবচেয়ে বড় গল্ফ নয়, ওহে।


1

পাওয়ারশেল, 98 94 বাইট

$c=(Read-Host)-1;$d=Read-Host;if($c){$c..0+1..$c|%{if($d-eq'r'){$_=$c-$_}' '*$_+'*'}}else{'*'}

যদি আমি ফোরচ-অবজেক্ট লুপের ভিতরে দিকনির্দেশের জন্য পঠন-হোস্ট রাখার কোনও উপায় খুঁজে পেতে পারি তবে কেবল একবারে কয়েকটা বাইট সংরক্ষণ করতে সক্ষম হয়ে কেবল এটির জন্য অনুরোধ জানানো হয়।

সম্পাদনা করুন: 94 বাইট। বাম জন্য পরীক্ষা করার পরিবর্তে, ডানের জন্য পরীক্ষা করুন (লুপটি সরল করে)।

আসল 98 বাইট:

$c=(Read-Host)-1;$d=Read-Host;if($c){0..$c+($c-1)..0|%{if($d-eq'l'){$_=$c-$_}' '*$_+'*'}}else{'*'}

রিসেট $_রঙ্গপ্রিয় হবিট - পরিবর্তনশীল। খুব চালাক, এবং আমি আজ কিছু শিখেছি।
অ্যাডমবর্কবর্ক

পছন্দ করুন এবং তারপরে আরও বাঁচাতে if স্টেটমেন্টটি স্যুইচ করুন।
জোনাথন লেচ-পেপিন

0

> <> , 60 বাইট

i"1l"i=&-:&*&:?!\:1-:}c0.
~/?:<-$?&::&;!?l<oao"*"
1/  \o" "-

নীচের লাইনে নষ্ট 2 বাইট, কেমন জ্বালা!

ইনপুটটি <<> এ কীভাবে কাজ করে তার কারণে, iইনপুটটির জন্য 'অপেক্ষা' করা সম্ভব নয় - কমান্ডটি এসটিডিআইএন-এ কোনও ইনপুট অক্ষর উপলব্ধ কিনা তা পরীক্ষা করে। যদি তা থাকে তবে এটি সেই চরিত্রের ASCII মানটি চাপ দেয় এবং যদি না হয় -1 চাপ দেয়।

এর অর্থ এই যে, এই প্রোগ্রামটি ব্যবহার করতে, নম্বর এবং দিকনির্দেশটি অবশ্যই এসটিডিআইএন-তে প্রস্তুত থাকতে হবে, যেমন eg 3r ডান দিকে নির্দেশ করা আকারের 3 টি তীরের জন্য। আমি নিশ্চিত নই যে এটি যদি এই প্রবেশকে অযোগ্য ঘোষণা করে তবে আমাকে আপনার চিন্তাভাবনাগুলি জানান: o)

কেউ চাইলে আমি একটি বিবরণও লিখে রাখব।


আপনি যদি এটিকে শেল চালাতে চেষ্টা করেন তবে এক অর্থে এটি ইনপুটটির জন্য অপেক্ষা করে না, সুতরাং আমি মনে করি এটি ঠিক আছে। আমি এই বিষয়ে আরও বেশি উদ্বিগ্ন যে এইটি ইনপুটটি যদিও একক অঙ্কের হবে বলে আশা করে (যদি না আমি :10 এর জন্য ইনপুট বোঝাতে চাইছি )
Sp3000

একটি দুর্দান্ত পয়েন্ট, আমি 9-এর বেশি ইনপুট সম্পর্কে চিন্তা করিনি the অঙ্কন বোর্ডে ফিরে!
Sok

1
আমি একটি স্পষ্টতার জন্য মূল প্রশ্নের উপর একটি মন্তব্য
রেখেছি

0

পিএইচপি, 154 বাইট

এটি দেখতে সত্যই পুনরাবৃত্তি, তবে এটি পছন্দসই:

$c=$argv[1];$b=l==$argv[2]?1:0;$a=$b?$c:-1;function a($a){echo strrev(str_pad('*',$a))."\n";}while($b?--$a:++$a<$c)a($a+1);while($b?++$a<=$c:1<$a--)a($a);

কমান্ড লাইন থেকে চালিত হয়:

php arrow.php 5 l
php arrow.php 5 r

-1

পাইথন, 88 বাইট

সম্পাদিত

n=input()-1
x=raw_input()>'l'
for i in range(2*n+1):print" "*(n*x+(-1)**x*abs(n-i))+"*"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.