Cetak tanda bintang 10 sebanyak 10


83

Latar Belakang

Ini adalah contoh buku teks standar untuk mendemonstrasikan loop.

Ini adalah salah satu program pertama yang saya pelajari ketika saya mulai belajar pemrograman ~ 10 tahun yang lalu.

Tugas

Anda harus mencetak teks ini:

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

Spesifikasi

  • Anda mungkin memiliki baris tambahan tambahan.
  • Anda mungkin memiliki spasi tambahan tambahan (U + 0020) di akhir setiap baris, termasuk baris tambahan tambahan tambahan.

Mencetak gol

Ini adalah . Jawaban terpendek dalam byte menang.

Papan peringkat

Berikut ini adalah Stack Snippet untuk menghasilkan leaderboard biasa dan gambaran umum pemenang berdasarkan bahasa.


2
@DylanMeeus "Anda mencetak ini tepat teks:"
Leaky Nun

13
@DylanMeeus Karena itu ada hubungannya dengan alat dev menyembunyikan keluaran konsol berulang, dan bukan asli ke konsol JavaScript secara keseluruhan dan tidak dalam spesifikasi JavaScript - serta fakta bahwa fitur dapat dimatikan - saya pikir itu harus dapat diterima. Tidak semua browser akan runtuh seperti itu.
Trotski94

6
Cuplikan Leaderboard @LeakyNun!
dkudriavtsev

2
Salah satu hal yang paling menarik tentang tantangan ini adalah bahwa tergantung pada bahasa Anda ********** bisa lebih pendek daripada satu lingkaran. Membuat saya bertanya-tanya kapan lebih baik untuk bahasa yang diberikan untuk beralih antara 1 atau 2 loop.
dwana

1
Anda mengatakan membuntuti baris baru dapat diterima. Apakah memimpin baris baru juga dapat diterima?
Albert Renshaw

Jawaban:




65

Bash + coreutils, 19 byte

Saya lebih suka mengulangi hal-hal di Bash menggunakan 'ya'.

yes **********|head

Saya menyimpan 2 byte atas saran @ Neil. Tetapi ketika direktori tempat Anda menjalankan perintah ini tidak hanya berisi file yang dimulai dengan '.' dot Anda perlu menyertakan bintang *dengan" .

Bash + coreutils, 21 byte

yes "**********"|head

2
Ide bagus untuk digunakan yes. Kami biasanya memberi label solusi seperti "Bash + coreutils".
manatwork

8
Bagus bahwa 10 baris kebetulan menjadi default untuk head.
Digital Trauma

3
Bisakah Anda menyimpan dua byte dengan mengharuskan file dalam direktori saat ini harus dimulai dengan .?
Neil

@Neil, apakah komentar Anda untuk jawaban saya? Jika demikian, saya tidak mengerti :)
CousinCocaine

1
Anda juga dapat menulis yes \**********|headtanpa batasan pada file.
Florian F

50

Vim, 13 8 byte

Disimpan 5 byte berkat @Lynn

qqi*␛9.o␛q9@q 

10i*␛Y9p

10i*␛masukkan 10 kali *, dan Y9psalin barisnya dan tempel 9 kali.


8
10i*♥Y9pbekerja.
Lynn

1
Itu gila vi.
nbubis

Saya pikir Anda dapat menghitung penekanan tombol alih-alih byte untuk editor teks, yang berarti <ESC> akan lebih pendek.
addison

1
Kenapa ♥ dan tidak ␛?
CL.

1
Saya akan menggunakan yy9pdiri saya sendiri, tetapi pekerjaan yang bagus menggunakan huruf besar untuk menyimpan karakter!
Joe Z.

49

Pyth, 6 byte

VT*T\*

Tadalah 10 dalam Pyth, Vabmengeksekusi b awaktu pernyataan , \*adalah karakter tanda bintang konstan, dan mengalikan ( *) string dan integer mengulangi string itu n kali. Pencetakan implisit Pyth dengan Vcara 10 baris dicetak.


40

Segi enam, 37 35 34 31

10"+}(=${";<$<1}42/.0@_=<>\;>(_

Diperluas:

   1 0 " +
  } ( = $ {
 " ; < $ < 1
} 4 2 / . 0 @
 _ = < > \ ;
  > ( _ . .
   . . . .

Cobalah online

Pada dasarnya hanya memiliki dua untuk loop menghitung mundur dari sepuluh ke nol, mencetak tanda bintang pada loop dalam, dan baris baru pada loop luar.

Penjelasan:

Program ini terdiri dari tiga bagian utama: inisialisasi memori, loop yang mencetak sepuluh tanda bintang dan loop yang mencetak baris baru. Loop yang mencetak baris baru juga berisi loop yang mencetak tanda bintang.

Pertama, kode menjalankan inisialisasi memori yang benar-benar linier. Kode bekerja menjadi: 10"+}42. Ini mengatur memori tepi terdekat menjadi seperti:

10 \ / 10
    |
   42

42 adalah kode ASCII untuk karakter asterisk, dan dua puluhan akan digunakan sebagai penghitung loop kami. Yang perlu diperhatikan adalah bahwa penunjuk memori saat ini mengarah menjauh dari dua puluhan, sehingga bergerak mundur akan menempatkan kita pada salah satu dari puluhan.

Selanjutnya, kita mulai lingkaran pencetakan astersisk. Linear, kode terlihat seperti: ;".._(. Ini mencetak tanda bintang, menggerakkan penunjuk memori mundur dan ke kiri dan akhirnya mengurangi nilai di sana. Setelah satu iterasi, memori akan terlihat seperti:

10 \ / 9
    |
   42

Kemudian kita tekan kondisi loop: paling kiri bawah >. Jika tepi yang baru saja kita dekrementasi masih positif, kita terpental dan mengeksekusi {untuk memindahkan kita kembali ke 42. Kemudian kita menekan a $dan kembali ke awal loop pencetakan, yaitu ;, dengan melewatkan <. Jika nilainya nol, kita menuju ke loop lain.

Lingkaran luar dimulai dengan mengatur ulang tepi memori yang baru-baru ini menjadi sepuluh (ini adalah 10dalam kode, menuju barat daya). Kemudian, kami mencetak sepuluh ini sebagai karakter ASCII, yang merupakan baris baru. Berikutnya, kita bergerak ke tepi memori lain dan pengurangan dengan {(dan kemudian jalankan apa sebesar sekelompok noops: =${_=. Sekarang, setelah satu iterasi dari loop ini, memori akan terlihat seperti:

 9 \ / 10
    |
   42

Kali ini, memori menghadap keluar dari tepi menyimpan sembilan dalam diagram di atas. Selanjutnya kita jalankan <yang bertindak sebagai kondisi loop untuk loop luar. Jika nilainya tidak nol, kami terpental dari beberapa cermin, lalu mulai jalankan instruksi yang berarti lagi setelah memasukkan bagian atas segi enam di "barat daya yang bergerak. Ini menyebabkan kita bergerak mundur dan ke kiri, ke 42 lagi, tetapi menghadap ke dalam. Kemudian =membalik arah kita, mengatur ulang negara dengan benar untuk memulai lingkaran dalam lagi. Jika tepi diatur ke nol, penunjuk instruksi melanjutkan petualangan kecil yang tidak melakukan apa-apa sampai keluar dari program.

Petualangan dimulai dengan penunjuk instruksi yang menjelajah timur laut, dengan mengabaikan keamanan kardinal. Dengan berani mengabaikan cermin yang selaras dengan diretionnya (/ ) dan heroik melompat dari trampolin ($) sepenuhnya menghindari jebakan maut dari trampolin lain yang sama sekali identik. Menatap kekosongan dari tepi segi enam yang tidak diinisialisasi, pointer, tanpa goyah sejenak, menambahkan dua tepi kosong yang dihadapinya bersama, mengatur tepi saat ini ke jumlah mereka: 0 (tepi sebenarnya nol sebelumnya, tetapi pointer suka percaya ini cukup penting). Karena ujungnya nol, penunjuk berbelok ke kiri di persimpangan jalan, berjalan ke hutan misterius (segi enam). Di sana, ia mendapati dirinya bingung, bergerak maju dan mundur dan maju, sampai berakhir di tempat yang sama dalam ingatan ketika ia mulai. Berpikir bahwa masalahnya pastilah bahwa edge saat ini ditetapkan ke nol terakhir kali, pointer dengan berani menanam a1ke tepi saat ini. Kemudian, penunjuk mulia menyelidiki jalan lain, satu diletakkan dengan ... sebuah jebakan! Tepi saat ini dikurangi dan diatur kembali ke nol! Penunjuk, bingung oleh pergantian mengejutkan peristiwa, tersandung kembali ke dalam perangkap mengatur tepi saat ini ke yang negatif. Marah, penunjuk berusaha untuk kembali ke hutan yang relatif menyenangkan, hanya untuk memperhatikan bahwa karena tepi saat ini tidak positif, jalan lagi bergeser dan penunjuk menemukan dirinya berjalan ke gua. Dan dengan sebuah gua, maksudku mulut cacing heksagonal raksasa. Tak berdaya, penunjuk itu mengutuk seksualitas dengan napas sekarat. Juga, program berakhir.


Astaga, aku harap cacing itu baik-baik saja dengan menelan pointer. Hal-hal itu bisa menyakitkan .
Joffan

3
+1 untuk menulis penjelasan Hexagony yang paling menarik — satu-satunya — yang pernah saya baca. Saya merasa sangat tegang ketika pinggirannya dikurangi!
Joe

37

Emacs, 10 8 penekanan tombol

F3 C-1 0 * ENTER F4 C-9 F4

Penjelasan

F3             Starts a macro recording
C-1 0 *        Apply 10 times command '*': prints 10 asterix'
ENTER          Insert new line
F4             Stops the macro record
C-9 F4         Apply 9 times the macro

Terima kasih kepada Sean karena telah menyelamatkan dua penekanan tombol, menyarankan untuk mengganti C-udigitdengan C-digit.


9
+1, saya selalu mengunggah jawaban editor teks (walaupun saya sendiri lebih vim guy) :)
DJMcMayhem

1
Jika C-udihitung sebagai hanya satu penekanan tombol, maka Anda dapat mencukur dua pukulan dengan mengetik C-1 C-0(atau M-1 M-0) alih- alih C-u 1 0dan C-9bukannya C-u 9.
Sean

15
+1 karena Anda harus menderita karena menggunakan emacs untuk menulis ini.
addison

1
Atau (tidak menghemat) pengulangan baris dapat dilakukan di dalam makro:F3 C-1 0 * ENTER C-1 0 F4
Jonathan Carroll

@ JonathanCarroll ya itu akan menghemat byte jika kita mencetak lebih dari 10 baris;)
YSC

29

Jelly , 7 byte

”*x⁵Ṅ9¡

Apa yang sedang terjadi?

”*x⁵Ṅ9¡  - No arguments
”*       - character literal, *
  x      - multiply (dyadic operation)
   ⁵     - integer literal, 10 (we have now constructed the string '**********')
    Ṅ    - Print & linefeed (monadic operation)
     9   - integer literal, 9
      ¡  - Repeat n times (n is 9 as the first Ṅ is not a repeat)

Uji di tryitonline


9
Saya sangat suka Ṅ9¡.
Dennis

Versi daftar: ”*ẋ⁵Wẋ⁵.
Erik the Outgolfer

@EriktheGolfer Anda akan memerlukannya Ydi bagian akhir untuk "mencetak teks ini dengan tepat"
Jonathan Allan

@JonathanAllan Ini adalah daftar sendiri, meskipun. Ini tidak dimaksudkan untuk "mencetak teks ini", tetapi, jika Anda ingin mengerjakannya, Anda akan menggunakannya.
Erik the Outgolfer

26

PowerShell, 14 12 byte

,('*'*10)*10

Membangun serangkaian tanda bintang dengan panjang 10 menggunakan perkalian string. Meringkas bahwa dalam parens dan memasukkannya ke dalam koma-operator untuk membangun sebuah array. Kami menggunakan perkalian array untuk membangun array 10-elemen yang terdiri dari elemen itu (yaitu, array 10-elemen string asterisk). Yang tersisa di pipeline, dan output tersirat (karena default Write-Outputuntuk array dipisahkan oleh baris baru, kami mendapatkannya secara gratis - terima kasih kepada @ Joey untuk klarifikasi).

Lebih lama, 14 byte

0..9|%{'*'*10}

Program lengkap. Loop dari 0ke 9melalui ForEach-Objectloop |%{...}. Setiap iterasi, kami menggunakan perkalian string untuk membuat 10string panjang *. String-string yang dihasilkan ditinggalkan di pipeline, dan output pada akhirnya adalah implisit (karena default Write-Outputuntuk array dipisahkan dengan baris baru, kami mendapatkannya secara gratis - terima kasih kepada @ Joey untuk klarifikasi).


5
Saya suka itu, karena PowerShell bisa menjadi sangat verbose. Namun ini elegan dan pendek.
dwana

Nah, secara teknis array tidak pernah melewati ToString, itu terbuka dan diteruskan elemen demi elemen ke Write-Output. Dalam konteks di mana array dikonversi menjadi string, Anda mendapatkan elemennya dipisahkan dengan ruang.
Joey

@ Joey Ah, adil, itu cara yang lebih baik untuk menjelaskannya. Saya akan mengedit kata-katanya (dan templat jawaban saya ;-)).
AdmBorkBork

1
Saya mungkin bias di sini karena saya terlibat dengan implementasi PowerShell jadi saya harus belajar banyak dari apa yang sebenarnya terjadi di dalam interpreter;)
Joey

25

V , 7 byte

10é*10Ä

Cobalah online!

Tentang sejelas jawaban bisa.

Penjelasan:

10      "10 times:
  é*    "insert an asterisk
    10Ä "make 10 copies of the current line

Versi yang tidak bersaing (5 byte):

10O±*

Penjelasan:

10O     " Insert the following on the next ten lines:
   ±    "   10 copies of
    *   "   an asterisk

Ini tidak berfungsi ketika tantangan diposting karena bug.


Poin pesanan: é dan Ä adalah karakter multibyte (setidaknya dalam utf-8, seperti yang Anda miliki di sini) sehingga panjang program ini adalah 9 byte.
merampok

6
@rob Mereka dikodekan dalam utf-8 di sini, karena itulah cara browser bekerja. V menggunakan penyandian "Latin1", di mana mereka berada E9dan C4masing - masing.
DJMcMayhem

21

Ubur-ubur , 12 10 byte

Terima kasih kepada Zgarb karena telah menghemat 2 byte.

P$'*
 &;10

Cobalah online!

Penjelasan

Menggunakan notasi yang lebih konvensional, program ini mewakili ungkapan berikut:

P( $( &;(10), '* ) )

&;mengambil nilai tunggal dan membuat pasangan dengan nilai dua kali lipat, jadi &;(10)beri kami [10 10]. Kemudian $dibentuk kembali yang membentuk kotak tanda bintang 10x10. Akhirnya, Pmencetak array dalam "format matriks" yang mencetak setiap string pada barisnya sendiri.


20

HTML & CSS, 104 60 byte

p::after{content:"**********"
<p><p><p><p><p><p><p><p><p><p>

Saya tidak yakin apakah jumlah byte sudah benar (karena saya tidak menghitung <style> tag untuk CSS. HTML juga dapat dipersingkat jika saya menggunakan preprocessor HTML, tapi saya tidak yakin apakah itu melanggar aturan

Terima kasih kepada manatwork dan Kucing Bisnis.

Lihat entri Jade saya sebesar 36 byte


Anda dapat meninggalkan penutupan sendiri /dan menulis semua tag di baris yang sama. Tetapi lebih baik ubah tag <p>karena lebih pendek meskipun Anda perlu menambahkan p{margin:0}.
manatwork

2
Ini bukan css yang valid. Anda membutuhkan braket penutup!
Richard Hamilton

25
@RichardHamilton css yang valid dan css yang berfungsi bukanlah hal yang sama
undergroundmonorail

1
@ClementNerma Mengapa ada orang yang menaruh kode setelah ini?
Erik the Outgolfer

2
Anda dapat meninggalkan yang terakhir >saya percaya
12Me21

16

Python 2, 22 21 byte

print('*'*10+'\n')*10

print(("*"*10+'\n')*10)bekerja untukku.
piepi

6
@piepi Itu sebabnya Anda biasanya lebih baik bermain golf di Python 2 - Anda tidak perlu tanda kurung saat menelepon print.
shooqie

@shooqie Anda tidak bisa mengalahkan solusi Python3 menggunakan Python2. Python2 dan Python3 adalah bahasa yang berbeda. Anda juga tidak akan membandingkan solusi Python2 dengan bahasa golf khusus seperti Pyth.
Alfe

16

MATLAB, 14 byte

repmat('*',10)

Saya tidak punya MATLAB untuk menguji ini, jadi saya tidak yakin apakah ini memiliki spasi di antara *s.
Erik the Outgolfer

@EriktheGolfer jelas tidak :)
PieCot

matmenyarankan sebuah matriks, itu sebabnya saya bertanya.
Erik the Outgolfer

2
@EriktheGolfer, permisi, saya kasar. Mat, pada kenyataannya, mengacu pada matriks, tetapi dalam kasus ini adalah matriks char, yaitu array string (setiap baris seperti string). Jadi, matriks keluar dicetak satu baris untuk baris, tanpa spasi antara elemen-elemen dari baris yang sama.
PieCot

16

APL , 9 byte

Bekerja pada semua APL yang pernah dibuat.

10 10'*'

10 10 sepuluh baris dan sepuluh kolom

 siklis r epeating

'*' sebuah bintang

TryAPL online!


Perlu dicatat bahwa solusi ini tidak spesifik Dyalog; ini juga bekerja dengan GNU APL.
Arc676

3
@ Arc676 Benar. Bahkan, ini bekerja pada semua APL yang pernah dibuat.
Adám

argh, saya hanya perlu satu byte lagi ... Saya hampir mengalahkan Anda dengan trik "format":∘.⊢⍨⍕⍨,⍨5
ngn

@ Ngn Itu sangat mengerikan!
Adám

14

Java 7, 63 byte

void f(){for(int i=0;i++<10;)System.out.println("**********");}

Hanya untuk iseng. Saya tidak bisa menemukan trik untuk mempersingkat ini. Mencoba menambahkan logika untuk 100-loop atau mengembalikan String alih-alih mencetak hanya berakhir lebih buruk.


1
Anda dapat mencukurnya satu byte jika Anda mendeklarasikan isebagai variabel kelas (defaultnya adalah 0):int i;void f(){for(;i++<10;)System.out.println("**********");}
shooqie

1
Itu akan menghancurkan reusability kecuali saya melakukan i=0suatu fungsi, meniadakan penghematan.
Geobits

3
1 Sepertinya Anda memang benar bahwa ini adalah terpendek .. Rekursif adalah 65 bytes: int i=10;void f(){System.out.println("**********");if(i-->0)g();}; Satu per satu rekursif adalah 67 bytes: int i=99;void f(){System.out.print(i%10<1?"*\n":"*");if(i-->0)g();}; Menggunakan String-konstruktor dengan char-array 82 byte: void g(){System.out.print(new String(new char[10]).replace("\0","**********\n"));}; dan String.format adalah 81 bytes: void g(){System.out.print(String.format("%010d",0).replace("0","**********\n"));}. Ah, kami sudah mencoba. ;)
Kevin Cruijssen

2
Tetapi apakah itu diperhitungkan tanpa harus menambahkan deklarasi kelas itu sendiri? Apa program penuh java7 terpendek yang dapat melakukan ini?
jsbueno

1
Anda harus menghitung pernyataan impor, sehingga tidak akan berfungsi untuk penghematan di sini.
Geobits

14

Ruby, 15 karakter

puts [?**10]*10

Contoh dijalankan:

bash-4.3$ ruby -e 'puts [?**10]*10'
**********
**********
**********
**********
**********
**********
**********
**********
**********
**********

Bisakah Anda jelaskan ?**10? Memang membuat string sepuluh asterisk, tapi saya tidak jelas bagaimana ...
erich2k8

3
The ?adalah karakter notasi literal, sehingga ?* == '*'. Yang ke-2 *adalah String.*metode , jadi ?**10 == '*'.*(10).
manatwork

Takut saya masih tidak mengerti mengapa ?notasi literal apa pun, tetapi mungkin beberapa pertanyaan lebih baik dibiarkan tidak terjawab. ;)
erich2k8

Maaf, saya tidak dapat menemukan referensi tentang ini. Sederhananya adalah sintaks Ruby, yang memungkinkan berbagai notasi string string ditambah satu jika string panjangnya 1 karakter: sebuah ?tanda diikuti oleh karakter, tanpa memerlukan pasangan penutup dari ?tanda tersebut.
manatwork

1
Saya menemukannya di referensi di sini: ruby-doc.org/core-2.3.0/doc/syntax/literals_rdoc.html There is also a character literal notation to represent single character strings, which syntax is a question mark (?) followed by a single character or escape sequence that corresponds to a single codepoint in the script encoding:
erich2k8

13

Notepad, 34 31 penekanan tombol

**********
^A^C↓^V^A^C↓^V^V^V^V

^ menunjukkan Ctrl- <karakter berikut> penekanan tombol, ↑ ↓ masing-masing adalah tombol atas dan bawah.

Props to Crypto untuk 3 penekanan tombol yang disimpan.


2
Anda harus menggunakan penekanan tombol untuk menghitung ini.
Leaky Nun

1
Itu Shift + Atas. Ctrl + Up adalah sesuatu yang lain.
Neil

1
31 penekanan tombol**********↵^A^C↓^V^A^C↓^V^V^V^V
Crypto

1
26 penekanan tombol*****^A^C^V^V↵^A^C^V^A^C^V^V^V^V^V
Andy

5
23 penekanan tombol**^A^C^V^V^V^V^V↵^A^C^V^V^A^C^V^V^V^V^V
Andy

13

Emojicode , 54 byte

🏁🍇🔂i⏩0 10🍇😀🔤**********🔤🍉🍉

Penjelasan:

🏁🍇                        👴 The beginning of program.
    🔂 i ⏩ 0 10 🍇          👵 This is called a "range".
                          It basically starts with i=0 and increments until i=10, then exits. 👵
        😀 🔤**********🔤    👵 😀 is printing class.
                          The 🔤s make the characters they surround string literals. 👵
    🍉                     👴 End of range
🍉                         👴 End of program

2
Saya menghitung 54 utf-8 byte.
Conor O'Brien

Bahasa ini membenci WIndows 7 ...
John Dvorak


10

R, 27 29 byte

cat(rep('\r**********\n',10))

Jawaban alternatif (34 byte) adalah: cat(rep('**********',10),sep='\n')


Ini menambahkan ruang ekstra di awal semua baris kecuali yang pertama (lihat di sini ).
plannapus

Terima kasih, ini berfungsi menambahkan \r.
Mamie

1
Alternatif lain, terlalu banyak (37) byte: cat(matrix('*',10,10),fill=10,sep='') r-fiddle
Jonathan Carroll

Alternatif lain, juga 29 byte:write(rep("*",100),"",10,,"")
Giuseppe

1
Dan write(rep("**",50),1,5,,"")27 byte dan menghindari carriage return pertama.
J.Doe

9

PHP, 32 byte

for(;$i++<10;)echo"**********
";

(varian 32 byte - ditulis dengan echo)

<?=str_repeat("**********
",10);

(varian 33 byte)

<?=str_pad("",110,"**********
");

(varian 33 byte)

for(;$i++<110;)echo$i%11?"*":"
";

(varian 35 byte)

for(;$i++<10;)printf("%'*10s
",'');

(varian 38 byte)

<?=($a=str_repeat)($a("*",10)."
",10);

3
Yang kedua dapat di-golf hingga 32 byte juga:<?=str_repeat("**********↵",10);
insertusernamehere

1
Seperti yang Anda sudah memiliki koleksi bagus alternatif, di sini adalah satu lagi untuk bersenang-senang: echo chunk_split(str_repeat("*",100),10);The terpanjang sejauh ini, hanya dalam visi saya ini adalah yang cara PHP untuk melakukannya.
manatwork

Bisa lebih pendek satu byte dengan pengkodean WIN-1252: for(;++$i<111;)echo$i%11?~Õ:~õ;ataufor(;++$i<11;)echo~ÕÕÕÕÕÕÕÕÕÕõ;
aross

Modulo Varian lain untuk 33 byte: for(;$i++<110;)echo"*↵"[$i%11<1];. Dan untuk menambahkan solusi 37 byte ke koleksi bahwa: for(;$i++<110;)echo chr($i%11?42:10);.
Titus

8

MATL , 8 byte

'*'10tX"

Cobalah online!

'*'   % Push '*' (string containing an asterisk)
10t   % Push 10 twice
X"    % Repeat the string 10×10 times. Implicitly display

8

Brainfuck, 46 43 byte

+[[---<]+[-->]<]<<[--<<++..........-->>>.<]

Cobalah online!Membutuhkan juru bahasa dengan pita yang terbuka di sebelah kiri dan memiliki sel 8-bit.

Bagian pertama dari program ini +[[---<]+[-->]<]membuat rekaman seperti:

[255, 250, 245, ... 15, 10, 5, 0, 250, 240, 230, ..., 40, 30, 20, 10, 0]
                                                                      ^

Ini menghasilkan 40 untuk menghasilkan tanda bintang ( *, ASCII 42), 20 untuk digunakan sebagai penghitung lingkaran, dan 10 untuk digunakan untuk menghasilkan baris baru.


7

JavaScript (ES6), 37 byte

console.log(`**********
`.repeat(10))

Jawaban langsung.


5
Anda tidak bisa menyimpan 6 dengan menggunakan alert?
Kevin L

1
Bisa dibilang Anda bisa menyimpan 13 byte dengan menghapus console.log()dan menentukan REPLdalam judul.
Patrick Roberts

6

Cheddar, 21 20 byte

print('*'*10+'
')*10

Namun jawaban langsung lainnya.


4
Gunakan baris baru literal untuk menyimpan 1 byte
Leaky Nun

2
Buatlah fungsi menggunakan ->bukannya cetak mungkin?
Downgoat

6

Haskell, 29 byte

putStr$[0..9]>>"**********\n"

<list1> >> <list2>membuat (length <list1>)salinan <list2>.


6

R, 35 33 32 byte

Ô R, kadang-kadang Anda sangat bertele - tele .

for(i in 1:10)cat(rep("*",10),"\n")

Menariknya, catfungsi tersebut tidak memiliki nilai (ini disediakan NULLuntuk STDOUT), jadi Anda tidak dapat melakukan sesuatu seperti itu rep(cat(rep))), yang pasti lebih lucu!

EDIT:
Solusi baru yang diajukan oleh @LeakyNun, -2 byte.

for(i in 1:10)cat("**********\n")

EDIT: Mempersingkatnya hanya dengan -1 byte, oleh @ user5957401

for(i in 0:9)cat("**********\n")

3
for(i in 1:10)"**********\n"
Leaky Nun

1
@ LeakyNun: Kesederhanaan adalah kuncinya! Namun saya punya cat, kalau tidak menghasilkan apa-apa.
Frédéric

cat(rep("**********\n",10))
Leaky Nun

@ LeakyNun Ini tidak akan menghasilkan output yang diinginkan: lihat di sini . Pemisah default dalam catadalah spasi, maka output ini.
plannapus

5

Retina , 12 byte

Hitungan byte mengasumsikan penyandian ISO 8859-1. Linefeed terkemuka sangat penting.


10$**
.
$_¶

Tahap pertama menulis string sepuluh tanda bintang, tahap kedua menggantikan setiap tanda bintang dengan seluruh string dan umpan baris. Ini mencetak dua baris feed yang membuntuti.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.