Sunday, November 25, 2018

Array Pada Golang

array golang

Array

Array adalah sebuah urutan bernomor elemen type tunggal dengan panjang yang tetap. Di Go bisa digunakan array seperti koding ini:
var x [5] int
Arti dari baris diatas yaitu x adalah contoh variabel array yang terdiri dari 5 urutan bertipe integer. Mari kita coba membuat codingan array kalian bisa mencobanya klik disini :
package main
import "fmt"
func main() {
var x [5]int
x[4] = 100
fmt.Println(x) }
hasil
Kamu akan melihat hasil output ini:
[0 0 0 0 100]
x [4] = 100 jika dibaca akan seperti ini "mengatur elemen ke-5 dari array x menjadi 100". Kelihatannya agak aneh bahwa x [4] mewakili elemen ke-5 dan bukannya yang ke-4. Untuk urutan array tidak sama seperti string, array diindeks mulai dari 0

Kita bisa mengubah fmt.Println (x) menjadi fmt.Println (x [4]) dan kita juga akan mendapatkan hasil yang sama yaitu 100.

Berikut ini contoh program lain yang menggunakan array:
package main
import "fmt"
func main() {
var x [5]float64
x[0] = 98
x[1] = 93
x[2] = 77
x[3] = 82
x[4] = 83
var total float64 = 0
for i := 0;
i < 5; i++ {
total += x[i] }
fmt.Println(total / 5)
}
golang
Program ini menghitung rata-rata dari serangkaian nilai tes. Jika kamu menjalankannya, kamu akan melihat 86.6. Mari kita telusuri arti dari program diatas:
  • Pertama-tama kita membuat larik panjang 5 untuk menahan nilai tes kita, kemudian kita mengisi setiap elemen dengan nilai 
  • Selanjutnya kita menyiapkan loop untuk menghitung skor total
  • Akhirnya kita membagi skor total dengan jumlah elemen untuk menemukan rata-rata

Program ini berfungsi, tetapi Go menyediakan beberapa fitur yang dapat kamu gunakan untuk lebih praktisnya. Pertama 2 bagian ini: i<5 dan total/5 harus menentukannya terlebih dahulu. Katakanlah kamu mengubah jumlah nilai dari 5 menjadi 6. Kamu juga perlu mengubah kedua bagian ini. Akan lebih baik menggunakan panjang dari array sebagai gantinya, Silakan lakukan perubahan ini dan jalankan program :
package main
import "fmt"
func main() {
var x [5]float64
x[0] = 98
x[1] = 93
x[2] = 77
x[3] = 82
x[4] = 83
var total float64 = 0
for i := 0;
i < len(x);
i++ { total += x[i] }
fmt.Println(total/len(x))
}
golang
Kamu pasti mendapatkan kesalahan:

invalid operation: total / len(x) (mismatched types float64 and int)

Masalahnya di sini adalah bahwa len (x) dan total memiliki tipe yang berbeda. total adalah float64 sementara len (x) adalah int. Jadi kita perlu mengonversi len (x) menjadi float64:
fmt.Println (total / float64 (len (x)))
golang
Ini adalah contoh konversi type. Secara umum untuk mengkonversi antar type kamu harus menggunakan nama type seperti fungsi.

Perubahan lain untuk program yang bisa kita buat adalah menggunakan bentuk khusus untuk loop:
var total float64 = 0
for i, value := range x {
total += value }
fmt.Println(total / float64(len(x)))
golang
Dalam hal ini untuk loop i mewakili posisi saat ini dalam array dan nilai adalah sama dengan x [i]. Kita menggunakan rentang kata kunci yang diikuti oleh nama variabel yang ingin kita alihkan.

Menjalankan program ini akan menghasilkan kesalahan lain:
prog.go:23:5: i declared and not used
Kompiler Go tidak akan memungkinkan kamu untuk membuat variabel yang tidak pernah kamu gunakan. Karena kita tidak menggunakan i di dalam lingkaran kita, kita perlu mengubahnya menjadi seperti ini:
var total float64 = 0
for _, value := range x {
total += value }
fmt.Println(total / float64(len(x)))
golang
Sebuah _ (underscore) digunakan untuk memberi tahu compiler bahwa kita tidak memerlukan ini. (Dalam hal ini kita tidak memerlukan variabel iterator).

Go juga menyediakan sintaks yang lebih pendek untuk membuat array:
x: = [5] float64 {98, 93, 77, 82, 83}
Kita tidak perlu lagi menentukan type karena Go bisa mengetahuinya. Terkadang array seperti ini bisa terlalu panjang untuk dipasang pada satu baris, jadi Go memungkinkan kamu untuk memecah dan menyingkatnya seperti ini:
x: = [5] float64 {98, 93, 77, 82, 83,}
 golang
Perhatikan trailing ekstra, setelah 83 tidak ada kendala yang terjadi karena Go sudah memahami bahwa baris tersebut adalah array. 

Untuk dengan mudah menghapus elemen dari array dengan cara mengomentari baris seperti ini:
x: = [4] float64 {98, 93, 77, 82, // 83,}

Seseorang yang ingin membagi pengalaman dan ilmu yang berguna untuk para pembaca FajarYusuf.Com :)

Cobalah untuk memilih Pelajaran Pemrograman dan belajar dari Materi Pertama
EmoticonEmoticon


TENTANG SITUS

SITUS INI ADALAH SITUS PEMBELAJARAN PEMROGRAMAN DAN JUGA PEMAHAMAN TERHADAP TEKNOLOGI KOMPUTER. KALIAN BISA MENGIKUTI PEMBELAJARAN PEMROGRAMAN DENGAN BERTAHAP PADA MATERI YANG SUDAH SAYA SEDIAKAN, JIKA ADA MATERI YANG MEMBINGUNGKAN SILAKAN LAKUKAN KOMENTAR PADA MATERI YANG ANDA TANYAKAN ATAU KALIAN BISA MENGHUBUNGI SAYA DIHALAMAN KONTAK.

https://smallseotools.com/