Limerick Merhaba Dünya [kapalı]


28

Yazdığınız bir kafiye programı Yarışmayı
kazanmaya çalışmak
Yarışmayı kazanmak ve oy vermek için
“Merhaba Dünya” yı hesaplamalısınız
Sonra yazdırın

En popüler şiir kazanacak.

Gereksinimler:

  • Şiir AABBA ile tekerlemeler içeren 5 satırdan oluşmalıdır.
  • İstediğinizi yazdırabilirsiniz, ancak çıktı "merhaba dünya" içermelidir (büyük / küçük harf farketmez, çıktıya dahil olmayan tırnaklar)
  • Semboller yüksek sesle okunur. Örneğin, yukarıdaki dördüncü satır okunur: Alıntı merhaba dünya fiyat teklifi hesaplamalıdır
  • Özel sembollerde küçük düşürmek için kodunuzun "sesli okuma" sürümünü başka bir kod önizlemesinde kodunuzun altına gönderin.

Hariç bırakılan şiirler:

  • Ölü kod veya tekerlemeler veya işlevler değiştirilmeden güvenle çıkarılabilecek karakterler dahil
  • Yorumları kafiye oluşturmanın bir yolu olarak kullanmak (bunun için iyi bir sebep yoksa)
  • kafiye için ifadenin sonu ile aynı sembolü kullanarak.

Beraberlik durumunda şiir çıkaran programlar kazanacak. Hala bir kravat varsa, daha kısa programlar kazanacaktır.

Yeni satırlar sayılmaz. boşluklar, sekmeler ve yeni satırlar sesli okunmaz. Örneğin, "Merhaba dünya!" yüksek sesle "çift alıntı merhaba virgül dünya ünlem işareti çift alıntı" okunacaktır.


Bütün Program ihtiyaçları beş hatlarının olunur? Bir cevap sadece gerekli komutların pasajı olamaz mı? Sınıf / fonksiyon bildirimleri ve tümü hariç mi?
mikhailcazi

Evet, tüm programın beş satır olması gerekiyor. Tanımlarınızı yaymaya çalışın ve çizgiler boyunca ekleyin. Çoğu PL, yarı-kolon veya benzeri ile tek bir satıra birden çok cümle ekleme yoluna sahiptir.
Mikaël Mayer,

Cevapların birçoğunun kireç üretmeye çalıştığını görüyorum, çünkü bu kelimeyi başlığında yazıyorsun, ama gereksinimlerinde değil.
TRiG

Bu doğru. Programın sadece limitli olmasını istiyorum.
Mikaël Mayer,

Bunu çok geniş olarak kapatmak için oy kullanıyorum, çünkü bir cevabın geçerli olup olmadığını objektif olarak belirlemenin bir yolu yok.
Buğday Sihirbazı

Yanıtlar:


86

Beyaz boşluk

Yazdığım bir kafiye programı  	   
	
     		  	 	
	
bu boşluk ve şişkinlik şiiri		 		  
	
     		 		  
	
çünkü yeni satırlar sayılmaz  		 				
	
     	     
	
miktara rağmen   	 	 			
	
     		 				
	
bu yüzden en içten oyuna layıksın 			  	 
	
     		 		  
	
     		  	  
	
  


Vikipedi: Boşluk (programlama dili) Cevabı Test Etmek İçin
Online Tercüman

Çıktı:

Selam Dünya

3
Bu bir şekilde bana Beatles'ın Bir Araya Geldiğini hatırlatıyor .
user12205

7
Kesinlikle "benden"
Sideshow Bob

6
Hariç bırakıldı: Yorumları kafiye yapmanın bir yolu olarak kullanmak
Charles

2
Şey, diğer karakterlerin boşluktaki yorum olduğunu unuttum. Bu kuralı koruyacağımı sanmıyorum, çünkü bu kazananı mahvedebilir.
Mikaël Mayer

3
@ MikaëlMayer Bence kuralı korumalısın. Bu oyların çoğunun çoğunlukla Beyazlar'ın çekiciliğini keşfeden insanlardan geldiğine inanıyorum. Şahsen, daha çok kafiyeli kodlama mücadelesinin ruhunda cevapları görmekle ilgileniyorum.
Jason C

60

HTML

<html>
<body><span
    class="poem"
    > Hello World! I'm a goat
</span></body></html><!-- Pecan -->

Son satırın telaffuzuyla biraz liberal olmak zorunda kaldım. Umarım kuralları çiğnemez. Ayrıca W3C başına% 100 geçerli değildir, ancak çoğu tarayıcıda çalışır.

<!--
less than aich tee em el greater than,
less than body not equal to span,
class equals quote poem end quote,
greater than Hello World Bang I'm a goat
close span close body close root comment pecan
-->

4
Zekice telaffuzlar için +1 ... + "Patlama,
keçiyim

5
><"Eşit değil" olarak okumak için +1
John Dvorak

3
Acemi bir şiir yazdı / oy aldı: Sadece bir oy aldı / Şimdi yarışta / İkinciliği var!
kobaltduck

26

JavaScript

Bunun kurallar dahilinde olmadığını biliyorum ama dayanamadım

var girl, attractive = true;    // There once was a beautiful girl
var boy; girl = ' World';       // And a boy who thought she was his world
boy = 'Hello' + girl;           // When the boy said hello
if (boy != attractive)          // She said 'my goodness no!'
    alert(window['boy']);       // And the boy through the window she hurled.

4
Yaratıcı ve ustaca.
Damon Swayn

3
İkinci satırdaki kızı yeniden tanımlamaya gerek yoktu ama ben hala seviyorum.
howderek

23

piton

a = [
'hello world']
print ''.\
join(a##
)

veya,

a equals open square bracket
quote hello world quote close square bracket
print quote quote dot backslash
join paren a hash hash
and finally close unmatched bracket

Ben gönüllü olarak ek kurallara imza atıyorum, çünkü bence (1) kireççilerin iyi bir ölçere sahip olması ve (2) en iyi olanların son sırada bir sürpriz yapması gerektiğini düşünüyorum.

(İngilizce bittikten sonra, ne tür bir parantezin eşleştirilemediğini kendiniz çözebilirim. Ölü kod gerekmemesi durumunda, hiçbir şey kafiyeden, ritimden veya çıktıdan en az birini değiştirmeden kaldıramazsınız. ).


Biri işlevselliği veya kafiyeli değiştirmeden bir hash kaldırabilir. Bu does Eğer devlet olarak ritim değişebilir ama Sorunun koşulları oldukça burada temizlemek edilir, sanırım.
Keba

1
Şiirin doğası kuralları bükmek olduğu için onunla yaşayabilirim. Bununla birlikte, bu metrenin zaten OP'nin kafiye kavramının bir parçası olmadığı açık değil.
Sideshow Bob

3
Meh. "Braketi" üç kez tekerlendirmek, sadece tembel bir kireçlenmedir.
MikeTheLiar

Evet, bunun için üzülüyorum. Ancak OP tarafından talep edildiği gibi her bir kafiye için farklı bir simgedir.
Sideshow Bob

14

Haskell

Belli sembollerin telaffuzuyla bazı özgürlükler almak, örneğin; Tuple yapımı (,,) ve fonksiyon uygulaması ($).

main = something that we wrote
     where something x y z = bloat
           bloat = flip ($) m putStrLn
           (that,we,wrote) = undefined
           m = "hello world"

Okuma olması gerekiyordu:

main is something that we wrote
where something x y z is bloat
bloat is flip apply m putStrLine
Tuple that we wrote is undefined
misquote hello world quote.

12

JavaScript

if (!!1) // and
  alert('&#10084; &#10084; the world') // and
Burn = $.cache
return 1 > his_parts.the_sum

Köşeli parantez içinde biri ünlem dışı işaretleri izlerse

ve varlık kalplerinden sonra, parantez içindeki dünyayı uyarın

eğik çizgi, eğik çizgi ve yanık

eşittir nakit, nakit, iade

biri onun parçalarının toplamından daha büyük


3
JavaScript yazmadığımı itiraf etmeme rağmen "$" kelimesini "nakit" olarak ilan eden birini tanıdığımı sanmıyorum.
Carl Witthoft,

1
+1 Edebi olmayan transkripsiyonu seviyorum ve "varlık kalpleri" satır sonu özgürlüklerine rağmen biraz eğlenceli.
Jason C

8

TEMEL

Daha spesifik olarak, Chipmunk Basic . Sözdizimi kuralları neredeyse kırılma noktasına kadar uzanıyordu, bu yüzden başka lehçelerde değişiklik yapmadan çalıştırmak imkansız olabilir.

Kaynak:

read hi$, u$, q
print hi$ " world how are you
  print "Or as they say
  print u$ q "day
data Hello, How R U, 2

"Sesli oku" sürümü:

read hi string comma u string comma q
print hi string quote world how are you
  print quote Or as they say
  print u string q quote day
data Hello comma How R U comma 2

Notlar:

  • Kaynak kodunda satır numarası yoktur, ancak yine de yüklenir ve sorunsuz çalışır (aşağıya bakınız).
  • $Mührü olarak okunur "dizesi" TEMEL programların (örneğin bakınız bağlamında bu Wikipedia sayfasını ).

Ve işte gerçekten işe yaradığının kanıtı

Mac OS X'te çalışan programın ekran görüntüsü


Bu gif'i nasıl yaptın?
Kartik

@Kartik IShowU adında bir uygulama kullandım
ossifrage

6

darbe

Cevap sadece "Merhaba Dünya" ifadesini içermesi gerektiğinden, en kolay çözüm şöyle olmalıdır:

echo A rhyming program you write
echo Attempting to win the fight
echo For winning the contest and vote
echo It must compute "Hello World"
echo Then print it very polite

8
Kurallar dahilinde yasal, ancak bu cevap partilerde eğlenceli değil . meta.codegolf.stackexchange.com/a/1063/3363
Jonathan Van Matre

1
@JonathanVanMatre Bu sorunun söz konusu olduğu bir işaretidir. Çıktıyı doğrudan yazdırmaktan farklı bir şey çok fazla olacaktır. Ayrıca, ilk "hariç tutulan" kural, daha yaratıcı olan her şeyi, birden fazla karakter ve kod tanımlayan değişken isimleri bile engeller, popülerlik yarışması olarak değerlendirilen ve ikisinin de en kötüsünü alan bir kod golfüdür.
Victor Stafusa,

4
@Timtech: Oy ve Alıntı.
Keba

2
Soruyu iyileştirmeyi düşündünüz mü? / Bu daha iyi bir izlenim bırakmış olabilir. / Hasar verilmiş olmasına rağmen / daha eğlenceli olmaz mıydı? :)
Jonathan Van Matre

1
@Victor, "güvenle kaldırılabilen karakterler", kafiyenin bir parçası olmaları dışında çok karakterli değişken adlarını kullanamayacağınız anlamına gelir. Bu problemli.
Jonathan Van Matre

6

Java

public static void main(String[] boat
){ int i = 1.0f
  ;if(i<2
  )System.out.println
("Hello world");} //hello world wrote


public static void main paren String arr boat
paren brace int i is one-point-oh float
sem-col if paren i is less than two
paren system dot out dot print line new //for some reason it's println, not printnl
paren quote hello world quote paren sem-col brace slash-slash hello world wrote

Yorumların Java'da gerçekten isteğe bağlı olmadığını unutmayın


b"Tekne" ihtiyaçlarını kaldırılacak ( "yulaf' geçerli değişken adıdır ve uyan)
pppery

6

Yakut

comma = ""<<44
print "Hello" or
more = ""<<32
print comma if true
puts("World!") unless print more

Canlı: https://ideone.com/sirBBc

Aşağıdaki gibi söylenir (vurgulanan hecelerle büyük harfle yazılır)

comma Equals quote-QUOTE cons four-FOUR
print QUOTE hello END quote OR
more equals QUOTE quote cons three-TWO  # ok, that was squished
print COMma if TRUE
puts QUOTE world QUOTE UNless print MORE

mVe eher iki örneği de moreihtiyaçları (kaldırılması orebu pozisyonda geçerli bir kelime de değildir)
pppery

Hm, orya orda ile yasal olarak kafiyebileceğimi sanmıyorum ore.
histocrat

Bu, yinelenen kelimeleri olan bir limerickin tek örneği olmayacaktı
pppery,

4

Haskell

main = print . repeat
  $ head $ lines . init
     $ "Hello \
       \World!" #
         Just where (#) = const . id

Ana birim, yazdırılan stop tekrarına eşittir
Dolar başı dolar çizgisinin tam durağı i'nnit?
Dolar alıntı merhaba geri eğik çizgi
Geri slashworld bang alıntı hash
Sadece parenthised hash constful eşittir, kes şunu!

Bu, umarım, programın fiili davranışını açıklar.


2

TeX

Önceden özür dilerim, çünkü bu sembol tek tek sembollerin her birinin isimlerini söylerseniz (özellikle her bir mektubu kendine bir işaret gibi bir token gibi davranırsanız) bir sınırlayıcı olarak sayılmaz. Bu şekilde mümkün olan en güzel çıktıyı üretmek için yazı yazdım;

Güvenle \it, final \bye( ters eğik çizgi olarak yüksek sesle oku ) ve belki ilk !( patlama kadar yüksek sesle oku ) hariç, alfabetik olmayan, beyaz olmayan bir karakterden kurtularak kurallara uygun bir cevaba dönüştürebilirsiniz .

A \TeX\ program I think would comply,

And I'll tell you the reason for why:

``Hello world!'' tells the setter:

{\it ``Print each subsequent letter!''}

And we terminate with \bye.

Düzgün bir şekilde kafiyeli olmalarını sağlamak için her ayetin sonunda komaları ve sembolleri çıkarmalısınız. Veya daha sonra sıraya koyun.
Mikaël Mayer,

@ MikaëlMayer: ikinci paragraftaki açıklamalara bakın.
Niel de Beaudrap

2

Brainf * ck

Tamam, sayısız kural ihlali için beni aldattın. Fakat bunun için yardım edemedim.

++++++++[>+++++++++<-
]>.---.$#
+++++++..+
++.++++++++
.--------.+++.------.--------.

Ve çıktı (birçoğunun ilk ihlali: boşluksuz):

HELLOWORLD

Burada deneyin: http://www.iamcal.com/misc/bf_debug/

Bunun okunması:

Eight plus left more nine plus less dash
Right more dot three dash dot cash hash
Sevén plus dot dot plus
Plus plus dot eight plus
Dot eight dash dot three plus dot six dash dot eight dash.
  • Programdaki son noktanın, limerick'in sonundaki periyot olarak yerleştirildiğine dikkat edin :) [ikinci ihlal; bu ucuz]. Ayrıca, $ve #yorumlayıcı tarafından göz ardı edilir (Gurur kendimi bu hat içindi).

  • Aksan vurgusu Sevéngöstermektir: seh-VEN

  • Bu, farklı semboller kullanma kuralını ihlal ediyor. Ama dürüst olmak gerekirse, çok sınırlı bir simge setim var ve diğer (yok sayılan) karakterlere ekleyecek yerim yok.

  • Tüm kapakları kullandım çünkü bunlar ASCII'ye daha hızlı erişiyorlardı. Maalesef yer için yerim yoktu.

Sonunda: evet, son satırın korkunç olduğunu biliyorum. Bunu geliştirmek için herhangi bir öneriniz var mı? Artık bu programı sıkıştırabilir misiniz emin değilim; belki tekrarlanan harfleri kendi konumlarında saklayarak?


Sadece bu kodu daha uzun hale getirecek olsa da, ilk döngüyü 72'ye çıkarmak, sınırlayıcıda +biraz yer kazandıracağını fark etti. Ama cevabımı olduğu gibi tutacağım.
Baum

2

C #

Gerçekten fonetik C varyantları, hepimizin bildiği gibi, hiçbir şey için özellikle iyi bir tekerleme olmayan "yarı-kolon" un çok fazla kullanılmasını içerdiği için, kurallar konusunda birkaç ufak özgürlük aldım.

{
     string unfurled = "Hello World!";
     Console.WriteLine(unfurled);
}

açık parantez, dize unfurled denir

"merhaba dünya" okumak için yaratıldı

konsol yazma satırı

tanımladığımız dize

kıvrılmış bir son ayraç


Yeni bir satırın başına her zaman noktalı virgül koyabilirsin, değil mi?
Mikaël Mayer,

Doğru, Mikael, ama kod çok düzensiz görünüyor!
BrummiePete

1
Düzensiz ve kafiye arasında, burada amaç kafiye hakkında. Endişelenmeyin, bu kod hakem tarafından gözden geçirilmedi.
Mikaël Mayer

1

Java

class Hello {public static void main
(String[] args)
{yellow = System; yellow
.out.print("Hello
world");} }

class Hello brace public static void main
paren string bracket bracket args paren
 brace yellow equals system sem-col yellow
 dot out dot print paren quote hello
world quote paren sem-col brace and brace again

1
Bu derleme değil. Nasıl yellowilan edilir?
12'de

1

yığın

@echo off >dull
set /p "=Hello "<nul
set w=World
echo %w%! || Furled
del dull || cull

donuk
küme slash p alıntı eşit kapalı yankı selam nul
setten Merhaba alıntı w eşit Dünya
yankı yüzde w yüzde bang boru borusu Furled
del donuk boru boru cull


Donuk / donuk başka bir kafiye bulabilir misin?
Mikaël Mayer,

@ MikaëlMayer daha işe yaramaz bir kod, ama evet.
unclemeat

1

CSS

title>me
,body lets go party
only a stylesheet,html
:after { content: 'hello world'; font-family:Rockwell
; color: #adad20

Çıktılar:

ünvan benden büyük

virgül gövdesi partiye gidelim

sadece bir stil sayfası virgül html

dirsek içeriği sonra kolon kolon alıntı merhaba dünya alıntı noktalı virgül font-aile kolonu Rockwell

noktalı virgül renk kolon hashtag bir baba yirmi

Firefox ve Chrome'da test edildi


1
#include <stdio.h> //
void main (void){
printf("Hello, World");
//just for rhyme I say stolon
} /**/

karma, bir boşluktan sonra çift eğik çizgiden daha büyük stdio nokta h'den az içerir

void ana sol paren geçersiz sağ paren sol küme ayracı

printf paren alıntı sol virgül Dünya alıntı sağ paren yarı sütun

sadece kafiye için çift eğik çizgi

Sağ köşeli ayraç ve sondaki eğik çizgiler arasında çift yıldız


İlk iki tekerleme için çok güzel, ama kafiye için iki kez aynı sembolü kullanıyorsunuz (yarı-kolon), izin verilmez.
Mikaël Mayer,

Hata ayıklandı, ancak sanırım başka bir hata ortaya çıktı.
Nayuta Ito,

0

Windows Toplu İşi

Konuşulan kelimeler de toplu iş dosyasına kaydedilir ve gerçek kodun son satırı ile atlanır.

@echo off >nul
set hi=Hello World
rem Now print the string,
echo !hi!
goto :) to skip the words

at echo off, greater than nul,
set H I equals sign, Hello World,
rem Now print the string,
echo pling, H I, pling
goto smile, to skip the words

:)

Düzenleme: Komut dosyasının çalışması için etkinleştirilmiş gecikmeli genişletmeye ihtiyacınız olacak. Kullan cmd /v:onve oradan çalıştır.


1
nul, worldve wordskafiye yapmayın. Desenin AABBA olması gerekir. Ayrıca sonra virgül stringtelaffuz edilmelidir.
14'te

0

' klavyemdeki harf tuşlarını
yazdır ' yazdır 'Merhaba
' dünya baskısını söylemek için yeterli 'karanlık
'
yazarken buraya 'parkta oturmak ' baskısı ' korkunç, çok sıkılıyor'


Kurallara dikkat edin: gibi semboller 'yüksek sesle okunur ve kafiye planının bir parçası olarak sayılır. PPCG'ye Hoşgeldiniz!
Jonathan Van Matre

Yani teknik olarak işe yarıyor. O söylemez Ateneke olmayabilir B.
CompuChip

0

Python (3)

print('''Nose
No punctuation hear close
Hello World
Hurled and swerled
Goodbye now''')

Açık teklif alıntı fiyat teklifi burun, Hiçbir noktalama işareti yakın duymak, Merhaba Dünya, Hurled ve kundaklanmış, Hoşçakalın şimdi teklif alıntı yakın.


Siteye Hoşgeldiniz ve güzel ilk mesaj!
caird coinheringaahing
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.