isUnsignedInteger

Wah, baru aja dirilis, sudah langsung dikasi masukan. Terima kasih, Pak Dosen 😀

Ini penyederhanaan untuk code yang ada di Identifikasi Angka dengan Perulangan. Bisa juga diterapkan di Identifikasi Angka. Validasi untuk mengecek apakah nilai masukan dari user sudah benar bernilai unsigned integer dibuat sebagai method/function terpisah. Berikut function yang dimaksud.

<?php

/**
 * Check $number whether it's a valid Unsigned Integer (0,1,2,...) or not
 * @param <type> $number
 * @return boolean
 */

function isUnsignedInteger($number) {
    // is_numeric($number) = check if it is a number or else (string, etc.)
    // ($number != (int) $number) = cast original value whether it is an integer
    //                              or other numeric type (float, etc.)
    // ($number < 0) = make sure it's not a negative number (unsigned integer)
    if (!is_numeric($number) || ($number != (int) $number) || $number < 0) {
        $isUnsignedInteger = false;
    } else {
        $isUnsignedInteger = true;
    }
    return $isUnsignedInteger;
}

?>

Code di atas disimpan dengan nama, misalnya isUnsignedInteger.php. Selanjutnya function ini dipanggil di file utama dengan menggunakan include. Berikut modifikasi yang perlu dilakukan:

<?php

include 'isUnsignedInteger.php';

$stdin = fopen('php://stdin', 'r');
//
// ...
//

if ((isUnsignedInteger($begin) == false) || (isUnsignedInteger($end) == false)) {
    echo "Batas awal dan/atau batas akhir tidak terdefinisikan.n";
} else {
    for ($i = $begin; $i <= $end; $i++) {
//
// ...
//
}

fclose($stdin);
?>

Kira-kira demikian penyederhanaan yang bisa dilakukan. Ada komentar lain, Pak Dosen? 😉

Published by Eric Gunawan

Happiness Engineer. WordPress Ambassador. Remote Worker. Soccer News Follower. Movie Lover. Proud Father. Lucky Husband.

3 thoughts on “isUnsignedInteger

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: