Tulisan pertama di blog ini setelah bertahun-tahun ga main blog diawali dengan program yang biasanya selalu ada di materi kuliah pemrograman (bahasa pemrograman apapun biasanya ada tugas
atau latihannya khusunya di bagian perulangan) yaitu membuat program segitiga bintang, untuk kali ini akan menggunakan bahasa pemrograman C# (C Sharp) dan perulangan nested for (for bersarang).
Sintak Program :
using System;
namespace segitigabintang
{
class Program
{
static void Main(string[] args)
{
int a, b, c;
Console.Write("Tinggi Segitiga Bintang = ");
a = int.Parse(Console.ReadLine());
for (b = 1; b <= a; b++)
{
for (c = 1; c <= b; c++)
Console.Write("*");
Console.WriteLine();
}
Console.Read();
}
}
}
namespace segitigabintang
{
class Program
{
static void Main(string[] args)
{
int a, b, c;
Console.Write("Tinggi Segitiga Bintang = ");
a = int.Parse(Console.ReadLine());
for (b = 1; b <= a; b++)
{
for (c = 1; c <= b; c++)
Console.Write("*");
Console.WriteLine();
}
Console.Read();
}
}
}
Tampilan Program :
Penjelasan Sintak Program :
int a,b,c //merupakan variabel yang digunakan untuk menentukan tinggi atau jumlah bintang
Console.Write("Tinggi Segitiga Bintang = "); //untuk membuat menu memasukkan inputan
a = int.Parse(Console.ReadLine()); //memasukkan inputan ke variabel a , karena variabel a bertipe integer maka perintah yang digunakan adalah int.parse
for (b = 1; b <= a; b++)
{
for (c = 1; c <= b; c++)
Console.Write("*");
Console.WriteLine();
}
{
for (c = 1; c <= b; c++)
Console.Write("*");
Console.WriteLine();
}
Untuk perulangannya misal inputan tinggi segitiga bintang adalah 5 sesuai dengan gambar maka alur programnya kenapa bisa menghasilkan bentuk seperti gambar diatas kurang lebih seperti berikut :
for (b=1; b<=a;b++)
karena inputan segitiga bintang (a) adalah 5 maka perintah diatas menjadi :
for (b=1; b<=5 ; b++)
mengecek apakah b<=5 bernilai true // karena b bernilai 1 maka 1<=5 hasilnya true sehingga perulangan akan melanjutkan ke pernyataan dibawahnya
for (c = 1; c <= b; c++)
Console.Write("*");
Console.WriteLine();
karena b bernilai 1 maka menjadi
for (c=1;c<=1;c++)
mengecek apakah c<=1 bernilai true // karena c bernilai 1 maka
1<=1 hasilnya true sehingga perulangan akan melanjutkan ke pernyataan
dibawahnya
Console.Write("*");
perintah tersebut akan mencetak karakter bintang sebanyak 1 kali
*
setelah selesai di pernyataan maka program akan mengecek kembali ke perulangan for (c = 1; c <= 1; c++) karena hasilnya masih bernilai true(perulangan berhenti jika hasilnya false) .
karena perulangan for (c = 1; c <= 1; c++) memiliki nilai perubahan c++ maka nilai c menjadi 2 dan menjadi for (c=1;c<=2;c++)
mengecek apakah c<=2 bernilai true // karena c bernilai 2 maka 2<=1 hasilnya false sehingga perulangan tidak akan mencetak pernyataan dibawahnya Console.Write("*"); tapi akan memproses sintak
Console.WriteLine(); //perintah pindah baris(enter),harap diketahui untuk pernyataan jika cuma baris tidak memerlukan tanda { dan }, tanda kurung kurawal harus dipake jika pernyataan lebih dari 1 baris
karena hasil untuk perulangan for (c = 1; c <= b; c++) sudah false maka perulangan sudah berhenti dan akan naik lagi ke perulangan for (b=1; b<=a;b++) karena tadi hasil untuk perulangan tersebut masih bernilai true.
untuk perulangan for (b=1; b<=a;b++) nilai perubahan yang dimiliki adalah b++ maka nilai b berubah menjadi 2 dan akan memproses lagi perulangan dengan nilai b=2 dengan jalannya program sama seperti diatas yang berubah hanya nilai b yang tadinya 1 menjadi 2.
for (b = 2; b <= 5; b++) //hasilnya true
for (c=1;c<=b;c++) //b bernilai 2 maka 1<=2 hasilnya true
Console.Write("*"); // mencetak bintang ( * )
//nilai c berubah menjadi 2 (c++)
for (c=2;c<=b;c++) //b bernilai 2 maka 2<=2 hasilnya true
Console.Write("*"); // mencetak bintang ( * ) karena menggunakan perintah write maka tidak pindah baris sehingga digabung dengan sebelumnya menjadi ( ** )
//nilai c berubah menjadi 3 (c++)
for (c=3;c<=b;c++) //b bernilai 2 maka 3<=2 hasilnya false sehingga tidak memproses pernyataan dan melanjutkan ke
Console.WriteLine(); // pindah baris
karena sudah ketemu false maka kembali ke perulangan for (b = 1; b <= a; b++)
//nilai b berubah menjadi 3 (b++) karena nilai b sebelumnya 2
Untuk angka 3,4,5 caranya sama dengan diatas hanya lebih panjang proses perulangannya.Dari penjelasan diatas jika ingin merubah bentuk segitiga bisa dirubah pada kondisi perulangan dan nilai perubahan.
Tidak ada komentar:
Posting Komentar