javascript輸出金字塔,javascript金字塔

來源:互聯網
上載者:User

javascript輸出金字塔,javascript金字塔
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>webrx-title</title>
<script type="text/javascript">


//輸出一行*
//for(var i=0;i<10;i++){  
//                document.writeln("*");  
//          }  


var num = prompt("請輸入金字塔的層數(單擊確定之後會看到*組成的金字塔)");
for(var i=1;i<=num;i++)//決定輸出的行數
{
for(var j=1;j<=num-i;j++)//決定每一行開頭的空格數
 {
 document.write("&nbsp");
 }
for(var k=1;k<=2*i-1;k++)//決定每一行的*數
  { 
  document.write("*");
  }
document.write("</br>");
}


</script>
</head>
<body>
</body>
</html>
怎用JAVAscript編寫金字塔

代碼比較簡陋,需要遞迴,如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
function loopIdx(idx){

for(i=1 ;i<=idx;i++){
factorial(i) ;
document.write("<br>");
}
}

function factorial(aNumber) {

if (aNumber < 0) {
return ;
}

if (aNumber == 0) {
return;
}
else {
document.writeln("*");
return factorial(aNumber - 1);
}
}
//-->
</SCRIPT>
</HEAD>

<BODY><INPUT TYPE="text" NAME="idx">
<INPUT TYPE="button" value="輸出" onclick="loopIdx(idx.value)">
</BODY>
</HTML>
 
怎用JAVAscript編寫數字金字塔

發現要做到很美觀很難,先拋磚引玉吧。

var n = 20;
var j = 1;
var mark = 1;
var tier = calculateTier(n);
for(;j<=tier;j++)
{
if (n<=0)
{
break;
}

printBlank(tier-j);
for(var i = 1;i<=j;i++)
{
document.write(mark);
mark++;
printBlank(1);
}
document.write("<br>");
}

function printBlank(number)
{
if(number == 0)
{
return;
}

for(var i=0;i<number;i++)
{
document.write(" ");
}
}

function calculateTier(number)
{
if (number == 1)
{
return 1;
}

var tier = 1;
var endNumber;
while(true)
{
endNumber = tier * (tier + 1) / 2;
if (endNumber > number)
{
return --tier;
}

tier++;
}
}

----

上班搞了半個小時這個題目,突然發現前面有好多回複,很驚喜啊,結果一試-_-##汗
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.