Skip to main content

樓梯測驗

這是一題常見的題目,算簡單,直接來看題目吧!

題目

請寫出一個方法(函式),給一個整數 n,則印出 n 階樓梯。

Examples

ex1:
steps(2)

印出
'@ '
'@@'
------------------------
ex2:
steps(3)

印出
'@ '
'@@ '
'@@@'

想法:

row: 橫的一列 col: 直的一欄位

想像成一個矩陣表格,

只要橫的第n個位置,大於直的第 m 個欄位數,就印出@, 反之則印出空字串。

Java 解法

private static void steps(int n) {
for (int row = 0; row < n; row++) {
String aStep = "";

for (int col = 0; col < n; col++) {
if (col <= row) {
aStep += "@";
} else {
aStep += " ";
}
}

System.out.println(aStep);
}
}

Java 比較需要注意的是println()才會換行,而不是print()

JavaScript 解法

function steps(n) {
for (let row = 0; row < n; row++) {
let aStep = '';

for (let col = 0; col < n; col++) {
if (col <= row) {
aStep += '@';
} else {
aStep += ' ';
}
}

console.log(aStep);
}
}

此文同時發佈於鐵人賽