All Projects → rioastamal → terbilang

rioastamal / terbilang

Licence: other
Sebuah pustaka untuk menterjemahkan angka ke dalam bilangan Bahasa Indonesia

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to terbilang

react-numeric
A react component for formatted number form fields
Stars: ✭ 30 (-34.78%)
Mutual labels:  numeric, number
phonenumber
With a given country and phone number, validate and format the MOBILE phone number to E.164 standard
Stars: ✭ 108 (+134.78%)
Mutual labels:  number
Percentage
A percentage type for Swift
Stars: ✭ 225 (+389.13%)
Mutual labels:  number
mongoose-auto-increment-reworked
An auto-incrementing field generator for Mongoose 4 & 5
Stars: ✭ 17 (-63.04%)
Mutual labels:  numeric
use-color-change
📈📉React hook for flashing a text when a value becomes higher or lower
Stars: ✭ 32 (-30.43%)
Mutual labels:  numeric
NumericUpDownLib
Implements numeric up down WPF controls to edit/display values (byte, integer, short, ushort etc.) with a textbox and optional up/down arrow (repeat) buttons. Value editing is possible by dragging the mouse vertically/horizontally, clicking up/down buttons, using up/down or left right cursor keys, spinning mousewheel on mouseover, or editing th…
Stars: ✭ 68 (+47.83%)
Mutual labels:  numeric
Actual Number Picker
Android: A horizontal number picker
Stars: ✭ 206 (+347.83%)
Mutual labels:  number
ChangeNumbersJs
Tiny Library for change number from a language in other language.
Stars: ✭ 14 (-69.57%)
Mutual labels:  number
max-safe-integer
ES2015 Number.MAX_SAFE_INTEGER ponyfill
Stars: ✭ 15 (-67.39%)
Mutual labels:  number
Compute.NET
.NET bindings for native numerical computing
Stars: ✭ 30 (-34.78%)
Mutual labels:  numeric
numeric
numeric facilities for C++ 14; dual numbers, dual quaternions, constrained numbers, intervals
Stars: ✭ 21 (-54.35%)
Mutual labels:  numeric
Genumerics
Genumerics is a high-performance .NET library for generic numeric operations
Stars: ✭ 16 (-65.22%)
Mutual labels:  numeric
kulgram
Kulgram Laravel Indonesia.
Stars: ✭ 36 (-21.74%)
Mutual labels:  indonesia
Number To Words
Number to string standalone PHP library with i18n. Drivers for numbers and currency included.
Stars: ✭ 234 (+408.7%)
Mutual labels:  number
deep-learning-resources
A curated list of deep learning resources books, courses, papers, libraries, conferences, sample code, and many more.
Stars: ✭ 101 (+119.57%)
Mutual labels:  indonesia
Sonataintlbundle
Symfony SonataIntlBundle
Stars: ✭ 212 (+360.87%)
Mutual labels:  number
Stdlib
✨ Standard library for JavaScript and Node.js. ✨
Stars: ✭ 2,749 (+5876.09%)
Mutual labels:  numeric
break infinity.js
A replacement for decimal.js for incremental games who want to deal with very large numbers (bigger in magnitude than 1e308, up to as much as 1e(9e15) ) and want to prioritize speed over accuracy.
Stars: ✭ 145 (+215.22%)
Mutual labels:  number
HTML-CSS
Repositori untuk belajar pemrograman web menggunakan HTML dan CSS dalam bahasa Indonesia
Stars: ✭ 146 (+217.39%)
Mutual labels:  indonesia
react-native-confetti
React Native component to show confetti
Stars: ✭ 46 (+0%)
Mutual labels:  indonesia

Build Status Latest Stable Version License codecov

Tentang

Terbilang merupakan sebuah pustaka sederhana untuk menterjemahkan angka kedalam bentuk bilangan dalam Bahasa Indonesia. Terbilang dapat menterjemahkan angka hingga satuan septiliun atau 1.0E+32 (32 nol). Terbilang menggunakan extension bcmath untuk memproses angka yang besar sehingga perhitungan dapat dilakukan melebihi maksimum PHP_INT_MAX.

Berikut contoh singkat penggunaan Terbilang.

<?php
use RioAstamal\AngkaTerbilang\Terbilang;

echo Terbilang::create()->terbilang('5678');
// lima ribu enam ratus tujuh puluh delapan

echo Terbilang::create()->terbilang('5000,000,000,000,000,000,000,000,000.0021');
// lima ribu septiliun koma nol nol dua satu

Kebutuhan

  • PHP >= 5.5
  • bcmath extension

Instalasi

Untuk instalasi Terbilang dapat digunakan composer atau melalui cara manual yaitu require.

Composer

Pastikan composer sudah terinstal pada sistem anda. Lalu jalankan perintah berikut untuk menginstal Terbilang.

$ composer require rioastamal/terbilang -vvv

Instalasi Manual

Clone project Terbilang dari Github.

$ git clone [email protected]:rioastamal/terbilang.git
$ cd terbilang

Pustaka Terbilang hanya terdiri dari sebuah file jadi cukup menggunakan require pada file Terbilang.php dan Terbilang sudah siap digunakan.

<?php

require '/path/ke/terbilang/src/Terbilang.php';

Instalasi bcmath

Extension bcmath secara default sudah terinstall dihampir semua sistem seperti pada MacOS X (via homebrew) dan Windows. Untuk mengeceknya jalankan perintah berikut pada terminal.

$ php -m|grep bcmath
bcmath

Jika bcmath muncul maka extension ini sudah terinstall di sistem. Jika belum terinstall gunakan perintah berikut untuk menginstall.

Instalasi pada Ubuntu:

$ sudo apt-get install php-bcmath

Contoh

Berikut beberapa contoh penggunaan pustaka Terbilang dan outputnya. Argumen yang diberikan pada method terbilang() harus berupa string angka. Untuk contoh lebih banyak anda dapat melihat pada file tests/TerbilangTest.php.

<?php
use RioAstamal\AngkaTerbilang\Terbilang;

$terbilang = new Terbilang();
$terbilang->terbilang('5');
// lima

$terbilang->terbilang('15');
// lima belas

$terbilang->terbilang('99');
// sembilan puluh sembilan

$terbilang->terbilang('787654321');
// tujuh ratus delapan puluh tujuh juta enam ratus lima puluh empat ribu tiga ratus dua puluh satu

$terbilang->terbilang('11000000001000222');
// sebelas ribu triliun satu juta dua ratus dua puluh dua

$terbilang->terbilang('1,000,000,000,000,000,000,000,000.0001');
// satu septiliun koma nol nol nol satu

Terbilang juga mendukung penggunakan pemisah ribuan.

$terbilang->terbilang('3,900');
// tiga ribu sembilan ratus

$terbilang->terbilang('1,011,000');
// satu juta sebelas ribu

Penggunaan desimal (pemisah titik) pada angka.

$terbilang->terbilang('0.005');
// nol koma nol nol lima

$terbilang->terbilang('1,000,000.025');
// satu juta koma nol dua lima

Penggunaan desimal (pemisah koma) pada angka. Ini adalah penulisan yang lazim digunakan di Indonesia.

// Ubah pemisah desimal ke ','
$terbilang->pemisahDesimal = ',';

$terbilang->terbilang('0,005');
// nol koma nol nol lima

$terbilang->terbilang('1.000.000,025');
// satu juta koma nol dua lima

Shortcut t() untuk method terbilang().

$terbilang->t('1,200,000');
// satu juta dua ratus

Unit Test

Untuk menjalankan unit test disarankan menggunakan phpunit yang berada pada vendor direktori. Ini adalah phpunit yang diinstall melalui composer.

$ ./vendor/bin/phpunit --debug
PHPUnit 6.5.8 by Sebastian Bergmann and contributors.

Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testStaticInstance' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testStaticInstance' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangKurangDari12' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangKurangDari12' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangBelasan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangBelasan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangPuluhan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangPuluhan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangRatusan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangRatusan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangRibuan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangRibuan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangJutaan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangJutaan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangMilyaran' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangMilyaran' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangTriliunan' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangTriliunan' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangSeptiliun' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangSeptiliun' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangDenganKoma' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testTerbilangDenganKoma' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testAngkaKomaGanda' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testAngkaKomaGanda' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testPemisahRibuanDenganBeberapaPemisah' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testPemisahRibuanDenganBeberapaPemisah' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testPemisahDesimalBukanTitik' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testPemisahDesimalBukanTitik' ended
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testShortcutMethod' started
Test 'RioAstamal\AngkaTerbilang\Test\TerbilangTest::testShortcutMethod' ended


Time: 174 ms, Memory: 4.00MB

Penulis

Pustaka Terbilang ditulis oleh Rio Astamal [email protected]

Lisensi

Pustaka ini menggunakan lisensi MIT http://opensource.org/licenses/MIT.

Alternatif

Terbilang menggunakan teknik bagi, modulus, dan rekursif. Terdapat beberapa pustaka sejenis dengan ini yang menggunakan teknik lain.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].