Sonsuz çıktı üretmek için en kısa kod


121

Sonsuz bir çıktı üreten en kısa kodu yazın.

Bu kadar. Kod, yalnızca bir noktada çıktı üretmeyi durdurduğunda diskalifiye edilecektir. Her zaman olduğu gibi kod golf, en kısa kod kazanır.

İşte gerçekten zekice olduğunu düşündüğüm cevapların bir listesi, böylece kredi alabilirler:

Liderler Sıralaması


118
Tüm cevaplar diskalifiye edildi, çünkü bir noktada Dünya güneş tarafından yutulacak ve bir noktada evren ölecek: P
Doorknob

17
"Bilgisayarınız çökene kadar sonsuz" sayılır mı? <_ <
Izkata

5
Benimkini Piet'ye yazarsam , diğer programların kullandığı metnin piksellerini sayabilir miyim? Mümkün olan en küçük yinelenen Piet programının 6 piksel olacağına inanıyorum. "Kapalı" pikseller hala sayılırsa, Befunge'i geçer.
DampeS8N

9
@Izkata Böylece, bilgisayarınızın çökmesine neden olabilecek herhangi bir cevaba da izin verilir: D
Julıʇǝɥʇuʎs

7
@Doorknob Yani, asıl zorluk, sınırlı bir süre içinde sonsuz çıktılar üretmektir . Yeterince kolay geliyor.
Sanchises,

Yanıtlar:


212

Befunge (1)

.

Çıkışlar 0sonsuza dek. İşe yarıyor çünkü Befunge satırları etrafından dolanıyor ve 0boş yığından çıkarsanız alırsınız .


6
Bir kazananımız olduğunu düşünüyorum.
primo

96
Ben yemin ben kısa olduğunu Buralarda bir Java sınıfı vardı. +1
l0b0

56
Bu bir nokta şimdi bir sonraki iki cevabımın toplamından daha fazla üne sahip oldu.
marinus

3
Aw ... Bu adil değil :) Hadi böyle yapalım: Bu görüntünün boyutunu birkaç piksel küçültüyorum ve çok küçük gösteriyoruz .. Bir noktaya benzeyecek mi? Ve öyle mi diyorsun? :)
Benjamin Podszun

4
Bu neden kabul edilen cevap değil?
Claudiu

101

x86 .COM Yürütülebilir, 7

altıgen içinde:

b8 21 0e cd 10 eb fc

Diğerleri kilobayta veya daha fazla sistem kitaplığına ve çalışma zamanına ihtiyaç duyar. Temele dönüş:

$ echo -ne '\xb8!\xe\xcd\x10\xeb\xfc' > A.COM
$ dosbox A.COM

çıktı

Çıkışı değiştirmek için 2. baytı ( 0x21, veya !) değiştirebilirsiniz.

Çıkış için bir BIOS kesmesi kullanır; DOS'a ihtiyacım yok, ama QEMU ayarlamamıştım.


açıklama

Makine kodu aşağıdaki düzeneğe karşılık gelir:

        mov     ax, 0x0e21
again:  int     0x10
        jmp     again

Çıktının tümü intçağrıda - bu referansa göre , AH'de 0x0e olan int 0x10, AL'deki baytı ekrana basacaktır.

AX kaydının yüksek baytta AH ve düşük baytta AL'dan oluşan 16 bitlik bir kelime olduğunu bilerek, bunları bir araya getirerek fazladan bir yük (ve böylece makine kodunda bir bayt) kaydedebiliriz.


2
Vay. Bu gerçekten çok iyi
tbodt

46
Düşük makine kodu uzunluğu, yüksek seviyeli dillerden daha değerli olmalıdır.
pwned

12
Bu gerçek anlamda en kısa koddur.
microbian

4
Sadece işe yaramaz, diğer tüm girdilerden daha hızlı çalışır . :)
Thane Brimhall

14
Tabii hangisi @ThaneBrimhall tarafından en önemli kriterler çok bilgisayarım kapatırsa Eğer sonsuz döngü ..., bunu en verimli şekilde yapmak istiyorum!
kratenko

91

Windows Toplu iş dosyası, 2 karakter

%0

Kendisini sonsuz olarak çağırır.


12
İkinci sırayı kapat dostum. Aferin. Batch'ın kazandığı yerde sadece bir cevap gördüm.
unclemeat

Gerçekten harika !!!
Qwertiy

Bu harika!
Patrick Purcell

Nasıl çalışır: %0yok @, bu yüzden sürekli gibi bir şey çıktı olurdu ...> %0. Özyinelemeli olduğu için bu sadece bir süre RAM'in tamamını tüketebilir.
Outgolfer Erik,

2
@EriktheOutgolfer olabilir ? Bu nasıl olacak değil sonsuz özyinelemeye nedeniyle bir noktada çökmesine? Bunun birkaç saat boyunca nasıl devam edebileceğini
anlamıyorum

68

Befunge 98 - 2

,"

Sonsuzluk için ",,,,,,,,,," çıktıları.


2
Aslında biraz zekice.
tbodt

Teşekkür ederim. Garip, ", sürüm en yaygın b98 uygulamasını kullanarak boşluklar (veya". 32 32 32 çıkışlar) veriyor. Nereden aldığı hakkında hiçbir fikrim yok.
AndoDaan

1
82,395'in altına gömülmüş olması çok berbat bir cevap.
tbodt

7
@tbodt Eh, teknik özelliklere göre, benim küçük program benim yukarı tırmanma sonsuzluğa sahiptir. Yani ... parmak
çarpıştım

@AndoDaan:" Bir virgül ve INT_MAX-2 alanlarda bir dizi oluşturur ve daha sonra son uzay yazdırır yığın gerçekten verimli değildir, virgül ile INT_MAX-3 boşluk kendisini dolduracaktır Yani..
YoYoYonnY

62

sh, 3 bayt

yes

ysürekli çıktılar


10
Olsa yesda, harici bir ikilidir ve bash'ın bir parçası değildir (kesinlikle konuşur).
Bob

55
Bash'ta (neredeyse) her şey harici bir ikilidir.
Johannes Kuhn

5
Normalde bir takma y=yesadınız yoktur ve sisteminiz ezoterik değilse, yesbunun içinde olduğunu varsayabilirsiniz $PATH(bkz. GNU Core Utilities ). Mantığınızla her çözüm için tuhaf takımyıldızlar üstlenmeniz mümkündür.
klingt.net

5
Doğru, ama bu değil sadece bir bashyeteneği: Bir I'ts POSIX kabuk temel parçası çekirdek utils . (Yani: sh için başlık değiştirin lütfen : 3 karakter ;-)
F. Hauri

2
Technosaurus'un dediği gibi, meşgul kutusunda bir yerleşiktir, fakat sh içinde değil, bunun yerine sh + coreutils demelisiniz.
Outgolfer Erik

42

Haskell: 8 Karakter

Eski konu, ama eğlenceli bir

 fix show

Haskell'de yazdırıyor

\\\\\\\\\\\\\....

sonsuza dek çalıştığından beri

 let x = show x in x

O bilir ki xilk karakter yani, bir dize ", bu nedenle bu ile kaçtı gerekiyor \", ama biliyorum \ihtiyacı böylece kaçmış olması \\\xve benzeri vb.


... vay. Şimdi merak ediyorum fix$showdaha estetik olur mu :-)
John Dvorak

7
Bu gerektirir import Data.Functionve dizeyi yazdırmak yerine döndürdüğü için, karakter sayısının adaletini sorgularım. Ayrıca, dize aslında "\" \\ "\\\\\\\\\\\\\\\\\\\\\\\\\\\… "" "*"
Anders Kaseorg

36

Windows Toplu İş Dosyası, 8 karakter

:a
goto a

1
Bu sonsuz çıktı üretmez, değil mi?
Doorknob

38
yapar ... @echo olmadan, kapatıncaya kadar "goto a" yazar
Patrick Purcell

11
buralarda mor BAT'a ihtiyacımız var
Einacio

35
On karakter sayıyorum: :a\r\ngoto açünkü Windows CRLF kullanıyor
wchargin

1
@WChargin Sadece bir hex editörü kullanarak kontrol ettim. 3a 61 0a 67 6f 74 6f 20Windows
8'imde

32

Brainfuck, 4

+[.]

Alternatif olarak,

-[.]

8
Ne \x01de \xFFbasılabilir karakterlerdir. Sanırım bu bir zorunluluk değildi: - /
John Dvorak

Yazdırılabilir karakterleri çıkarmanın bir yolu + ile değiştirmek olacaktır, bununla birlikte giriş yapılması gerektiği anlamına gelir
Prismo

31

Java, 54 karakter

Java’da en iyi girişim:

class A{static{for(int i=0;i<1;)System.out.print(1);}}

7
Fonksiyonel, golf kurallarına uyuyor. Neden düşürüldüğünü merak ediyorum.
Manat işi

14
Java klasik for(;;)kalıbı yasaklar mı ? Ne hakkında while(true)?
KodlarInChaos

17
@CodesInChaos, Java normalde bu kalıplara izin vermez ve normalde onları daha temiz ve daha salak düşünürdüm. Burada derleyiciden sonra sonsuz bir döngü gizlice sokmaya çalışıyoruz (bu formlar derleyicinin statik olmayan {} blokun çıkmamasından şikayet etmesine neden olur).
Rich Smith

2
@Mekanicalsnail Evet, statik bloklar java 7'den beri tek başına çalıştırılamaz.
Fabinout

1
@OliverNi Ama staticbloğu kullanamazsınız .
Okx

30

Bash, 4 bayt

$0&$

./forever2.sh: line 1: $: command not foundSürekli çıkışlar .

Çünkü $0arka plana, her üst geçersiz komutundan sonra ölür $ve böylece yığın / bellek kadar yemiş değildir ve bu sonsuza kadar devam etmelidir.

Garip bir şekilde çıkış zamanla daha yavaş ve yavaşlar. topsistem CPU kullanımının% 100'e yakın olduğunu bildirir, ancak bellek veya CPU-hog işlemleri vardır. Muhtemelen çekirdeğin içindeki bazı kaynak tahsisi daha az ve daha az verimli olur.


2
belki stdout veya benzeri bir davranış ...
masterX244

1
kaynakları serbest bırakmak, çatallama işlemleriyle rekabet ediyor / Durdurmak için, PID durdurmanın tek yolunu değiştirdiği için işlemi öldüremezsiniz, böylece betiği yeniden isimlendirmek $0başarısız olur.
Emmanuel

29

LOLKOD (36)

HAI IZ 1<2? VISIBLE "0" KTHX KTHXBYE 

LOLCODE'a bir şans vereceğimi düşündüm, şaşırtıcı derecede büyük bir işlevsellik var.


2
Stdio hakkında soru sormana gerek yok.
kedi,

LOLCODE repl.it versiyonunda, ihtiyacınız yok HAIveKTHXBYE
MilkyWay90

24

JavaScript: 14

UYARI: Bunu gerçekten tarayıcınızda çalıştırmak istemiyorsunuz

for(;;)alert()

31
"Bu sitenin daha fazla iletişim kutusu açmasını engelle" yi işaretlemeniz yeterli.
Johannes Kuhn

1
@JohannesKuhn bunu kontrol etmiyor ve yeniden
başlamalısın

8
Ya da sadece hiçbir şey yapmayın ve daha fazla çıktı göstermez.
Johannes Kuhn

sadece çalışan alert()bana bu hatayı veriyorError: Not enough arguments [nsIDOMWindow.alert]
Clyde Lobo

3
İşlem engellendiğinde ve insansı etkileşime kadar yürütme durdurulduğunda gerçekten sonsuz çıktı mı?
Morten Bergfall

24

Turing Makinesi - 6 Karakter:

#s->1Rs

burada #boş sembol (varsayılan olarak kasette), ssadece mevcut (başlangıç) durumunu açıklar, 1bir rakam yazdırıyor, Ryani sağa kayıyor s, sonunda aynı durumda kalıyor.


3
7 karakter sayıyorum!
F. Hauri,

9
Belki de en yaygın 5 tuple notasyonunda , bu sadece 5 karakter s#1Rs(geçerli durum, geçerli sembol, sembolden yazmaya, yön değiştirmeden, sonraki duruma) şeklinde yazılır.
res

19

Haskell, 10

print[1..]

Bence bu en kısa kod

  1. Bir şey yazdırın.
  2. Sonsuz oluşturun Show: yetenekli veri yapısı.

İlgilenenler için, yazdırır:

[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,...

4
Durmak için 32 numaralı büyüyü seçmenizin bir nedeni var mı?
ike 10:13

12
Güzel ve yuvarlak görünüyordu, bir sonraki satıra gerek kalmadan kod bloğu alanını olabildiğince doldurdu.
shiona

2
Makinenin sınırlı miktarda belleği varsa, tam sayı bellekte tutulacak kadar büyüyünce sonlanabilir mi?
Jeppe Stig Nielsen

3
@JeppeStigNielsen Evet. Ancak bir megabayt bile belleği dolduracak bir tamsayı 2 ^ (2 ^ 20) veya yaklaşık 6,7 * 10 ^ 315652 olur. Bunun üzerine bir gigabayt hafızasına ve bu sayı 2 ^ (2 ^ 30) olur, neredeyse yarım milyar hanelik bir canavar. Diziyi yazdırmayı denersek, evrenin ısı ölümünün bellek tükenmeden önce bizi vuracağından eminim. Ve bundan önceki HDD arızası.
shiona

5
OP'nin altındaki yorumlarda 'bilgisayarınız çökene kadar sonsuz' olduğu da belirtiliyor.
11684

19

Mermer 4

24MB

Marbelous burada şaşırtıcı derecede iyi. $Yığın sınırına çok hızlı bir şekilde ulaşmasına rağmen, bu sınırsız miktarda dolar işareti verecektir.

Nasıl çalışır.

24, tahtadan düşecek ve karşılık gelen ascii karakteri olarak STDOUT'a yazdırılacak olan bir dildir. MB, ana panele dolaylı olarak verilen addır, çünkü ana panoda herhangi bir girdi yoktur, her tik atar. Hücreler soldan sağa değerlendirildiğinden, değişmez her zaman bir sonraki özyinelemeli çağrıdan önce basılacaktır.

Yani bu kabaca bu sözde kodla eşdeğerdir:

MB() {
    print('$');
    while(true) MB();
}

Sonsuz özyineleme olmadan bir çözüm 11

24@0
@0/\..

Bu, değişmezi iki portal arasında dolaştırarak çalışır @0, 24 aşağıya vurduğunda @0, üstteki hücreye taşınır @0. /\Bir klon operatörü olan topraklar, solundaki mermerin (değişmez) bir kopyasını (portalda geri), diğeri de sağına koyar. Bu coopy daha sonra tahtadan düşer (çünkü ..boş bir hücredir) ve STDOUT'a yazdırılır. Sahte kodda, bu şöyle tercüme edilir:

MB() {
    while(true) print '$'
}

Sonsuz özyineleme olmadan daha kısa bir çözüm 9

24
\\/\..

Bu, sürekli olarak bir klonlayıcı ile saptırıcı arasındaki mermeri etrafa fırlatır ve bir kopyasını en uçtaki hücreye atar ve tahtadan atılır. Sahte kodda şöyle bir şey görünür:

MB() {
    List charlist = ['$'];
    while(true) {
        charlist.add(charlist[0];
        charlist.add(charlist[0];
        charlist.pop();
        print(charlist.pop());
        // Wait, what?
    }
}

Not

..Misketler aksi tahtadan toprak olacaktır (ve atılmalıdır) beri hücreler iki son kurullarında gereklidir. Bazı ekstra eğlence için, yerine 24göre mermer FFve boş ..bir hücreyi ??0 arasında bir mermer herhangi mermer döner ve bunu aşağı bırakarak önce mevcut değerini bu. Bunun STDOUT'da neye benzeyeceğini tahmin et.


Sol kenardan fazladan mermer üretmemek için "/ \ / \" "\\ / \" kimliğinizi yapın Tamamen estetik gelişme.
Sparr

@Sparr, nokta alınmış, yazıyı düzenledim.
overactor,

5
Bu çözüm 25165824 bayt (24MB) olmamalı mı? ; P
HyperNeutrino 12:17

18

C, 23 karakter

Şimdiye kadarki en iyi C / C ++ cevaplarından biraz daha kısa. Boş satırları sonsuz olarak yazdırır (ancak optimizasyon olmadan derlenirse yığının üzerine taşar).

main(){main(puts(""));}

1
22 karakter: putc(0)(veya 1 veya 2, ... veya 9). Işe yarar mı?
CompuChip

@CompuChip, putc2 parametre gerektirir.
ugoren

10
@tdbot, Sadece bunun kabul edilen cevap olduğunu unutmayın. İltifatını takdir ediyorum, ama nedenini anlayamıyorum. Açıkçası daha kısa bir cevap var
ugoren

@tbodt, tdbot değil. ftfy
nyuszika7h

5
@ nyuszika7h, Bu şekilde, 15 temsilciyi tutarken ne kadar mütevazı olduğumu gösterebilirim.
ugoren

14

Python 3: 15, 17 veya 18 karakter

mdeitrick'in yanıtı , printdeyimi işlev çağrısı (15 karakter) ile değiştiren Python 3'te daha uzun :

while 1:print()

Bu Python 3'te bulduğum en kısa kalır. Ancak, sadece birkaç karakterden oluşan sonsuz bir döngüde daha ilginç baskı yöntemleri var.

  • print()döndürür None, ki! = 9, onu sonsuz bir döngü yapar; bu (18 karakter) 8yerine geçen bir no-op'tur pass:

    while print()!=9:8
    
  • iter(print, 9)( print()eşit 9olmaz) çıkana kadar çıktısını döndüren bir yinelemeyi tanımlar . her zaman geri döndüğünden anyberi asla gelmeyen gerçek bir değeri arayan girişi yinelemeli tüketir . ( Aynı etkiyi de kullanabilirsiniz .)print()Noneset

    any(iter(print,9))
    
  • Veya, içeriğinde olup olmadığını test ederek yinelenebilir olanı tüketebiliriz 8(17 karakter):

    8in iter(print,9)
    
  • Veya uyarıcı operatörünü kullanarak ambalajını açın :

    *_,=iter(print,9)
    
  • Düşündüğüm en garip yol, işlev çağrısı içinde uyarıcı yıkıcı kullanmaktır function(*iterable). Görünüşe göre Python, işlev çağrısını denemeden önce tüm yinelemeyi tüketmeye çalışıyor - işlev çağrısı sahte olsa bile. Bu, gerçek bir işleve bile ihtiyacımız olmadığı anlamına gelir, çünkü tür hatası yalnızca yinelenebilir durumun tükenmesinden sonra atılır (yani asla):

    8(*iter(print,9))
    

*iter(print,1),çalışır ve sadece 15 karaktere sahiptir, ancak oldukça fazla hafıza tüketir.
ivzem


14

x86 .COM Yürütülebilir, 5 bayt

sonsuz ASCII karakter seti çıkışı

altıgen içinde:

40 CD 29 FF E6

asm:

inc ax
int 0x29
jmp si

Açıklama:

inc axAX kaydını birer birer artırır. int 0x29Sadece AL (AX'in düşük kısmı) değerini veren ve imleci birer birer ilerleten MSDOS'un "hızlı yerleştirilmiş karakter" yordamıdır. jmp siSI, hemen hemen tüm DOS benzeri işletim sistemlerinde 0x100 olduğundan, bu da bir .com programının başladığı yerdir;) bunun yerine kısa bir atlama yapmak da mümkündür; 2 bayt kullanır.

Kaynaklar:

MSDOS Başlangıç ​​Değerleri

Sizecoding WIKI


13

Bitxtreme , 0.25 bayt

İkili gösterim:

00

Belgelerden:

Her çiftin ilk biti, aküden çıkartılacak değeri tutan bellek konumuna bir işarettir. Sonuç, operand tarafından gösterilen aynı hafıza konumunda saklanır. Sonuç negatifse (bitler ikinin tamamlayıcı temsilindedir), çiftin ikinci biti mevcut PC'ye modulo 2'ye eklenecektir.

Program sayacı ve akümülatör sıfırlanır; daha sonra, hafıza yeri 0 içeriği, akümülatörden çıkarılır. Bu 0 olur ve akümülatör sıfırda kalır. Taşıma olmadığından, ikinci bit program sayacına eklenmez.

Program sayacı daha sonra 2 modulo 2 ile artırılır, tekrar başlangıcına gönderilir ve sonsuz bir döngüye neden olur. Her adımda, özel hafıza yeri 0, içeriğinin (a 0) çıktısına yazılmasına neden olacak şekilde değiştirilir.

Python'daki resmi tercümanın sıfır doldurmaya ihtiyaç duyması nedeniyle bu programın 1 bayt olarak puanlanması gerektiği söylenebilir. Ancak, sıfır doldurma gerçekten kod olduğunu sanmıyorum .


12

Özet: Ruby - 9, Golfscript - 6,> <> - 2, Boşluk - 19, Perl - 2

Tanıdığım bir dil ve iki, daha önce hiç kullanmadığım, daha önce kullandım: D
EDIT: Bunu denemek için Perl'i yüklediğimde Perl çalışmadı :(

Yakut, 9

loop{p 1}

Sürekli olarak ayrı satırlara 1 basar.

Ayrıca, bir sürü alternatif:

loop{p''} # prints [ "" ]  on separate lines continually
loop{p p} # prints [ nil ] on separate lines continually

10-char çözüm:

p 1while 1

İlk 1ve son arasındaki boşluğu kaldırabilmeme şaşırdım while, ama görünüşe göre işe yarıyor

Golf Yazısı, 6

{1p}do

İlk Golfscript programım! : P

> <> ( Balık ), 2

1n

Boşluk , 19

lssslssstltlsslslsl

Nerede sbir alanı temsil, tbir sekme ve temsil lbir satır besleme.


11
Ne zaman birisi "Perl yok" kelimelerini yazdığında, Tanrı bir kediyi öldürür.
primo

2
@primo: P En azından şimdi yapıyorum.
Doorknob

2
Bu kod golfü. Lütfen her gönderim için bir cevap oluşturun.
JB

21
@primo Güzel, kedilerden nefret ederim. Ve bende Perl yok.
SQB

5
GS programı {1p}doyalnızca yazdırır 1ve sonlandırılır, çünkü do yalnızca doğru sınaması durumunda devam eden bir exec-pop-test dizisidir. (Girdi olmadığından, yığın başlangıçta çalıştırılır "", çalıştırıldıktan sonra 1patılır ve yanlış test edilir.) Sadece bir dup eklemek işe yarayacaktır, yani {1.p}do(7 byte'da).
res

12

C, 25 24

main(){main(puts("1"));}

4
s/while/main/
ugoren

2
C’de stackoverflow kural dışı durum olduğundan emin değilim, ancak belleğiniz bittiğinde kötü bir şeyler olacak.
Ilya Gazman

9
Tailcall optimizasyonu ftw.
Johannes Kuhn

4
@JohannesKuhn: bu bir kuyruk çağrısı değil. Öyleyse return main(puts("1")), kuyruk çağrısı olmuştu.
marinus

4
@psgivens. Ca işlevinde herhangi bir parametre olmadan herhangi bir miktarda parametre alabilir. Sadece bir imza methodName(void)tam olarak sıfır parametre kabul eder.
James Webster,

12

> <> (Balık) , 2

Sonsuz balığın kod kutusunu kullanmanın yaratıcı bir yolu:

"o

Komut işaretçisi, sonuna ulaştıktan sonra satırın başına geri döndüğü için, bu kod temelde olarak okunabilir.

"o"o

bu, "o" dizgesini okuyun ve sonra çıktı "anlamına gelir.

Kodu burada test edebilirsiniz


11

perl, 10 karakter

İşte bazı farklı tradeoffasyonlarla birlikte 10 karakterlik perl çözümü. Özellikle, -n bayrağının veya kullanıcı girişinin başlamasını gerektirmez. Ancak, bellek ad sonsuz yemek yemeye devam ediyor.

warn;do$0

bir dosyaya kaydedin, o dosyayı yürütün ve örneğin:

Warning: something's wrong at /tmp/foo.pl line 1.
Warning: something's wrong at /tmp/foo.pl line 1.
Warning: something's wrong at /tmp/foo.pl line 1.

Bunu kullanarak saykısaltamaz mıydınız (bu, herhangi bir yerden bir argüman bulamamasına rağmen her zaman yeni bir satır yazar) warn? (Bu, kullanarak modern bir Perl değişkeninin seçilmesini gerektirir -M5.010, ancak karakter

10

dc , 7

[pdx]dx

'pdx \ n' sayısını birçok kez yazdırır.


10

VBA: 12

Ses çıkışı değil mi?

do:beep:loop

Bunu, bazı 'eğlence' için 'favori' iş arkadaşınızın favori makro özellikli MS office dosyasına koyun!

Private Sub Workbook_Open()
    Do:Beep:Loop
End Sub

Kulaklık kullanıyorlarsa bonus puan.


Dang, henüz zil sesini basmayı düşünen var mı diye cevapları inceliyordum. +1
mbomb007

9

Tohum , 4 bayt

99 5

Çevrimiçi deneyin! 11Sonsuz çıkışlar

Aşağıdaki Befunge-98 Programını oluşturur:

[glzgx"Lz^v*M7TW!4:wi/l-[, s44~s;|Sa3zb|u<B/-&<Y a@=nN>Nc%}"gq!kCW $1{2hyzABRj*glr#z(@Zx@xT=>1'.b
/

Çevrimiçi deneyin!


İlgili kısım sadece şudur:

[>1'.b
/

b11yığına iter ve .yazdırır. 1ve 49aynı zamanda yığına itilir, ancak asla yazdırılmaz.

Çalışan kodun animasyonu:

görüntü tanımını buraya girin


1
Değerler sürekli yığılmadan yığına itilirse, bu sonuçta bellekte bitmez mi?
caird coinheringaahing

8

C, 26 25 24 (özyineleme yok)

main(){for(;;puts(""));}

Sonsuz '\n'karakterleri yazdırır . Bu, en kısa C cevabından daha uzun bir bayttır, ancak yığının taşmasını önlemek için kuyruk çağrısı optimizasyonuna dayanmaz.


2
Sen kullanarak bir karakteri kapalı tıraş edebilirsiniz for(;;)yerinewhile(!
Alex Gittemeier

1
hayır !o çıkışı tutar olarak\n
l4m2

7

R, 13 karakter

repeat cat(1)

repeat cat(1)çalışması gerekir
Dason

@Dason haklısın. Neden her zaman onları koymakta ısrar ettiğimi bilmiyorum.
plannapus

7

PowerShell 2.0: 17 11 8

İlk çözümüm:

while(1 -eq 1){1}

Res için teşekkürler:

while(1){1}

Danko Durbić galibi burada galiba. Bunun neden çalışması gerektiğinden bile emin değilim, ama işe yarıyor ve şu ana kadar daha kısa bir şey düşünemiyorum.

for(){1}

1
Dene while(1){1}.
res

@res ile ikiye böldüm while($true){1}ama çözümün kesinlikle kazandı - PowerShell'de bunu unuttum $true -eq 1. Bunu bir cevap olarak gönder, ben sana bir oy vereceğim.
Iszi

İsterseniz, sizinkine düzenlemek için çekinmeyin.
res

6
Dene for(){1}.
Danko Durbić

@ DankoDurbić Bunun neden işe yaradığını açıklayabilir misiniz ? Pek anlamadım. Bana hata olmalı.
Iszi 14:13
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.