Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
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>