태그 보관물: code-generation

code-generation

HTML로 am * n 테이블 생성 1과 동일. 출력 : m 개의

입력 :

두 진수 정수 mn그 각각 테이블의 행과 열 수를 제공합니다.
m그리고 n이상 또는 1과 동일.

출력 :

m 개의 행과 n 개의 열이있는 HTML의 테이블입니다.

테이블은 선택한 최신 브라우저로 표시 할 수 있어야합니다. 대부분의 브라우저는 태그를 닫지 않아도 모든 것을 올바르게 표시합니다. 적절한 들여 쓰기 및 간격은 선택 사항입니다.

각 셀에는 하나 이상의 (공백이 아닌) 인쇄 가능한 문자가 있어야합니다.

첫 번째 줄의 셀은 <th>태그를 사용해야 하며 다음 줄의 셀은 태그를 사용해야 <td>합니다.

승리 조건 :

이것은 이므로 각 언어에 대한 가장 짧은 소스 코드가 승리합니다.

입력 예 :

2 3

출력 예 :

<table>
 <tr>
   <th>A</th>
   <th>A</th>
   <th>A</th>
 </tr>
 <tr>
   <td>A</td>
   <td>A</td>
   <td>A</td>
 </tr>
</table>

또는 :
<table><tr><th>A<th>A<th>A<tr><td>A<td>A<td>A



답변

APL (Dyalog 유니 코드)MiServer 3.0 , 31 30 바이트 SBCS

전체 프로그램. 두 요소 목록을 표시하도록 stdin에 프롬프트 [m,n]하고 엄격한 XHTML을 stdout에 인쇄합니다.

(⎕NEW _.Table((⎕⍴0)⍬1)).Render

세션 예 :

      )xload C:\Users\Adam.DYALOG\Documents\MiServer\miserver.dws
C:\Users\Adam.DYALOG\Documents\MiServer\miserver.dws saved Wed Mar  7 17:19:40 2018
      Load ''
Development environment loaded
MiSite "C:/Users/Adam.DYALOG/Documents/MiServer/MS3/" loaded
      (⎕NEW _.Table((⎕⍴0)⍬1)).Render
⎕:
      2 3
<table id="id691498143"><thead><tr><th>0</th><th>0</th><th>0</th></tr></thead><tbody><tr><td>0</td><td>0</td><td>0</td></tr></tbody></table>

온라인으로 사용해보십시오!

설명:

().Render 다음 HTML 요소를 렌더링하십시오.

⎕NEW _.Table () 다음과 같은 매개 변수가있는 새 테이블 :

  () ⍬ 1 다음 내용, 특별한 스타일링 없음, 헤더 행 1 개 :

   ⎕⍴0 평가 된 입력이 0을 재구성합니다 (즉, m 행, n 열의 0 행렬)


답변

자바 스크립트 (ES6), 70 바이트

@RickHitchcock 덕분에 2 바이트 절약

카레 구문으로 입력을 (m)(n)받습니다.

m=>n=>'<table>'+(g=c=>'<tr>'+`<t${c}>A`.repeat(n))`h`+g`d`.repeat(m-1)

온라인으로 사용해보십시오!

데모


답변

파이썬 2 , 57 바이트

lambda m,n:'<table><tr>'+'<th>A'*n+('<tr>'+'<td>A'*n)*~-m

온라인으로 사용해보십시오! m0이 아니라고 가정 합니다.


답변

캔버스 , 31 바이트

<ŗ>
table⁸o╶[tr⁸⁶{¹1≡╵dh@t×⁸;}]

여기 사용해보십시오! 또는
시각화 해보십시오!

인터프리터에서 2 개의 버그 (ಠ_ಠ)를 수정 한 후 30 바이트도 작동합니다.


답변

자바 스크립트, 65 바이트

f=(m,n)=>m?f(--m,n)+'<tr>'+`<t${m?'d':'h'}>x`.repeat(n):'<table>'

document.write(f(4,3));


답변

05AB1E , 30 바이트

’<…È>’sF"<tr>"„hdNĀè"<tÿ>A"I×J

온라인으로 사용해보십시오!

설명

’<…È>’                           # push "<table>"
      sF                         # no-of-rows times do:
        "<tr>"                   # push "<tr>"
              „hd                # push "hd"
                 NĀ              # push the iteration counter truthified
                   è             # index into the 2-char string with this
                    "<tÿ>A"      # insert the result into the string "<tÿ>A" instead of ÿ
                           I×    # repeat this string no-of-columns times
                             J   # join the stack to a single string


답변

Stax , 28 바이트

üÉ$♠═?S┼╪├8°‼←sí☼←T≡┴╜ô‼\↑0ⁿ

실행 및 디버깅

포장을 풀고 포장을 풀고 주석을 달았습니다.

"<table>"P  print "table"
"<th>A"*    "<th>A" repeated specified number of times
,D          repeat the rest of the program specified number of times
  "<tr>"p   print "<tr>" with no newline
  Q         print top of stack without popping
  .hd|t     replace "h" with "d"

이것을 실행