Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Looping segitiga siku - siku dengan angka
Saya ingin membuat sebuah segitiga dengan angka seperti gambar dibawah ini
1
12
123
tetapi, jika n = 4 maka setelah angka 3 akan balik menjadi 1 lagi seperti dibawah ini
1
12
123
1231
saya sudah buat programnya tapi saya bingung apa yang harus diubah karena masih ada yang salah
function printNumber(segitiga) {
let result = '';
for (i = 1; i <= segitiga; i++){
for (j = 1; j <= i; j++){
result += (i);
}
result += '\n';
// return result;
}
return result;
}
// 4, 7, 10
console.log(printSegitiga(2));
console.log(printSegitiga(3));
console.log(printSegitiga(6));
2 Jawaban:
<div>Kamu bisa menggunakan seperti ini<br><br></div><pre>function printNumber( <em>param</em> ) { for (let i = 1; i <= param; i++) {
let result = [];
for (let j = 1; j &lt;= i; j++) {
result.push(j);
}
console.log(result.join(" "));
}
}
printNumber(6);
<br></pre>
<div>Anda tidak pernah mengembalikannya ke angka 1, setelah mencapai 4. Tentu saja hasilnya belum sesuai ekspektasi. Coba lakukan seperti ini:<br><br></div><pre>function printSegitiga(segitiga) { let result = ''; for (let i = 1; i <= segitiga; i++) { let num = 0; for (let j = 1; j <= i; j++) { num++; if (num > 3) num = 1; result += num; } result += '\n'; } return result; } console.log(printSegitiga(6));</pre><div><br>Opsi lain adalah menggunakan Remainder (%), tetapi cara saya di atas lebih ringan untuk CPU.</div><pre>for (let j = 0; j < i; j++) { result += (j % 3 + 1); }</pre>