Alfabe Pırlanta


31

Harika alfabe üçgenini , alfabe üçgeninin intikamını gördünüz ve şimdi alfabe üçgeninin intikamını alma zamanı!

Tanıtımı ...

Alfabe PIRLANTASI!

Göreviniz bu tam metni basmaktır, küçük harf / büyük harf farketmez, ancak yeni satırlar şöyle yapar:

bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb
cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc
defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed
efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe
fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf
ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg
hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih
ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji
jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj
klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk
lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml
mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm
nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon
opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo
pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp
qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq
rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr
stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts
tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut
uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu
vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv
wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw
xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx
yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy
zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz
abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba
bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb
abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba
zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz
yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy
xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx
wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw
vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv
uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu
tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut
stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts
rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr
qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq
pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp
opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo
nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon
mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm
lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml
klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk
jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj
ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji
hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih
ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg
fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf
efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe
defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed
cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc
bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb

Bu kod-golf, en düşük bayt sayısı kazanır.

Kurallar:

  1. Standart boşluklara izin verilmez.
  2. a Alfabenin elmasının merkezi olmalı.

11
Güzel meydan okuma. Ben şahsen köşelerin olmasının ave merkezin olmasının daha anlamlı olacağını düşünüyorumz
ETHproductions

4
@ETHporoductions Alfabeyi zorlayabilen golf dilleri için zorlaştırmak istedim;). Gerçi çok daha zor olduğundan şüpheliyim.
Magic Octopus Urn,

@ carusocomputing Bir sol döndürme yapacaktı. Örneğin, .<Pyth'te .<S5 1yapardı : sonuçta [2, 3, 4, 5, 1]. Bu aynıdır .<[1 2 3 4 5)1. Yine de elmas için emin değilim.
Outgolfer Erik,

@EriktheGolfer Farkındayım, bir süredir vardiyaları daraltmak gibi, bunu yapmanın daha akıllıca yolları var. Elmasın kendisinin kaydırılması gerekir, bu yüzden gerçek elmas yinelemelerinde de ilk vardiyayı birleştirmenin yolları vardır. Döngülerini kimin optimize ettiğini görmek zorluğun kasıtlı bir parçasıydı.
Magic Octopus Urn

@carusocomputing Ben byerine ilk harf olmak istedim a. Tabii ki değişme de hayati öneme sahip.
Outgolfer Erik,

Yanıtlar:


16

05AB1E , 13 12 bayt

A27FÀDûˆ}¯û»

Çevrimiçi deneyin!

açıklama

A              # push alphabet
 27F           # 27 times do
    À          # rotate alphabet left
     Dû        # create a palendromized copy
       ˆ       # add to global list
        }      # end loop
         ¯     # push global list
          û    # palendromize list
           »   # merge list on newline
               # implicit output

Büyük olasılıkla bir bayt kaydedebilir ve g, alfabenin uzunluğunu kopyalamak yerine hesaplar.
Magic Octopus Urn

@ carusocomputing: Yanlış yapmadığım sürece (eğer öyleyse beni eğitmekten çekinmeyin) 13 yaşında bitirdim. Yine de bir liste ile global listeyi kurtarmayı başardım.
Emigna

A©gF®À©û})û»Ben de öyle düşünüyordum. Hiç bir şekilde yanlış yapmadın! Bildiğim her şeyi seni izlemekten öğrendim. Global liste aynı temel fikirdir.
Magic Octopus Urn

1
Şimdi benimle bağlısın. : 3
Oliver Ni,

1
@Oliver: Gerçekten de! Aynı dilde 2 farklı yaklaşımla :)
Emigna

27

Vim, 62 , 60 tuş vuruşlarını

:se ri|h<_<cr>jjYZZPqqx$pYpq26@qdjyH:g/^/m0<cr>VP:%norm DPA<C-v><C-r>"<C-v><esc>x<cr>

Alfabenin yardım belgelerinde çalınması fikrini almak için Lynn'in harika vim cevabından ilham almak.

Tuş vuruşlarının doğru sırasını hatırlamak için mücadele ederken gerçek zamanlı olarak gerçekleşmesini izleyebilirsiniz!

enter image description here

Bu gif'in biraz eski olduğunu, çünkü yanlış çıktı ürettiğini ve henüz yeniden kayıt yapmak için henüz dolaşmadığımı unutmayın.


Ben bu programı denedim ve aldım bu .
LegionMammal978

Pls yeniden kayıt ty
ASCII-sadece

8

MATL , 14 bayt

2Y226Zv27Zv!+)

Çevrimiçi deneyin!

2Y2     % Push string 'abc...z'
26Zv    % Push symmetric range [1 2 ... 25 26 25 ... 2 1]
27Zv    % Push symmetric range [1 2 ... 25 26 27 26 25 ... 2 1]
!       % Transpose into a column
+       % Addition with broadcast. Gives a matrix of all pairwise additions:
        % [  2  3 ... 26 27 26 ...  3  2
             3  4 ... 27 28 27 ...  4  3
             ...
            27 28 ... 51 52 51 ... 28 27
            28 29 ... 52 53 52 ... 29 28
            27 28 ... 51 52 51 ... 28 27
             ...
             2  3 ... 26 27 26 ...  3  2 ]
)       % Index modularly into the string. Display implicitly

6

PHP, 129 Bayt

for(;++$i<27;)$o.=($s=($f=substr)($r=join(range(a,z)),$i,26-$i)).$t.strrev($s.$t=$f($r,0,$i))."\n";echo$o.$f($o,0,51).strrev($o);

syntax error, unexpected '(' on line 1Hangi php versiyonu?
Tschallacka

1
@Tschallacka PHP> 7 yazabilir önce for($f=substr;ve $f($r=join(range(a,z)),$i,26-$i))yerine ($f=substr)($r=join(range(a,z)),$i,26-$i))hatayı önlemek için
Jörg Hülsermann

5

Haskell, 75 bayt

g=(++)<*>reverse.init 
unlines$g$g.take 26.($cycle['a'..'z']).drop<$>[1..27]

Nasıl çalışır:

g=(++)<*>reverse.init    -- helper function that takes a list and appends the
                         -- reverse of the list with the first element dropped, e.g.
                         -- g "abc"  -> "abcba"

             <$>[1..27]  -- map over the list [1..27] the function that
           drop          -- drops that many elements from
    ($cycle['a'..'z'])   -- the infinite cycled alphabet and
   take 26               -- keeps the next 26 chars and
  g                      -- appends the reverse of itself

                         -- now we have the first 27 lines

 g                       -- do another g to append the lower half
unlines                  -- join with newlines

5

C, 76 bayt

İşlev, aşağıdaki gibi çağrılacak. Büyük harfleri yazdırır.

f(i){for(i=2756;--i;)putchar(i%52?90-(abs(i%52-26)+abs(i/52-26)+25)%26:10);}

//call like this
main(){f();}

Basit bir yaklaşımla, karenin ortasından x ve y mesafelerini, artı aortada 25'in bir kaymasını ekleyin, modulo 26'yı alın 90ve ASCII kodundan çıkarın Z. Nerede i%52== 0 bir satır ASCII 10basılır.


Sizin ofset +25aynıdır -1modülo 26
Karl Napf

2
@KarlNapf C, matematikçilerin yaptığı gibi negatif sayılardan oluşan bir modül uygulamaz. -1%26C'de -1, 25 değil. Sonuç, [beklenenin yerine merkezde bir sonuçtur A. Yine de teşekkürler, Ruby gibi bir dilde doğru olurdu, -1%2625'e eşit.
Level River St

5

R, 71 bayt

cat(letters[outer(c(1:27,26:1),c(0:25,24:0),"+")%%26+1],sep="",fill=53)

outerharflerin indeksleri ile bir matris yaratır, letters[...]sonra doğru harflerle birlikte bir vektör oluşturur. cat(...,sep="",fill=53)Ardından istenen format ile yazdırır.


1
Güzel bir! Her nasılsa fillseçeneği için unutmuştum cat. Biçimlendirilmiş matrisleri yazdırmanın harika yolu.
Billywob 26:16

4

Jöle , 13 bayt

Øaṙ1ṭṙJ$ŒBŒḄY

Çevrimiçi deneyin!

açıklama

Øaṙ1ṭṙJ$ŒBŒḄY  Main link. No arguments
Øa             Get the lowercase alphabet
  ṙ1           Rotate left by 1
    ṭ          Append to
       $       Monadic chain
      J          Indices of the alphabet [1, 2, ..., 26]
     ṙ           Rotate the alphabet by each
        ŒB     Bounce each rotation
          ŒḄ   Bounce the rotations
            Y  Join with newlines and print implicitly

Øaṙ'JŒBŒḄY10'da :)
Jonathan Allan

@JonathanAllan Teşekkürler, ancak orta kısmı eksik, bu yüzden bu kısmı yapmak zorunda kaldım ṙ1ṭ. Ayrıca ØaṙJŒBŒḄYsorun yok, sağda 0
mil

Elmasın mükemmel olmadığını çok özledim! Oh iyi ...
Jonathan Allan

4

Jöle, 11 bayt

27RØaṙŒḄŒBY

Açıklama:

27R          range of 1...27
   Øa        the alphabet
     ṙ       rotate
      ŒḄŒB   bounce in both dimensions
          Y  join on newline

3

Python 2, 96 85 bayt

Büyük harfli baskının basılması (1 byte tasarruf sağlar).

R=range
for i in R(53):print''.join(chr(90-(abs(j-25)+abs(i-26)-1)%26)for j in R(51))

çamur balığı ile önceki çözüm

s="abcdefghijklmnopqrstuvwxyz"*3
for i in range(53):j=min(i,52-i);print s[j+1:j+27]+s[j+25:j:-1]

3
sadece alfabeyi daha az karakter yazmakla değil mi?
Mavi,

3

Perl, 77 bayt

-EEk ücret ödemeden gerektirir .

Oldukça standart yaklaşım ... Aramaları tersine çevirmekten hoşlanmıyorum, bence buna daha fazla matematik temelli bir yaklaşım var, nasıl devam edeceğimi göreceksiniz!

@a=((a..z)x3)[$_..$_+26],$a=pop@a,(say@a,$a,reverse@a)for 1..26,reverse 1..25

kullanım

perl -E '@a=((a..z)x3)[$_..$_+26],$a=pop@a,(say@a,$a,reverse@a)for 1..26,reverse 1..25'

Sen sonra boşluk kaldırarak 1 byte kaydedebilirsiniz reverseiçinde reverse 1..25. forGerçi buna ihtiyacı var.
simbabque

1
@simbabque belki de Perl versiyonudur, fakat reverse1..25sonuçlanır 0..25. Koşuyorum 5.18.2...
Dom Hastings

Haklısın. Çünkü korkak reverse1tanımlanmadı. Mantıklı.
simbabque 26:16

3

JavaScript (ES6), 97 96 bayt

@ User81655 sayesinde 1 bayt kaydedildi

R=(n,s=25,c=(n%26+10).toString(36))=>s?c+R(n+1,s-1)+c:c
C=(n=1,r=R(n))=>n<27?r+`
${C(n+1)}
`+r:r

İki özyinelemeli fonksiyon; Cdoğru metni çıkaran metindir. Burada dene:


@ user81655 Yeni satırlar dahil edildiğinde dize enterpolasyonunu her zaman unuturum: P
ETHproductions

3

Python 3, 119 bayt

Pırlantanın iki simetri ekseninden yararlanmaya çalıştım, ancak bu Karl Napf'un çözümünden daha ayrıntılıydı .

A='abcdefghijklmnopqrstuvwxyz'
D=''
for k in range(1,27):
 D+=A[k:]+A[:k]
 D+=D[-2:-27:-1]+'\n'
print(D+D[:51]+D[::-1])

Yine de iyi bir çözüm! For döngüsünü 1 satıra yazarak 3 baytı for k in range(1,27):D+=A[k:]+A[:k];D+=D[-2:-27:-1]+'\n'
azaltabilirsiniz

Yine kısaltılmış: burada A yerine 'bcdefghijklmnopqrstuvwxyza've değiştirme range(1,27)ile range(26). Bayt sayım şimdi 114
FlipTack

3

Haskell, 67 66 bayt

unlines[[toEnum$mod(-abs j-abs i)26+97|j<-[-25..25]]|i<-[-26..26]]

3

C, 252 bayt

#define j q[y]
#define k(w,v) (v<'z')?(w=v+1):(w=97)
char q[28][52],d;main(){int y,x=1;y=1;j[0]=98;j[50]=98;for(;y<27;y++){for(;x<26;x++){(x<1)?(k(d,q[y-1][50])):(k(d,j[x-1]));j[50-x]=d;j[x]=d;}x=0;j[51]=0;puts(j);}strcpy(j,q[1]);for(;y;y--)puts(j);}

Biçimlendirilmiş, makro tarafından genişletilen, daha anlaşılır bir sürüm:

#define j q[y]
#define k(w,v) (v<'z')?(w=v+1):(w=97)
char q[28][52],d;
main(){
int y,x=1;
y=1;
q[1][0]=98;q[1][50]=98;
//98 takes one less byte to type than the equivalent 'b'
for(;y<27;y++){
    for(;x<26;x++){
        (x<1)?
            (k(d,q[y-1][50]))
            :(k(d,q[y][x-1]));
        q[y][50-x]=d;
        q[y][x]=d;
        }
    x=0;
    q[y][51]=0;
    puts(q[y]);
    }
strcpy(q[y],q[1]);
for(;y;y--)puts(q[y]);
}

Bunun kazanamayacağını biliyorum ama denemekten zevk aldım. Bu benim ilk kez kod golf denemem.


Kod golf hoşgeldiniz, bu haha ​​addicting;).
Magic Octopus Urn,

3

Toplu iş, 255 bayt

@echo off
set l=abcdefghijklmnopqrstuvwxyz
set r=yxwvutsrqponmlkjihgfedcba
for /l %%i in (1,1,27)do call:u
for /l %%i in (1,1,25)do call:l
:l
set r=%r:~2%%l:~-1%.
set l=%l:~-2%%l:~0,-2%
:u
set r=%l:~-1%%r:~0,-1%
set l=%l:~1%%l:~0,1%
echo %l%%r%

Açıklama: Alt yordam u, alfabeyi, istenen çıktının üst yarısında kullanılan desen olan merkezden bir harf dışarıya doğru döndürür. Alt yordam l, alfabeyi iki harf ile içe doğru döndürür. Daha sonra ualt rutine girerek etkili bir tek harf içe döndürme elde eder. Son olarak, son satır, kodun lalt rutine geçmesine izin verilerek yazdırılır .


2

Pyke, 23 22 21 bayt

GV'th+jj_t+j)K]0n'JOX

Burada dene!

GV          )         - repeat 26 times, initially push alphabet.
  'th+                -  push tos[1:]+tos[0]
      j               -  j = tos
       j              -  push j
        _t+           -  push pop+reversed(pop)[1:]
           j          -  push j
             K        - pop
              ]0      - list(stack)
                n'JOX - print "\n".join(^),
                      - splat ^[:-1]

2

C ++, 191 179 166 165 bayt

Kevin Cruijssen sayesinde -12 bayt Zacharý
sayesinde -14 bayt

#include<iostream>
#define C j;)std::cout<<char(97+(d+j
int main(){for(int i=0,j,d=1;i<53;d+=i++/26?-1:1){for(j=0;26>C++)%26);for(j=24;0<=C--)%26);std::cout<<'\n';}}

1
Böyle 12 bayt kaydedebilirsiniz:#include<iostream> int main(){for(int i=0,j,d=1;i<53;d+=i++/26?-1:1){for(j=0;j<26;)std::cout<<char((j+++d)%26+97);for(j=24;j>=0;)std::cout<<char((j--+d)%26+97);std::cout<<'\n';};}
Kevin Cruijssen

Dang Kevin, ya beni ninja etti.
Zacharý

@KevinCruijssen Yardımlarınız için teşekkürler. Bu arada, yorumdaki kodunuz yazdırılamayan unicode karakterler içeriyordu.
HatsuPointerKun

@HatsuPointerKun Bu korkarım yorumlarda otomatik olarak gerçekleşen bir şey. Bu kodu kopyalayıp yapıştırmaya çalıştığınızda gerçekten çok sinir bozucu .. :)
Kevin Cruijssen

2
Bunu ekleyerek makroları kötüye kullanabilirsiniz:, #define C j;)std::cout<<char(97+(d+jve sonra bu son satırı değiştirerek:int main(){for(int i=0,j,d=1;i<53;d+=i++/26?-1:1){for(j=0;26>C++)%26);for(j=24;0<=C--)%26);std::cout<<'\n';};}
Zacharı

2

Kömür , 24 21 bayt

Sadece ASCII sayesinde -3 bayt.

F²⁷«P✂×β³⊕ι⁺ι²⁷↓»‖B↓→

Çevrimiçi deneyin!Bağlantı ayrıntılı versiyonudur.

... kömür kömürüm üzerinde çalışmalıyım. : P



Şimdi dördüncü argümanın Sliceisteğe bağlı olduğunu öğrendim . > _>
totallyhuman

Hepsi (evet, dördü de) değişkenler isteğe bağlıdır
ASCII-sadece

wat, niladiç ne yapıyor Slice?
tamamen insan

2
Bekle nvm evet ilk argüman gerekli: P
ASCII-sadece

1

JavaScript (ES6), 128 115 114 bayt

a='abcdefghijklmnopqrstuvwxyz'
for(o=[i=27];i--;)o[26-i]=o[26+i]=(a=(p=a.slice(1))+a[0])+[...p].reverse().join``
o

1

Groovy - 103 97 bayt

Bunu yapmanın daha akıllıca yolları olduğunu biliyorum ama ...

. {T = ( 'bir' .. 'z') birleştirme (); q = {o [-2..0]}; c = []; 27.times {t = t [1 ..- 1] + t [0], c << t + q (t)};. (c + q (c)) birleştirme ( '\ n')}

Komut dosyasının sonucunu çalıştırdığınızda istenen cevap.

( 7 byte tasarruf ile ilgili ipucu için carusocomputing sayesinde ).

Buna göre örnek güncellendi:

Http://ideone.com/MkQeoW adresine bakın.


For döngüsü yerine 27.times(){}7 bayt;) kullanabilir ve kaydedebilirsiniz.
Magic Octopus Urn

1

Raket 293 bayt

(let*((ls list->string)(rr reverse)(sr(λ(s)(ls(rr(string->list s))))))(let p((s(ls(for/list((i(range 97 123)))(integer->char i))))
(n 0)(ol'()))(let*((c(string-ref s 0))(ss(substring s 1 26))(s(string-append ss(string c)(sr ss))))(if(< n 53)(p s(+ 1 n)(cons s ol))
(append(rr ol)(cdr ol))))))

Ungolfed:

(define (f)
  (define (sr s)           ; sub-fn reverse string;
    (list->string
     (reverse
      (string->list s))))
  (let loop ((s
              (list->string
               (for/list
                   ((i
                     (range 97 123)))
                 (integer->char i))))
             (n 0)
             (ol '()))
    (define c (string-ref s 0))
    (define ss (substring s 1 26))
    (set! s (string-append
             ss 
             (string c)
             (sr ss)))
    (if (< n 53)
        (loop s (add1 n) (cons s ol))
        (append (reverse ol) (rest ol)))))

Test yapmak:

(f)

Çıktı:

'("bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb"
  "cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc"
  "defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed"
  "efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe"
  "fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf"
  "ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg"
  "hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih"
  "ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji"
  "jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj"
  "klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk"
  "lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml"
  "mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm"
  "nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon"
  "opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo"
  "pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp"
  "qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq"
  "rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr"
  "stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts"
  "tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut"
  "uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu"
  "vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv"
  "wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw"
  "xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx"
  "yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy"
  "zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz"
  "abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba"
  "bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb"
  "cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc"
  "defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed"
  "efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe"
  "fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf"
  "ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg"
  "hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih"
  "ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji"
  "jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj"
  "klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk"
  "lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml"
  "mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm"
  "nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon"
  "opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo"
  "pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp"
  "qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq"
  "rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr"
  "stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts"
  "tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut"
  "uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu"
  "vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv"
  "wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw"
  "xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx"
  "yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy"
  "zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz"
  "abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba"
  "bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb"
  "abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba"
  "zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz"
  "yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy"
  "xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx"
  "wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw"
  "vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv"
  "uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu"
  "tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut"
  "stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts"
  "rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr"
  "qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq"
  "pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp"
  "opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo"
  "nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon"
  "mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm"
  "lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml"
  "klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk"
  "jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj"
  "ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji"
  "hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih"
  "ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg"
  "fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf"
  "efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe"
  "defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed"
  "cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc"
  "bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb"
  "abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba"
  "zabcdefghijklmnopqrstuvwxyxwvutsrqponmlkjihgfedcbaz"
  "yzabcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbazy"
  "xyzabcdefghijklmnopqrstuvwvutsrqponmlkjihgfedcbazyx"
  "wxyzabcdefghijklmnopqrstuvutsrqponmlkjihgfedcbazyxw"
  "vwxyzabcdefghijklmnopqrstutsrqponmlkjihgfedcbazyxwv"
  "uvwxyzabcdefghijklmnopqrstsrqponmlkjihgfedcbazyxwvu"
  "tuvwxyzabcdefghijklmnopqrsrqponmlkjihgfedcbazyxwvut"
  "stuvwxyzabcdefghijklmnopqrqponmlkjihgfedcbazyxwvuts"
  "rstuvwxyzabcdefghijklmnopqponmlkjihgfedcbazyxwvutsr"
  "qrstuvwxyzabcdefghijklmnoponmlkjihgfedcbazyxwvutsrq"
  "pqrstuvwxyzabcdefghijklmnonmlkjihgfedcbazyxwvutsrqp"
  "opqrstuvwxyzabcdefghijklmnmlkjihgfedcbazyxwvutsrqpo"
  "nopqrstuvwxyzabcdefghijklmlkjihgfedcbazyxwvutsrqpon"
  "mnopqrstuvwxyzabcdefghijklkjihgfedcbazyxwvutsrqponm"
  "lmnopqrstuvwxyzabcdefghijkjihgfedcbazyxwvutsrqponml"
  "klmnopqrstuvwxyzabcdefghijihgfedcbazyxwvutsrqponmlk"
  "jklmnopqrstuvwxyzabcdefghihgfedcbazyxwvutsrqponmlkj"
  "ijklmnopqrstuvwxyzabcdefghgfedcbazyxwvutsrqponmlkji"
  "hijklmnopqrstuvwxyzabcdefgfedcbazyxwvutsrqponmlkjih"
  "ghijklmnopqrstuvwxyzabcdefedcbazyxwvutsrqponmlkjihg"
  "fghijklmnopqrstuvwxyzabcdedcbazyxwvutsrqponmlkjihgf"
  "efghijklmnopqrstuvwxyzabcdcbazyxwvutsrqponmlkjihgfe"
  "defghijklmnopqrstuvwxyzabcbazyxwvutsrqponmlkjihgfed"
  "cdefghijklmnopqrstuvwxyzabazyxwvutsrqponmlkjihgfedc"
  "bcdefghijklmnopqrstuvwxyzazyxwvutsrqponmlkjihgfedcb")

1

Pyth ,21 19 bayt

j+PKm+PJ.<Gd_JS27_K

Çevrimiçi deneyin!

Açıklama:

j+PKm+PJ.<Gd_JS27_K   expects no input

j                     joins on new line
 +   +                joins two strings
  P   P               prints everything but the last element
   K                  initialize K and implicitly print
    m                 for...in loop, uses d as iterator variable
       J              initialize J and implicitly print
        .<            cyclically rotate
          G           initialized to the lowercase alphabet
           d          iterating variables of m
            _    _    reverse
             J        call J
              S27     indexed range of 27
                  K   call K

1

SOGL V0.12 , 10 bayt

zl{«:}«¹╬,

Burada dene!

Açıklama:

z           push the lowercase alphabet
 l{  }      repeat length times
   «          put the 1st letter at the end
    :         duplicate
      «     put the 1st letter at the end (as the last thing called is duplicate)
       ¹    wrap the stack in an array
        ╬,  quad-palindromize with 1 X and Y overlap


1

Kotlin , 106 bayt

{(0..52).map{i->(0..50).map{j->print((90-((Math.abs(j-25)+Math.abs(i-26)-1)+26)%26).toChar())}
println()}}

Beautified

{
    (0..52).map {i->
        (0..50).map {j->
            print((90 - ((Math.abs(j - 25) + Math.abs(i - 26) - 1)+26) % 26).toChar())
        }
        println()
    }
}

Ölçek

var v:()->Unit =
{(0..52).map{i->(0..50).map{j->print((90-((Math.abs(j-25)+Math.abs(i-26)-1)+26)%26).toChar())}
println()}}

fun main(args: Array<String>) {
    v()
}

TryItOnline

Port @Karl Napf 'ın cevabı


1

VBA (Excel), 116 Bayt

Sub a()
For i=-26To 26
For j=-25To 25
b=b & Chr(65+(52-(Abs(j)+Abs(i))) Mod 26)
Next
Debug.Print b
b=""
Next
End Sub

Sir Joffan'ın Mantığından sonra. : D


1

VBA, 109 105 78 Bayt

Giriş yapmayan ve alfabe elmasını VBE anında penceresine çıkaran isimsiz VBE acil durum pencere işlevi.

For i=-26To 26:For j=-25To 25:?Chr(65+(52-(Abs(j)+Abs(i)))Mod 26);:Next:?:Next


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.