sciencecalc-rs

Crates.iosciencecalc-rs
lib.rssciencecalc-rs
version0.1.0
created_at2025-07-23 15:38:58.54197+00
updated_at2025-07-23 15:38:58.54197+00
descriptionA calculation toolkit or Library for mathematics, physics, and chemistry in Rust | Library rust Matematika, Fisika, Kimia - Kalkulator Toolkit
homepage
repositoryhttps://github.com/wirandhika-maulana/sciencecalc-rs
max_upload_size
id1764936
size122,388
Wirandhika Maulana Akbar (wirandhika-maulana)

documentation

https://docs.rs/sciencecalc-rs

README

sciencecalc-rs

sciencecalc-rs adalah pustaka (crate) Rust yang menyediakan berbagai fungsi kalkulasi ilmiah — matematika, fisika, dan kimia — dengan antarmuka yang mudah digunakan.

Instalasi

Tambahkan pustaka ini ke proyek Cargo Anda dengan perintah:

cargo add sciencecalc-rs

Atau tambahkan secara manual ke bagian dependencies pada file Cargo.toml:

sciencecalc-rs = "<Versi Crates>"

Penggunaan

Import pustaka dan modul sesuai kebutuhan:

use sciencecalc_rs::matematika;
use sciencecalc_rs::fisika;
use sciencecalc_rs::kimia;

fn main() {
    // Implementasi kode di sini
}

Untuk mengakses fungsi-fungsi kalkulasi, panggil dengan namespace modul yang bersangkutan:

use sciencecalc_rs::matematika::aritmetika;
use sciencecalc_rs::fisika::gaya;
use sciencecalc_rs::kimia::stoikiometri;

Contoh Penggunaan

1. Operasi Aritmetika Dasar

use sciencecalc_rs::matematika::aritmetika;

fn main() {
    let x = 100;
    let y = 5;
    let z = [5, 6, 8, 125];
    let hasil = aritmetika::tambah(
        aritmetika::tambah(
            aritmetika::tambah(x, y),
            aritmetika::kali(x, y)
        ),
        aritmetika::super_kurang(&z)
    );
    println!("{}", hasil);
}

Output:

471

2. Matematika: Sistem Persamaan Linear

use sciencecalc_rs::matematika::aljabar::*;

fn main() {
    let a = 6.0; 
    let b = 12.0;
    let x = Aljabar::splsv(a, b);

    let a1 = 4.0; let b1 = -3.0; let c1 = 18.0;
    let a2 = 3.0; let b2 = 1.0; let c2 = 7.0;
    let hasil = Aljabar::spldv(a1, b1, c1, a2, b2, c2);

    println!("{}\n{:?}", x, hasil.unwrap());
}

Output:

(-2.0)
(3.0, -2.0)

3. Konversi Basis Bilangan dan Operasi Aritmetika

use sciencecalc_rs::matematika::aritmetika;
use sciencecalc_rs::matematika::basis;

fn main() {
    let x: u64 = 680;
    let y: u64 = 87;
    let a = basis::konversi_basis(aritmetika::tambah(x, y), 2);
    let b = basis::desimal_ke_biner(aritmetika::kali(x, y));
    let c = basis::biner_ke_hexadesimal(
        &basis::desimal_ke_biner(aritmetika::kurang(x, y))
    );
    let d = basis::hexadesimal_ke_oktal(
        &basis::desimal_ke_hexadesimal(aritmetika::bagi(x, y))
    );
    println!("{}\n{}\n{}\n{}", a, b, c, d);
}

Output:

1011111111
1110011100011000
251
7

2. Fisika: Gaya

use sciencecalc_rs::fisika::gaya;

fn main() {
    let m = 10.0;
    let a = 9.8;
    let gaya = gaya::gaya(m, a);
    println!("Gaya (m=10, a=9.8): {}", gaya);
}

Output:

Gaya (m=10, a=9.8): 98

3. Kimia: Jumlah Mol

use sciencecalc_rs::kimia::stoikiometri;

fn main() {
    let massa = 18.0;
    let massa_molar = 18.0;
    let mol = stoikiometri::jumlah_mol(massa, massa_molar);
    println!("Jumlah mol (massa=18g, massa molar=18g/mol): {}", mol);
}

Output:

Jumlah mol (massa=18g, massa molar=18g/mol): 1

Fitur

Matematika
  • Aritmetika dasar: tambah, kurang, kali, bagi, pembulatan, modulo, nilai absolut.
  • Aljabar: faktorial, kombinasi, permutasi, sistem persamaan linear (SPL satu, dua, tiga variabel), persamaan kuadrat, operasi matriks 2x2 dan 3x3 (perkalian, invers, determinan, transpose).
  • Trigonometri: sinus, cosinus, tangen, invers, konversi derajat/radian.
  • Geometri: rumus luas dan keliling berbagai bangun datar dan volume bangun ruang.
  • Statistika: rata-rata, median, modus, deviasi standar, operasi data statistik.
  • Kombinatorika & Peluang: perhitungan kombinatorik (faktorial, permutasi, kombinasi), peluang sederhana.
  • Konversi basis bilangan: desimal, biner, oktal, heksadesimal.
  • Deret Fibonacci: rekursif, iteratif, rumus Binet, cek genap dan prima.
  • Operasi pada array: penjumlahan, pengurangan, perkalian, pembagian banyak bilangan sekaligus.
Fisika
  • Gaya: perhitungan gaya (F = m × a).
  • Energi: energi kinetik, energi potensial, hukum kekekalan energi.
  • Listrik: hukum Ohm (arus, tegangan, hambatan), daya listrik.
  • Gerak: GLB, GLBB, jarak, kecepatan, percepatan.
  • Konversi satuan fisika: massa, panjang, waktu, energi, dan lain-lain.
  • Hukum Newton: gaya, percepatan, massa, dan penerapannya.
Kimia
  • Gas: hukum gas ideal, tekanan, volume, suhu, jumlah mol.
  • Reaksi: massa produk reaksi, persentase hasil reaksi, stoikiometri reaksi.
  • Larutan: konsentrasi, molaritas, pH, volume, massa zat terlarut.
  • Stoikiometri: perhitungan jumlah mol, konversi massa ke mol, dan sebaliknya.

Dokumentasi Lengkap

Dokumentasi lengkap pustaka ini dapat diakses di:
Dokumentasi sciencecalc-rs

Status Pengembangan

Pustaka ini masih dalam tahap pengembangan aktif, sehingga mungkin terdapat bug atau keterbatasan.
Kontribusi dan masukan sangat diharapkan untuk meningkatkan kualitas pustaka ini.

Selamat mencoba!


[!WARNING]

REPOSITORI INI SERING DAN SELALU MENDAPATKAN UPDATE.

KESTABILAN DI DALAM BRANCH master TIDAK DAPAT DIPASTIKAN!


Commit count: 0

cargo fmt