Skip to main content

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,}


MATERI GOLANG

Jika kamu baru di pembelajaran golang, silakan untuk belajar dari materi pertama 

Comments

Popular posts from this blog

Contoh Program C++ : Konversi Bilangan Hexadesimal, Oktal , Biner.

Hai Pembaca FajarYusuf.Com yang pintar dan berwawasan tinggi, kali ini FajarYusuf.Com akan post Contoh Program C++ : Konversi Bilangan Hexadesimal, Oktal , Biner . Mari kita membuat program konversi bilangan yang sangat mudah di buat dengan menggunakan bahasa pemrograman C++. Yaitu dengan menggunakan type data long, untuk Hexadesimal dengan rumus : <<hex<<desimal (merubah dari bilangan Desimal ke Hexadesimal) , untuk Oktal dengan rumus : <<oct<<desimal (merubah dari bilangan Desimal ke Oktal). Dan untuk biner dilakukan pembagian 2. Contoh Coding Program C++ Konversi Bilangan: #include<iostream> using namespace std; int main() { long desimal, pembagi=1073741824, bit; cout<<"Nilai Desimal : "; cin>>desimal; cout<<"Hexadesimal = "<<hex<<desimal<<endl; cout<<"Oktal = "<<oct<<desimal<<endl;
Les rumeurs sur les rencontres avec RM ont d’abord été propagées par un YouTuber, qui a déclaré que RM sortait avec une femme du cercle non-célébrité, mais qu’elle était riche.  La rumeur est née à cause d’une photo de RM avec un caniche, qui aurait appartenu à la femme. Les rumeurs se sont rapidement propagées sur internet et ont fait se demander nombre de fans: est-il vrai que le leader du groupe BTS a un amant? RM a ensuite répondu aux rumeurs via Weteverse jeudi 30/12/201. “Je ne connais pas du tout cette personne. Le caniche est le caniche de mon ami,” a déclaré RM, cité à partir d’un t weet  appartenant à @btsinthemoment. namjoon weverse moment 🐨 i dont know the person at all and the poodle is my friends poodle ^^; pic.twitter.com/okz0AIpVnc — 윤서⁷ (@btsinthemoment) December 31, 2021 Big Hit a également nié les allégations dans une déclaration publiée par  AllKPop .  “Les rumeurs de rencontres sur RM ne sont pas vraies,” a déclaré Big Hit, vendredi (31/12). Et apparemment, dans

Opisyal na Inilabas ni Adele ang Bagong Album na "30"

Opisyal na inilabas ni Adele ang kanyang pinakabagong album na pinamagatang “30” noong Biyernes (11/19/2021).  Nakatanggap ang bagong album ng mgapositibong pagsusuri mula sa mga kritiko ng musika. Ayon sa Rolling Stone , ang “30” ay ang pinakamahusay na album ni Adele. Mayroong 12 kanta sa “30” album na ito, isa na rito ang hit single na pinamagatang  Easy On Me .  Sa simula ng album, maririnig mo ang  Strangers By Nature— isang kantang puno ng patula na liriko. At sa dulo ay ang kantang  Love Is A Game , na nagsasalaysay ng karanasan ni Adele sa sakit na dulot ng pag-ibig. Sa  Metacritic  , nakatanggap ang bagong album ni Adele ng  metascore  na 89% mula sa 12  review  at nasa numero 8 sa listahan ng  Best Albums ng 2021 .  Habang nasa Apple Music Indonesia, ang LP “30” ay unang niraranggo sa Mga   Nangungunang Album. Adele sa British Vogue magazine (instagram.com/britishvogue). Ang album na ito ay inspirasyon ng diborsiyo ni Adele kay Simon Konecki. Sa isang pakikipanayam sa