एक वर्णमाला पार्टी की टोपी खींचें


22

आपका कार्य इस सटीक पाठ को प्रिंट करना है:

            z
            yz
           xyz
           wxyz
          vwxyz
          uvwxyz
         tuvwxyz
         stuvwxyz
        rstuvwxyz
        qrstuvwxyz
       pqrstuvwxyz
       opqrstuvwxyz
      nopqrstuvwxyz
      mnopqrstuvwxyz
     lmnopqrstuvwxyz
     klmnopqrstuvwxyz
    jklmnopqrstuvwxyz
    ijklmnopqrstuvwxyz
   hijklmnopqrstuvwxyz
   ghijklmnopqrstuvwxyz
  fghijklmnopqrstuvwxyz
  efghijklmnopqrstuvwxyz
 defghijklmnopqrstuvwxyz
 cdefghijklmnopqrstuvwxyz
bcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz

मामला मायने नहीं रखता।

याद रखें, यह , इसलिए सबसे कम संख्या में बाइट्स जीतता है।


2
क्यों घटता है?
ओलिवर नी

19
मुझे संदेह है कि कुछ लोग सभी वर्णमाला-पैटर्न एससीआई-कला केसी चुनौतियों से थक गए हैं।
xnor

क्या हम इसे अपरकेस में कर सकते हैं?
डाउनगेट

7
गंभीरता से हालांकि, एक और वर्णमाला चुनौती?
आउटगॉल्फ

2
मैं इन वर्णमाला चुनौतियों का आनंद लेता हूं। यह एक क्रिसमस ट्री के रूप में आसानी से ब्रांडेड हो सकता है।
पीट आर्डेन

जवाबों:


6

चेडर, 50 45 42 37 बाइट्स

25|>0=>i->print" "*(i/2|0)+(65+i)@"90

सीधा, लेकिन सिंटेक्स (दोनों संख्यात्मक और वर्णानुक्रमिक) को लेकर चेडर की सहमति का उपयोग करता है

इसे ऑनलाइन आज़माएं!

व्याख्या

25 |> 0 =>    // Map range [0, 26) (i.e. [25, 0] reversed) over....
   i -> 
     print    // Prints in it's own line...
     " " * (i/2 |0) +     // Number of spaces is floor(n/2).
                          // `|0` for flooring is hack from JS
     (65 + i) @" 90       // Char code range is this

65के लिए Aऔर के 90लिए चार कोड हैA


1
Zहै 90, नहीं A
मेगो

5

05AB1E , 15 13 बाइट्स

A.svy12N;ï-ú,

इसे ऑनलाइन आज़माएं! (ऊपर से थोड़ा अलग जैसा úकि अभी तक TIO पर नहीं है)

व्याख्या

  1. वर्णमाला को धक्का देना
  2. वर्णमाला के प्रत्ययों की गणना कीजिए
  3. 12-इंडेक्स / 2 रिक्त स्थान को प्राथमिकता दें
  4. छाप

4

पायथन 2, 70 बाइट्स

से पोर्टेड Emigna के जवाब है, -2 की जगह के लिए बाइट्स -i-1के साथ~i

for i in range(26):print' '*(12-i/2)+"abcdefghijklmnopqrstuvwxyz"[~i:]

मुझे यकीन है कि मानचित्र का उपयोग करने से एक छोटी वर्णमाला प्राप्त हो सकती है, शायद उच्च मूल्यों वाले लोअरकेस को छोड़कर
विनाशकारी नींबू

वास्तव में मुझे अब यकीन नहीं है। मुझे लगता है कि यह इसके लिए वैसे भी काम नहीं करेगा :( soz
विनाशकारी नींबू

4

आर, 67 66 59 बाइट्स

संपादित करें: @rturnbull को धन्यवाद बाइट्स के एक जोड़े को बचाया

for(i in 25:0)cat(rep(" ",i/2),letters[i:25+1],"\n",sep="")

इस तथ्य को उजागर करते हुए कि repफ़ंक्शन को दिया गया कोई भी नंबर स्वचालित रूप से निकटतम पूर्णांक (जैसे rep("*",1.99) => "*") पर गोल हो जाता है, जिसका अर्थ है कि वास्तविक अनुक्रम floor(13-1:26/2)निम्न है :

12 12 11 11 10 10  9  9  8  8  7  7  6  6  5  5  4  4  3  3  2  2  1  1  0  0

1
यह मेरे मैट्रिक्स प्रयास से कम निकलता है। के 14...-1साथ बदलें 13?
JDL

@JDL आह हाँ बिल्कुल। एक और दृष्टिकोण का प्रयास करने का एक अवशेष
बिलीवोब

2
यदि आप के माध्यम से लूप 25:0के बजाय 1:26, आप बदल सकते हैं 13-i/2करने के लिए i/2, और आसान बनाने (27-i):26के लिए i:25+1, 6 बाइट्स बचत।
rturnbull

3

अजगर, 15 बाइट्स

j_m+*/d2\ >GdUG

एक प्रोग्राम जो परिणाम को STDOUT में प्रिंट करता है।

इसे ऑनलाइन आज़माएं

यह काम किस प्रकार करता है

j_m+*/d2\ >GdUG  Program
             UG  Yield [1, 2, 3, 4, ..., 26]
  m              Map over the range with variable d:
          >Gd      Yield alphabet with first d-1 letters discarded
   +               Prepend
     /d2             d//2
    *   \            spaces
 _               Reverse
j                Join on newlines
                 Implicitly print

;इसके बजाय की कोशिश करें\
isaacg

3

पायथन 2, 52 बाइट्स

n=26;s=''
while n:n-=1;s=chr(97+n)+s;print n/2*' '+s

sप्रमुख स्थानों की संख्या को प्रिंट करने और अपडेट करने के लिए स्ट्रिंग को संचित करता है n/2। एक whileलूप को समाप्त 0करना एक लूप बीट exec(53 बाइट्स) की तुलना में एक दुर्लभ संख्यात्मक लूप है :

n=26;s=''
exec"n-=1;s=chr(97+n)+s;print n/2*' '+s;"*n

इसके अलावा एक 53-बाइट विकल्प:

s=''
exec"s=chr(122-len(s))+s;print s.center(26);"*26

3

जावास्क्रिप्ट (ईएस 6), 85 75 69 68 बाइट्स

for(s=a='',x=36;--x>9;)s+=` `.repeat(x/2-5)+(a=x.toString(36)+a)+`
`

-1 बाइट @ l4m2 के लिए धन्यवाद


2
यह एक समारोह या कार्यक्रम के बजाय एक स्निपेट नहीं है?
नील

1
for(s=a='',x=36;--x>9;)s+=` `.repeat(x/2-5)+(a=x.toString(36)+a)+'#'1B छोटा
l4m2

@ l4m2 शानदार!
darrylyeo

1
बेस 36 का उपयोग करके अच्छा विचार! +1
टाइटस

2

ब्रेन-फ्लैक , 244 बाइट्स

((((((()()()()())){}{}){}){}()){})((((()()()){}){}()){}){(({}[()]<>)<({}<(<>({})<>)>){({}[()]<(({})[()])>)}({}({})<>[({})]<>(((()()()){}){}){}())((<>)<>{<({}[()])><>([{}]())<>}<>[{}]<>{}){({}[()]<((((()()()()){}){}){})>)}((()()()()()){})><>)}<>

इसे ऑनलाइन आज़माएं!


यह पर्याप्त रूप से पठनीय होना चाहिए। यदि आपको इसकी आवश्यकता है, तो मेरे पास पूर्ण स्पष्टीकरण है:

push 122 (z): ((((((()()()()())){}{}){}){}()){})
push 26:      ((((()()()){}){}()){})
loop 26 times (i = 25..0): {
 (
  i--, push to b stack:({}[()]<>)
  <
   put 122 from a stack under i: ({}<(<>({})<>)>)
   i times push letter-1: {({}[()]<(({})[()])>)}
   replace top 0 with 26-i: ({}({})<>[({})]<>(((()()()){}){}){}())
   devide by two: ((<>)<>{<({}[()])><>([{}]())<>}<>[{}]<>{})
   add spaces: {({}[()]<((((()()()()){}){}){})>)}
   push 10 (\n): ((()()()()()){})
  >
  flip stack back: <>
 push i--: ) 
}
flip to results stack: <>

4
This should be readable enough as is.आप ब्रेन-फ्लैक के बारे में बात कर रहे हैं , है ना?
आउटगॉल्फ

2

जेली , 15 13 बाइट्स

@ बाइट्स के लिए -2 बाइट्स धन्यवाद (एक निलाडिक श्रृंखला का गठन किया गया था, जिस पर मुझे संदेह था लेकिन वह नहीं बनी)

ØaJ’H⁶ẋżṫJ$ṚY

TryItOnline!

कैसे?

ØaJ’H⁶ẋżṫJ$ṚY - Main link
Øa            - alphabet yield -> ['a', 'b', 'c', ..., 'y', 'z']
  J           -    range(length)      -> [1, 2, 3, ..., 25, 26]
   ’          -    decrement          -> [0, 1, 2, ..., 24, 25]
    H         -    halve              -> [0,.5  1, ..., 12, 12.5]
     ⁶        -    literal [' ']
      ẋ       -    repeat list        -> [[], [], [' '], ..., 12x' ', 12x' ']
          $   - last two links as a monad
         J    -     range(length)     -> [1, 2, 3, ..., 25, 26]
        ṫ     -     tail (vectorises) -> [['a'-'z'], ['b'-'z'], ..., ['y','z'], ['z']]
       ż      - zip
              -> [[[],['a'-'z']], [[],['b'-'z']], ..., [12x' ',['y','z']], [12x' ',['z]]]
           Ṛ  - reverse whole array
            Y - join with line feeds (implicit print)

मुझे एक बाइलैडिक श्रृंखला बनाने का एक तरीका मिला जो वर्णमाला से शुरू होती है जो ØaJ’H⁶ẋżṫJ$ṚY2 बाइट्स बचाती है
मील

क्या आपको लगता है कि स्पष्टीकरण सही है?
जोनाथन एलन

1
हाँ, इसे केवल एक एकल श्रृंखला के रूप में एक तर्क के साथ एक वर्णमाला के रूप में सोचो
मील

2

सी, 72 68 बाइट्स

m(i){for(char*k=&k[i=26];i;printf("%*c%s\n",--i/2+1,0,k))*--k=64+i;}


1

टर्टल , 70 68 बाइट्स

ट्रेलिंग स्थान पर ध्यान दें

#abcdefghijklmnopqrstuvwxyz#' -{ -{ +.r_}' l[ l-]d,(*@!' r)(!@*)_}' 

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है:

#abcdefghijklmnopqrstuvwxyz#              Set string var to this value
                            ' -           write space on first grid cell, string pointer-=1
                               {                                    } While cell is space
                                 -                 decrement string pointer
                                  {     }    While cell is space
                                    +.       increment string pointer, write pointed char
                                      r      move right
                                       _     write non-space if pointed char is last char

                                         '[space]   write space on cell
                                           l        move left
                                            [ l-]   move left, pointer-- until cell's space
                                                 d, move down, write character var \
                                                                           (initially *)

                                                   (*     ) if cell is *
                                                     @!     set char var=!
                                                       ' r  write space over *, move right

                                                           (!    ) if cell is !
                                                             @*    set char var=*
                                                               '[space] write space over !

                                                                 _ (explanation below)
                                               write (*|!) if pointed char is last char

                                                                   '[space]    Write space

मानव-पठनीय स्पष्टीकरण (?):

यह वर्णमाला समाहित करने के लिए स्ट्रिंग संस्करण का उपयोग करता है। प्रत्येक पुनरावृत्ति, यह सूचकांक को एक तक कम कर देता है, जब तक कि यह चारों ओर लपेटता नहीं है, और अंतिम पंक्ति में आने के बाद रुक जाता है। बारी-बारी से इंडेंट के लिए, यह चार संस्करण का उपयोग करता है। प्रत्येक पुनरावृत्ति यह चर संस्करण की जाँच करता है और इसे फ़्लिप करता है। यदि यह था * तो यह सही बदलता है, इसलिए पहला वर्ण संरेखित करता है, अन्यथा नहीं, इसलिए अंतिम वर्ण संरेखित करता है।


1

पर्ल, 44 बाइट्स

यह @ xnor के उत्तर का एक पोर्ट है ।

$n=26;say$"x($n/2),$@=chr(97+$n).$@while$n--

चलाने के लिए आवश्यकताएं -E(या -M5.010):

perl -E '$n=26;say$"x($n/2),$@=chr(97+$n).$@while$n--';

1

PHP, 71 बाइट्स

for(;++$i<27;)echo str_pad(substr(join(range(a,z)),-$i),26," ",2)."\n";

1
(26-$i)/213-$i/2
मैनावर्क

यदि आपने पिछले बृहदान्त्र को हटा दिया तो क्या यह एक त्रुटि है? इसके अलावा, अच्छा होगा यदि आप एक ऑनलाइन वेबसाइट का लिंक प्रदान करें उदाहरण के लिए, पूर्व। sandbox.onlinephpfunctions.com
RedClover

1

जावा 7,128 127 बाइट्स

1 बाइट को बचाया। केविन को धन्यवाद।

String c(int n,String s,char v,String d){String c="";for(int j=0;j++<(n-1)/2;c+=" ");return n>0?c(--n,s=v+s,--v,d+c+s+"\n"):d;}

ungolfed

  class A {

public static void main(String[] args) {
System.out.print(c(26, "", (char)122, ""));
}
static String c(int n, String s, char v, String d){

    String c = "";

    for (int j = 0; j++ < (n - 1)/2; c += " ");

    return n > 0 ? c(--n, s = v + s, --v, d + c + s + "\n" ) : d;
}
}

बिना किसी फंक्शन में पास हुए 122

132 बाइट्स

String c(String s,int n,String d){String c="";int v=96,j=0;for(;j++<(n-1)/2;c+=" ");return n>0?c(s=(char)(v+n--)+s,n,d+c+s+"\n"):d;}

ungolfed

  class A{

public static void main(String[] args) {
System.out.print(c("",26,""));

}
static String c(String s, int n, String d) {
    String c = "";
    int v = 96,j=0;
    for (; j++ < (n - 1)/2; c += " ");
    return n > 0 ? c(s = ( char) (v + n--) + s, n, (d + c + s + "\n")) : d;
     }
  }

1
आप =पर निकाल सकते हैं d+=c+s+"\n"। इसके अलावा, आप इंडेंटेशन के साथ अपने अनऑग्लॉक्ड कोड को थोड़ा प्रारूपित करना चाह सकते हैं। मैंने देखा कि आपके कुछ अन्य उत्तरों के साथ भी। :)
केविन क्रूज़सेन 6

1
उफ़! मैंने फिर से यह गलती की, मुझे शर्म आती है। ...... ठीक है @ केविनक्रूजसेन मैं उस पर हूँ।
नंबरनॉट

क्या आप s=v+sपुनरावृत्ति में प्रतिस्थापित नहीं कर सकते s+=v?
रोमन ग्रफ

नहीं..क्योंकि अक्षर पैटर्न पिछड़े में हैं।
नंबरनॉट

1

रूबी, 64 बाइट्स

(0..26).each{|x|puts' '*(12-x/2)+('a'..'z').to_a[~x..-1].join()}

कुछ टिप्पणियां: आपको अनावश्यक के बजाय join कॉल eachकरने के बाद कोष्ठक लगाने की आवश्यकता नहीं mapहै, क्योंकि हम इस बात की परवाह नहीं करते हैं कि हम क्या लौटा रहे हैं आप lastएक सीमा पर कॉल कर सकते हैं
ली डब्ल्यू

इसके बजाय (0..26).map, कोशिश करें 27.times; के बजाय ('a'..'z').to_a, [*?a..?z]; और के बजाय .join, *""
जॉर्डन


1

आरईएक्सएक्स, 52 बाइट्स

do i=1 to 26
  say centre(right(xrange(a,z),i),26)
  end

आउटपुट:

            Z             
            YZ            
           XYZ            
           WXYZ           
          VWXYZ           
          UVWXYZ          
         TUVWXYZ          
         STUVWXYZ         
        RSTUVWXYZ         
        QRSTUVWXYZ        
       PQRSTUVWXYZ        
       OPQRSTUVWXYZ       
      NOPQRSTUVWXYZ       
      MNOPQRSTUVWXYZ      
     LMNOPQRSTUVWXYZ      
     KLMNOPQRSTUVWXYZ     
    JKLMNOPQRSTUVWXYZ     
    IJKLMNOPQRSTUVWXYZ    
   HIJKLMNOPQRSTUVWXYZ    
   GHIJKLMNOPQRSTUVWXYZ   
  FGHIJKLMNOPQRSTUVWXYZ   
  EFGHIJKLMNOPQRSTUVWXYZ  
 DEFGHIJKLMNOPQRSTUVWXYZ  
 CDEFGHIJKLMNOPQRSTUVWXYZ 
BCDEFGHIJKLMNOPQRSTUVWXYZ 
ABCDEFGHIJKLMNOPQRSTUVWXYZ

1

विम, 25 कीस्ट्रोक्स

:h<_␍jjYZZPqqPxYPr Yq12@q

जहाँ Where Enter कुंजी है, कभी-कभी इसके रूप में भी सूचित किया जाता है <cr>

व्याख्या

:h<_␍jjYZZ                 " get a-z
          P                " initialize by pasting
           qq              " start record macro @q
             Px            " paste and remove the 1st char
               YPr␣        " yank and paste and replace 1st char with space
                   Y       " yank the whole line again
                    q      " end recording
                     12@q  " call macro 12 @q times

मैं वीआईएम के लिए नया हूं, हालांकि - मैंने नवंबर में शुरू किया। आश्चर्य Pहै कि मैक्रो में एक के साथ प्रारंभिक विलय करने का एक तरीका है ।

गोल्फ वीआईएम अनुक्रम का परीक्षण करने का "सही" तरीका क्या है? मैंने परीक्षण किया \vi -u /dev/null। हालांकि एक वीएम में भी :h<_␍काम नहीं करता है। यह भी सुनिश्चित नहीं है कि मेरा वीआईएम पहले गैर अंतरिक्ष चरित्र हाहा में क्यों जाएगा।

PS इससे पहले कि मैं ओएस एक्स का उपयोग करने के लिए आगे बढ़ा, मैंने हेक्सागोनी में बड़े उपकरणों के साथ गोल्फ खेला ... अब ओएस एक्सआई पर शराब नहीं करते हैं और इस तरह स्पष्टीकरण और डिबगिंग के लिए महान उपकरण नहीं चला रहे हैं। तो शुरू हुआ मेरा सफर ViM से!


1

C # (.NET Core) , 112 बाइट्स

()=>string.Join("\n",new int[26].Select((_,i)=>"".PadLeft(12-i/2)+"abcdefghijklmnopqrstuvwxyz".Substring(25-i)))

इसे ऑनलाइन आज़माएं!

()=>string.Join("\n", // OP doesnt want to output a sequence of string...
    new int[26].Select((_,i)=> // yield range from 0 to 25
        "".PadLeft(12-i/2)+ // add spaces to center
            "abcdefghijklmnopqrstuvwxyz".Substring(25-i)))  // remove letters

1

Tcl , 92 बाइट्स

set a {}
time {set a [format %c [expr 123-[incr i]]]$a;puts [format %[expr 13+$i/2]s $a]} 26

इसे ऑनलाइन आज़माएं!

tcl, 94

set a {}
set i 123
time {set a [format %c [incr i -1]]$a;puts [format %[expr 74-$i/2]s $a]} 26

डेमो

प्रक्रिया के बीच में, मुझे आकस्मिक रूप से टोपी का इटैलिक संस्करण मिला:

tcl, 94

set a {}
set i 123
time {set a [format %c [incr i -1]]$a;puts [format %[expr $i/2-24]s $a]} 26

डेमो


tcl, 101

set a {}
set i 123
while \$i>97 {set a [format %c [incr i -1]]$a;puts [format %[expr ($i-48)/2]s $a]}

डेमो

प्रक्रिया के बीच में, मुझे आकस्मिक रूप से टोपी का इटैलिक संस्करण मिला:

tcl, ९९

set a {}
set i 123
while \$i>97 {set a [format %c [incr i -1]]$a;puts [format %[expr $i/2-24]s $a]}

डेमो



@ ASCII- केवल धन्यवाद!
सर्गियोल

1

कॉमन लिस्प, SBCL, 83 82 बाइट्स

(dotimes(i 27)(format t"~26:@<~a~>
"(subseq"ABCDEFGHIJKLMNOPQRSTUVWXYZ"(- 26 i))))

व्याख्या

(dotimes(i 27) ; loop from i=0 to i=26
(format t"~26:@<~a~>
"(subseq"ABCDEFGHIJKLMNOPQRSTUVWXYZ"(- 26 i))))
;print out part of alphabet starting from character number 26-i (counting from zero)
;using justification (~26:@<~a~>) to center with weight 26 characters

-1 ASCII द्वारा केवल उपयोग <enter>करने के बजाय केवल उपयोग करने के लिए~%



1

टी-एसक्यूएल, 107 बाइट्स

DECLARE @t VARCHAR(99)=SPACE(13),@ INT=27a:SET @t=STUFF(@t,@/2,@%2,CHAR(@+95))PRINT @t
SET @-=1IF @>1GOTO a

SQL fuction का उपयोग करके सही स्थिति में सही पत्र में cramming द्वारा प्रत्येक पंक्ति के लिए स्ट्रिंग को संशोधित करता है STUFF()। प्रारूपित:

DECLARE @t VARCHAR(99)=SPACE(13), @ INT=27
a:
    SET @t=STUFF(@t,@/2,@%2,CHAR(@+95))
    PRINT @t
    SET @-=1
IF @>1 GOTO a

@/2अक्षर सम्मिलित करने की स्थिति निर्धारित करने के लिए पूर्णांक विभाजन (कोई शेष नहीं) का उपयोग करता है। @%2है MODULOसमारोह, और (पत्र डालने) (क अंतरिक्ष अधिलेखित) 0 के बीच flips और 1।

यदि आप कैपिटल लेटर पसंद करते हैं, तो CHAR(@+63)इसके बजाय उपयोग करें (हमारी बाइट गिनती नहीं बदलती)।




0

हास्केल (लैंबडॉट), 73 बाइट्स

unlines[([1..div(26-length x)2]>>" ")++x|x<-reverse.init$tails['a'..'z']]

एक ही लंबाई:

do x<-reverse.init$tails['a'..'z'];([1..div(26-length x)2]>>" ")++x++"\n"

मैं का उपयोग करें init.tailsया tail.initsकाफी हर चुनौती में सामने एक संभव रिवर्स के साथ; काश वे इसे पहले से ही शामिल करते।


0

पायथन 2, 66 64 बाइट्स

i=91;exec'i-=1;print`map(chr,range(i,91))`[2::5].center(26);'*26

0

ग्रूवी, 53 बाइट्स

('z'..'a').each{println((it..'z').join().center(26))}

आउटपुट:

            z             
            yz            
           xyz            
           wxyz           
          vwxyz           
          uvwxyz          
         tuvwxyz          
         stuvwxyz         
        rstuvwxyz         
        qrstuvwxyz        
       pqrstuvwxyz        
       opqrstuvwxyz       
      nopqrstuvwxyz       
      mnopqrstuvwxyz      
     lmnopqrstuvwxyz      
     klmnopqrstuvwxyz     
    jklmnopqrstuvwxyz     
    ijklmnopqrstuvwxyz    
   hijklmnopqrstuvwxyz    
   ghijklmnopqrstuvwxyz   
  fghijklmnopqrstuvwxyz   
  efghijklmnopqrstuvwxyz  
 defghijklmnopqrstuvwxyz  
 cdefghijklmnopqrstuvwxyz 
bcdefghijklmnopqrstuvwxyz 
abcdefghijklmnopqrstuvwxyz

0

QBIC , 57 बाइट्स

[25,0,-1|Y=Z[1,a/2|Y=Y+@ |]X=Z[a,25|X=X+$CHR$(65+|c)]?Y+X

यह एक लूप के लिए QBIC 'के साथ आश्चर्यजनक रूप से अच्छी तरह से काम करता है। स्पष्टीकरण (पिछले संस्करण का - समान सिद्धांत लागू होता है):

[26,1,-1|          Loops from 26 to 1, decrementing 'a'
                   'a' is used to determine the number of spaces per line and the last letter we want to print
Y=Z                Z is always an empty string in this program, 
                   Y will hold the spaces we need to center this line
[1,a/2|Y=Y+@ |]    Add a space to Y equal to half the value of 'a', giving us a center alignment
X=Z                X holds the characters we need on this line, reset it
[a,26|             FOR c = a to 26 --> loop over the last part of the alphabet
X=X+$CHR$(64+|c)]  Convert c+64 to ASCII and append
?Y+X               Print the spaces and the letters

<outer FOR loop is closed by QBIC>

आउटपुट:

            Z
            YZ
           XYZ
           WXYZ
          VWXYZ
          UVWXYZ
         TUVWXYZ
         STUVWXYZ
        RSTUVWXYZ
        QRSTUVWXYZ
       PQRSTUVWXYZ
       OPQRSTUVWXYZ
      NOPQRSTUVWXYZ
      MNOPQRSTUVWXYZ
     LMNOPQRSTUVWXYZ
     KLMNOPQRSTUVWXYZ
    JKLMNOPQRSTUVWXYZ
    IJKLMNOPQRSTUVWXYZ
   HIJKLMNOPQRSTUVWXYZ
   GHIJKLMNOPQRSTUVWXYZ
  FGHIJKLMNOPQRSTUVWXYZ
  EFGHIJKLMNOPQRSTUVWXYZ
 DEFGHIJKLMNOPQRSTUVWXYZ
 CDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ

ओपी से मेल नहीं खाता।
मैजिक ऑक्टोपस Urn

@carusocomputing यह अब करता है।
steenbergh

0

रैकेट 137 बाइट्स

(for((n(range 122 96 -1)))(for((i(floor(/(- n 97)2))))(display #\space))
(for((i(range n 123)))(display(integer->char i)))(displayln ""))

Ungolfed:

(define (f)
  (for ((n (range 122 96 -1)))
       (for ((i (floor(/(- n 97)2))))
         (display #\space))
       (for ((i (range n 123)))
         (display (integer->char i)))
    (displayln "")))

परिक्षण:

(f)

आउटपुट:

            z
            yz
           xyz
           wxyz
          vwxyz
          uvwxyz
         tuvwxyz
         stuvwxyz
        rstuvwxyz
        qrstuvwxyz
       pqrstuvwxyz
       opqrstuvwxyz
      nopqrstuvwxyz
      mnopqrstuvwxyz
     lmnopqrstuvwxyz
     klmnopqrstuvwxyz
    jklmnopqrstuvwxyz
    ijklmnopqrstuvwxyz
   hijklmnopqrstuvwxyz
   ghijklmnopqrstuvwxyz
  fghijklmnopqrstuvwxyz
  efghijklmnopqrstuvwxyz
 defghijklmnopqrstuvwxyz
 cdefghijklmnopqrstuvwxyz
bcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.