Mengenal dan Menggunakan Numbers dalam Dart

Tuesday, 28 May 2024 5 read minutes

Cover Article
Photo by Raghav Modi

Salah satu aspek penting dalam pemrograman adalah bagaimana menangani angka atau numbers. Dart mendukung dua tipe data utama untuk angka, yaitu int dan double.

  1. int digunakan untuk menyimpan angka bulat (integer), baik positif maupun negatif. Contoh angka bulat termasuk -10, 0, 1, dan 12345. Angka bulat di Dart tidak memiliki batas ukuran yang ditentukan, sehingga dapat menyimpan angka yang sangat besar maupun sangat kecil, selama memori mencukupi.

     int number1 = 10;
     int number2 = -5;
     int number3 = 0;
     int hex = 0xDEADBEEF;
    
  2. double digunakan untuk menyimpan angka desimal atau angka dengan titik floating (floating-point numbers). Contoh angka desimal termasuk 3.14, -0.5, dan 2.71828.

     double decimal1 = 3.14;
     double decimal2 = -0.5;
     double decimal3 = 2.71828;
    

Operasi Aritmatika

Operasi aritmatika adalah operasi matematis yang dilakukan pada angka untuk menghasilkan nilai baru. Dart mendukung berbagai operasi aritmatika dasar yang dapat digunakan dengan int dan double, termasuk penjumlahan, pengurangan, perkalian, pembagian, dan modulus.

  1. Penjumlahan (+)

    Penjumlahan adalah operasi aritmatika dasar yang menambah dua angka bersama-sama. Dalam kode di atas, penjumlahan dilakukan antara dua integer (a dan b) serta antara dua double (c dan d).

     void main() {
       int a = 10;
       int b = 3;
       double c = 4.5;
       double d = 1.5;
    
       // Operasi dengan tipe data int
       print('Penjumlahan int: ${a + b}'); // 13
    
       // Operasi dengan tipe data double
       print('Penjumlahan double: ${c + d}'); // 6.0
     }
    
  2. Pengurangan (-)

    Pengurangan mengurangi satu angka dari angka lainnya. Operasi ini juga dapat dilakukan baik pada integer maupun double.

     void main() {
       int a = 10;
       int b = 3;
       double c = 4.5;
       double d = 1.5;
    
       // Operasi dengan tipe data int
       print('Pengurangan int: ${a - b}'); // 7
    
       // Operasi dengan tipe data double
       print('Pengurangan double: ${c - d}'); // 3.0
     }
    
  3. Perkalian (*)

    Perkalian mengalikan dua angka. Sama seperti penjumlahan dan pengurangan, operasi ini bisa diterapkan pada integer dan double.

     print('Perkalian int: ${a * b}'); // 30
     print('Perkalian double: ${c * d}'); // 6.75
    
  4. Pembagian (/)

    Pembagian membagi satu angka dengan angka lainnya. Perlu dicatat bahwa hasil pembagian antara dua integer akan menjadi double karena pembagian dapat menghasilkan angka desimal.

     print('Pembagian int: ${a / b}'); // 3.3333333333333335
     print('Pembagian double: ${c / d}'); // 3.0
    
  5. Modulus (%)

    Modulus mengembalikan sisa dari pembagian dua angka. Operasi ini biasanya digunakan untuk menemukan sisa dari pembagian integer.

     print('Modulus int: ${a % b}'); // 1
    

Kita juga dapat menggabungkan beberapa operasi aritmatika dalam satu ekspresi untuk melakukan perhitungan yang lebih kompleks. Misalnya, kita bisa menggabungkan penjumlahan dan perkalian:

void main() {
  int x = 5;
  int y = 2;
  int z = 3;

  int result = x + y * z; // 5 + (2 * 3) = 11
  print('Hasil kombinasi operasi: $result');
}

Dalam contoh ini, perkalian dilakukan terlebih dahulu sesuai dengan aturan prioritas operasi, kemudian hasilnya ditambahkan dengan nilai x.

Fungsi Matematika

Dalam pengembangan aplikasi, seringkali kita perlu melakukan operasi matematika yang lebih kompleks selain operasi aritmatika dasar. Dart menyediakan berbagai fungsi matematika melalui library dart:math, yang mencakup berbagai operasi matematika seperti akar kuadrat, pangkat, dan fungsi trigonometri.

Library dart:math berisi berbagai fungsi dan konstanta matematika yang dapat digunakan untuk melakukan operasi matematika kompleks. Untuk menggunakan fungsi-fungsi ini, kita harus mengimpor library dart:math.

import 'dart:math';

Berikut adalah beberapa fungsi matematika yang sering digunakan dalam Dart:

  1. Akar Kuadrat (sqrt)

    Fungsi sqrt digunakan untuk menghitung akar kuadrat dari sebuah angka. Fungsi ini menerima satu argumen berupa angka double dan mengembalikan hasil akar kuadratnya.

     void main() {
       double num = 16.0;
       print('Akar kuadrat dari $num: ${sqrt(num)}'); // 4.0
     }
    

    Dalam contoh di atas, akar kuadrat dari 16.0 adalah 4.0.

  2. Pangkat (pow)

    Fungsi pow digunakan untuk menghitung pangkat dari sebuah angka. Fungsi ini menerima dua argumen: basis dan eksponen, kemudian mengembalikan hasil pangkatnya.

     void main() {
       print('2 pangkat 3: ${pow(2, 3)}'); // 8
     }
    

    Dalam contoh di atas, 2 pangkat 3 (2^3) adalah 8.

  3. Sine (sin)

    Fungsi sin digunakan untuk menghitung sine dari suatu sudut dalam radian. Untuk mengonversi derajat ke radian, kita dapat menggunakan konstanta pi dari library dart:math.

     void main() {
       print('Sine dari 30 derajat: ${sin(30 * pi / 180)}'); // 0.5
     }
    

    Dalam contoh di atas, sine dari 30 derajat (30°) adalah 0.5.

  4. Cosine (cos)

    Fungsi cos digunakan untuk menghitung cosine dari suatu sudut dalam radian.

     void main() {
       print('Cosine dari 60 derajat: ${cos(60 * pi / 180)}'); // 0.5
     }
    

    Dalam contoh di atas, cosine dari 60 derajat (60°) adalah 0.5.

  5. Tangent (tan)

    Fungsi tan digunakan untuk menghitung tangent dari suatu sudut dalam radian.

     dartCopy codevoid main() {
       print('Tangent dari 45 derajat: ${tan(45 * pi / 180)}'); // 1.0
     }
    

    Dalam contoh di atas, tangent dari 45 derajat (45°) adalah 1.0.

Dalam fungsi trigonometri, sudut seringkali diberikan dalam bentuk derajat, namun fungsi trigonometri dalam Dart menggunakan radian. Untuk mengonversi derajat ke radian, kita dapat menggunakan rumus berikut:

radian = derajat × 𝜋 / 180​

Konstanta pi disediakan oleh library dart:math.

Konversi Antara int dan double

Terkadang, kita perlu mengonversi antara int dan double. Dart menyediakan metode bawaan yang sangat berguna untuk melakukan konversi ini, yaitu toDouble untuk mengonversi int ke double dan toInt untuk mengonversi double ke int.

Konversi antara int dan double mungkin diperlukan dalam berbagai situasi, seperti:

  1. Operasi Aritmatika Campuran: Saat melakukan operasi aritmatika yang melibatkan kedua tipe data ini, mungkin perlu untuk memastikan bahwa operasi tersebut dilakukan pada tipe data yang konsisten.

  2. Kompatibilitas Fungsi: Beberapa fungsi atau API mungkin memerlukan argumen dalam tipe data tertentu.

  3. Penyimpanan dan Pemrosesan Data: Data mungkin perlu disimpan sebagai int untuk efisiensi, tetapi diproses sebagai double untuk presisi, atau sebaliknya.

Dart menyediakan metode berikut untuk konversi antara int dan double:

  • toDouble: Mengonversi int menjadi double.

  • toInt: Mengonversi double menjadi int. Metode ini akan membuang bagian desimal dari angka double, mengembalikan hanya bagian bilangan bulat.

void main() {
  int integer = 10;
  double decimal = 5.75;

  // Konversi dari int ke double
  double fromInt = integer.toDouble();
  print('Dari int ke double: $fromInt'); // 10.0

  // Konversi dari double ke int
  int fromDouble = decimal.toInt();
  print('Dari double ke int: $fromDouble'); // 5
}

Dari pembahasan diatas dapat disimpulkan bahwa Numbers dalam Dart adalah konsep yang fundamental dan mudah digunakan. Dengan memahami tipe data int dan double, operasi aritmatika, fungsi matematika, serta konversi antara tipe data, kita dapat menangani berbagai kebutuhan perhitungan dalam pengembangan aplikasi menggunakan Dart. Sebagai pengembang, memahami cara kerja angka dalam bahasa pemrograman akan mempermudah dalam menulis kode yang lebih efisien dan efektif.

section icon
section title icon recents articles
Latest Articles just for you

Stay updated with the latest articles crafted to enhance your knowledge.
Discover new insights and stay ahead with our recent content.

Card image cap
Mengenal Artificial Intelligence untuk Pemula dalam Kehidupan Sehari-hari
Monday, 25 November 2024

Artificial Intelligence (AI) atau kecerdasan buatan adalah cabang ilmu komputer yang bertujuan untuk menciptakan sistem atau mesin yang dapat berpikir dan bertindak seperti manusia. AI digunakan di berbagai aspek kehidupan kita, mulai dari asisten vi

Read more
Card image cap
Panduan Lengkap Menggunakan json_serializable dan json_annotation untuk Model yang Rapi di Flutter
Tuesday, 29 October 2024

Dalam pengembangan aplikasi Flutter, sering kali kita perlu mengonversi data dari JSON ke objek Dart atau sebaliknya. Ini terutama umum dalam aplikasi yang mengambil data dari API atau menyimpan data secara lokal dalam format JSON. Untuk mempermudah ...

Read more
Card image cap
Pengenalan Widget dan Lifecycle dalam Flutter
Thursday, 17 October 2024

Widget adalah komponen dasar yang digunakan dalam Flutter untuk membangun antarmuka pengguna (UI). Hampir semua elemen visual di aplikasi Flutter merupakan widget, mulai dari teks, tombol, hingga tata letak seperti baris dan kolom. Dalam pengembangan...

Read more
Card image cap
Panduan Pemula untuk Membuat Aplikasi Pertama dengan Flutter
Saturday, 12 October 2024

Setelah menyiapkan Flutter SDK di sistem kamu, penting untuk memahami bagaimana struktur proyek Flutter diatur dan bagaimana cara menjalankan aplikasi kamu di berbagai lingkungan pengembangan. Pada artikel kali ini kita akan menjelaskan secara mendal...

Read more