»

Kamis, 11 April 2013

Soal PHP - Mengurutkan Selisih dari Dua Tanggal yang di Input

Soal PHP- Mengurutkan Selisih dari Dua Tanggal yang di Input

Misal :
INPUT:
format tanggal : (dd/mm/yyyy)
input1 = 29/09/2012
input2 = 06/04/2012

PROSES:
Bagaimana mengurutkan selisih kedua tanggal tersebut??

OUTPUT:
format tanggal : (mmyyyy)
092012
102012
112012
122012
012013
022013
032013
042013
Codingnya :
<?php
$tanggal1 = "29-09-2012";
$tanggal2 = "06-04-2012";
list($hari_awal, $bln_awal1, $thn_awal) = split('[-]', $tanggal1);
list($hari_awal, $bln_akhir, $thn_akhir) = split('[-]', $tanggal2);


if($bln_awal1<10){
list($nol, $bukannol,) = split('[0]', $bln_awal1);
$bln_awal = $bukannol;
}
else{
$bln_awal = $bln_awal1;
}


if($thn_awal == $thn_akhir){
for($b=$bln_awal; $b<=$bln_akhir; $b++){
if($b<10){
$periode = $thn_awal."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $thn_awal."".$b;
echo $periode."<br>";
}
}
}else{
for($t=$thn_awal; $t<=$thn_awal; $t++){
for($b=$bln_awal; $b<=12; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $t."".$b;
echo $periode."<br>";
}
}
}

for($t=($thn_awal+1); $t<=($thn_akhir-1); $t++){
for($b=01; $b<=12; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
$periode = $t."".$b;
echo $periode."<br>";
}
}
}

for($t=$thn_akhir; $t<=$thn_akhir; $t++){
for($b=01; $b<=$bln_akhir; $b++){
if($b<10){
$periode = $t."0".$b;
echo $periode."<br>";
}
if($b>=10){
echo $t."".$b."<br>";
}
}
}
}
?>
Silahkan dicoba.. Semoga bermanfaat :) 

Rabu, 23 Januari 2013

Menggambar 2D di JAVA

Hai sobat... Postingan saya kali ini adalah menggambar 2D di Java. Ini adalah contoh gambar yang telah saya buat. Jika sobat mau silakan download aja syntaxnya di bawah ini. Semoga bermanfaat :)


Mengubah Mac Address Menjadi IPv6 online


The converter



Berikut proses konversi langkah demi langkah:
  1. Ambil contoh mac address: for example 52:74:f2:b1:a8:7f
  2. Tambahkan ff:fe di bagian tengah : 52:74:f2:ff:fe:b1:a8:7f
  3. Mengubah kedalam format IPv6 5274:f2ff:feb1:a87f
  4. Konversikan bilangan pertama dari hexadesimal ke biner: 52 >> 01010010
  5. Invers bit pada posisi ke 6 (Hitung dari 0): 01010010 >> 01010000
  6. Konversikan kembali menjadi hexadesimal: 01010000 >> 50
  7. Ganti bilangan pertama dengan perhitungan yang baru: 5074:f2ff:feb1:a87f
  8. Tambahkan link-local prefix: fe80::5074:f2ff:feb1:a87f
Selesai

Contoh soal menghitung IPv6

1. Diketahui IP Address 20.30.10.144, Berapa IPv6??
    Jawab :
   
         20          .       30         .      10           .     144         ---- dibinerkan

    0001 0100 . 0001 1110 . 0000 1010 . 1001 0000  ---- dikonversikan menjadi bilangan hexa
       1        4         1         E        0         A         9       0

     Jadi, IPv6 nya adalah FE80 :: 141E : A90

2. Diketahui Mac Address CF : 0B : B1 : 1A : BC : F0, Berapa IPv6??
    Jawab :

    CF : 0B : B1 : 1A : BC : F0
    CF : 0B : B1 : FF : FE : 1A : BC : F0
    CF0B : B1FF : FE1A : BCF0 --------------- CF = 1100 1111  >> Diinvers menjadi 1100 1101 >>
                                                                              1100 1101 Dikonversikan menjadi Hexa
    CD0B : B1FF : FE1A : BCF0

    Jadi, IPv6 nya adalah FE80 :: CD0B : B1FF : FE1A : BCF0