Sunday, July 21, 2013

Menabung Gurame

Ikan Gurame merupakan jenis ikan konsumsi yang banyak diminati banyak kalangan masyarakat. Bahkan saat ini banyak rumah makan yang menyediakan aneka menu ikan Gurame, hanya saja kalau kita lihat daftar menu dan harganya rasanya kok mending memilih menu yang lain yang tidak banyak menguras isi kantong tentunya. Ikan ini banyak diminati karena tekstur dagingnya yang kesat dan tidak lembek sehingga mudah untuk disajikan dalam bentuk aneka ragam jenis makanan.



Saya awalnya iseng memelihara ikan gurame, kolam yang hanya 3 x 1.5 m2 saya isi dengan ikan lele sebanyak 300 ekor yang setiap 3 bulan sudah bisa dipanen, lalu saya berfikir menyampurkan ikan gurame, awalnya saya hanya memasukan 10 ekor karena bibit ikan ini relatif mahal dibanding bibit ikan lele. Lalu pada suatu saat ada saudara menawari bibit ikan gurame yang lebi murah dan saya tambahka ke kolam sebanyak 50 ekor lagi.
Setiap 3 bulan  kolam saya kuras untuk mengambil ikan lele dan menabur kembali bibit ikan lele sambil menghitung sisa ikan gurame yang ada (terakhir tersisa 32 ekor). Setelah 4 kali kolam diambil ikan lelenya dan ditabur kembali, ikan gurame sudah berukuran sekitar 3 - 5 Ons. Terakhir saya taburkan ikan lele sebanyak 500 ekor giliran dipanen ikan lelenya tingga 50 ekor. WaW habis... ternyata ikan lele yang kecil2 dimakan gurame yang sudah beranjak jumbo. Setelah itu tidak saya tabur lagi bibit ikan lele dan hanya tersisa gurame saja.

Dan sekarang sudah menuai hasil tabungan guramenya dan tidak perlu ke rumah makan untuk makan Gurame bakar, kalau pengen makan lele  tinggal beli pecel lele yang banyak di pinggir jalan dan relatif murah harganya. Mudah2an kl dapat rezeki bisa nambah lebarin kolamnya jadi bisa bagi2 ke tetangga... :-)

Tuesday, October 9, 2012

Single Linked List Non Circular example (Continue)

#include <iostream>
  #include <stdlib.h>
  using namespace std;
struct Data {
  int nilai;
  Data *next;
  };
  Data *head;
void awal(){
  head=NULL;
  }
  bool isEmpty(){
  if (head==NULL)
  return true;
  return false;
  }
  void tambahDataDepan(int dataBaru) {
  Data *baru;
  baru=(Data*) malloc(sizeof(Data));
  baru->nilai=dataBaru;
  baru->next=baru;
  if (isEmpty()){
  head=baru;
  head->next=head;
  } else {
  Data *bantu;
  bantu=head;
  while (bantu->next!=head){
  bantu=bantu->next;
  }
  baru->next=head;
  head=baru;
  bantu->next=head;
  }
  }
  void tambahDataBelakang(int dataBaru){
  Data *baru;
  baru=(Data*) malloc(sizeof(Data));
  baru->nilai=dataBaru;
  baru->next=baru;
  if (isEmpty()){
  head=baru;
  head->next=head;
  } else {
  Data *bantu;
  bantu=head;
  while (bantu->next!=head){
  bantu=bantu->next;
  }
  bantu->next=baru;
  baru->next=head;
  //head=baru;
  //bantu->next=baru;
  }
  }
  void hapusDepan(){
  if(!isEmpty()){
  int tmp;
  if(head->next!=head){
  Data *hapus;
  hapus=head;
  tmp=head->nilai;
  Data *bantu;
  bantu=head;
  while (bantu->next!=head){
  bantu=bantu->next;
  }
  bantu->next=head->next;
  head=head->next;
  delete hapus;
  }
  else {
  tmp=head->nilai;
  awal();
  }
  cout<<tmp<<" dihapus"<<endl;
  } else {
  cout<<"Data kosong\n";
  }
  }
  void hapusBelakang(){
  Data *hapus,*bantu;
  int tmp;
  if (!isEmpty()){
  hapus=head;
  if (head->next==head)
  {
  tmp=head->nilai;
  head=NULL;
  }
  else {
  bantu=head;
  while (bantu->next->next!=head){
  bantu=bantu->next;
  }
  hapus=bantu->next;
  bantu->next=head;
  tmp=hapus->nilai;
  delete hapus;
  }
  cout<<tmp<<" dihapus"<<endl;
  } else cout<<"data kosong\n";
}
  void cetak(){
  if (!isEmpty()){
  Data *bantu;
  bantu=head;
  do {
  cout<<bantu->nilai<<" ";
  bantu=bantu->next;
  } while(bantu!=head);
  cout<<endl;
  }
  }
  int panjang(){
  int count=0;
  if(!isEmpty())
  {
  count=1;
  Data *bantu;
  bantu=head;
  if(bantu->next==head)
  {
  count=1;
  }
  else
  {
  do
  {
  count++;
  bantu=bantu->next;
  }while(bantu->next!=head);
  }
  }
  else
  {
  count=0;
  }
  return count;
  }
  void swapElement(Data *a, Data *b){
  Data *tmp;
  tmp=a;
  a=b;
  b=tmp;
  }
  int main(){
  awal();
  tambahDataBelakang(5);
  tambahDataDepan(7);
  tambahDataBelakang(17);
  tambahDataBelakang(1);
  tambahDataBelakang(27);
  tambahDataBelakang(10);
  hapusDepan();
  hapusBelakang();
  cetak();
  swapElement(head, head->next);
  cetak();
  cout<<endl<<panjang();
  return 0;
  }


Tugas: SLLC Insertion sort


(kelompok)
1. Buatlah penyisipan node setelah atau sebelum data tertentu.
2. Proses sorting dengan metode insertion sort menggunakan SLLC

data masuk 6

6

data masuk 7

6 7

data masuk 10

6 7 10

data masuk 2

2 6 7 10

data masuk 8

2 6 7 8 10  (menyisipkan)


Sunday, October 7, 2012

Frustasi: Komen bloggger hilang (belum ketemu obatnya)

Sudah 1 minggu ini obrak-abrik setingan blog karena tanpa disadari komen di blog ini hilang, sudah mencari solusi di beberapa blog yang menawarkan solusi dan sudah hampir semua cara dicoba tetapi hasilnya nihil.
Sampai sekarng pun walupun sudah ganti template tetap aja belum nongol kotak komentarnya. Duh... siapa yang bisa bantu ini...?? tolong yang punya solusi kirim email ke didikunila[at]yahoo.com
Ini ngetik sambil berharap ketika di publish komentar di blog ini nongol kembali.....

Friday, October 5, 2012

J2ME: Program Agen Pulsa 0.0.1 (#1)

import javax.microedition.midlet.*;
  import javax.microedition.lcdui.*;
  /**
  * @author Didik Kurniawan
  * Jurusan Ilmu Komputer FMIPA Universitas Lampung
  */
  public class AgenPulsa extends MIDlet implements CommandListener{
  List namaOperator;
  List telkomsel, indosat,xl,three;
  Display display;
  Command ok =new Command("OK",Command.OK,0);
  Command exit =new Command("Exit",Command.EXIT,0);
  Command kembali =new Command("Back",Command.BACK,0);
  Command kirim = new Command("Kirim",Command.OK,0);
  Form form=new Form("No Tujuan");
  TextField noTujuan=new TextField(null,null,32,TextField.PHONENUMBER);
  public AgenPulsa(){
  namaOperator=new List("Operator",List.IMPLICIT);
  namaOperator.append("Telkomsel", null);
  namaOperator.append("Indosat", null);
  namaOperator.append("XL", null);
  namaOperator.append("Three", null);
  namaOperator.addCommand(ok);
  namaOperator.addCommand(exit);
  namaOperator.setCommandListener(this);
  
  telkomsel=new List("Telkomsel",List.IMPLICIT);
  telkomsel.append("5K",null);
  telkomsel.append("10K",null);
  telkomsel.append("20K",null);
  telkomsel.append("25K",null);
  telkomsel.append("50K",null);
  telkomsel.append("100K",null);
  telkomsel.addCommand(ok);
  telkomsel.addCommand(exit);
  telkomsel.addCommand(kembali);
  telkomsel.setCommandListener(this);
  
  indosat=new List("Indosat",List.IMPLICIT);
  indosat.append("2K",null);
  indosat.append("5K",null);
  indosat.append("10K",null);
  indosat.append("25K",null);
  indosat.append("50K",null);
  indosat.append("100K",null);
  indosat.addCommand(ok);
  indosat.addCommand(exit);
  indosat.addCommand(kembali);
  indosat.setCommandListener(this);
  
  xl=new List("XL",List.IMPLICIT);
  xl.append("1K",null);
  xl.append("5K",null);
  xl.append("10K",null);
  xl.append("25K",null);
  xl.append("50K",null);
  xl.append("100K",null);
  xl.addCommand(ok);
  xl.addCommand(exit);
  xl.addCommand(kembali);
  xl.setCommandListener(this);
  
  three=new List("Three",List.IMPLICIT);
  three.append("1K",null);
  three.append("2K",null);
  three.append("3K",null);
  three.append("4K",null);
  three.append("5K",null);
  three.append("10K",null);
  three.append("20K",null);
  three.append("30K",null);
  three.append("50K",null);
  three.append("100K",null);
  three.addCommand(ok);
  three.addCommand(exit);
  three.addCommand(kembali);
  three.setCommandListener(this);
  
  form.append("Isi Pulsa");
  form.append(noTujuan);
  form.addCommand(ok);
  form.addCommand(kembali);
  form.addCommand(kirim);
  form.addCommand(exit);
  form.setCommandListener(this);
  
  }
  public void startApp() {
  if (display==null){
  display=Display.getDisplay(this);
  display.setCurrent(namaOperator);
  }
  }
  
  public void pauseApp() {
  }
  
  public void destroyApp(boolean unconditional) {
  }
  public void commandAction(Command c, Displayable d ){
  if (c==exit) {
  destroyApp(true);
  notifyDestroyed();
  } 
  else if(c==ok && d==namaOperator){
  if (namaOperator.getSelectedIndex()==0) {
  display.setCurrent(telkomsel);
  } 
  else if (namaOperator.getSelectedIndex()==1){
  display.setCurrent(indosat);
  }
  else if (namaOperator.getSelectedIndex()==2){
  display.setCurrent(xl);
  }
  else if (namaOperator.getSelectedIndex()==3){
  display.setCurrent(three);
  }
  } 
  else if(c==kembali && (d==telkomsel || d==indosat || d==xl || d==three)){
  display.setCurrent(namaOperator);
  }
  else if(c==kembali && d==form){
  display.setCurrent(namaOperator);
  }
  else if (c==ok && (d==telkomsel || d==indosat || d==xl || d==three)){
  display.setCurrent(form); 
  }
  
  }
  }