Selasa, 24 November 2015

Tugas PBO - Peminjaman Buku dengan UML dan Eclipse

Assalamualaikum wr.wb, bertemu lagi dengan saya. Disini saya akan menjelaskan tentang UML.
UML merupakan sebuah bahasa yang berguna untuk memvisualisasi, menspesifikasikan, membangun dan pendokumentasian dari sebuah sistem pengembangan software berbasis Object Oriented. UML berbentuk seperti diagram flowcart, didalamnya terdapat class, atribut, dan method yang akan digunakan dalam membangun sebuah program OOP. UML menunjukan relasi antar class dan juga kedudukan class tersebut dalam program. Berikut adalah contoh UML Peminjaman Buku yang dibuat menggunakan starUML


Selanjutnya implementasikan ke dalam program, berikut source codenya :
1. Buat class mahasiswa
public class mahasiswa
{ private int nim ;
   private String address ;
   private String name ;

public void setNIM (int nim)
{
   this.nim = nim
}
public int getNIM()
{
   return nim;
}
public void setName (String nama)
{
   this.name = nama;
}
public String getName()
{
   return name;
}
public void setAddress (String alamat)
{
   this.address = alamat;
}
public String getAddress ()
{
   return address:
}
}

 2. Buat class peminjaman
public class peminjaman
{
pubic buku bukuDipinjam ;
public mahasiswa anggota ;

void peminjaman (mahasiswa member, buku book)
{
   anggota = member ;
   bukuDipinjam = book ;
}
void lihatdatapeminjaman ()
{
   System.out.println ("DATA PEMINJAMAN BUKU");
   System.out.println ("NIM : " + anggota.getNIM());
   System.out.println ("Nama:" + anggota.getName());
   System.out.println ("Alamat:" + anggota.getAddress());
   System.out.println ("Judul Buku:" + bukuDipinjam.getTitle());
   System.out.println ("Nama Penulis:" + bukuDipinjam.getWriter());
}
}
3. Buat class buku
public class buku{
protected String title;
protected String writer;

public void setTitle (String title)
{
   this.title = title;
}
public String getTitle()
{
   return title;
}
public void setWriter (String writer)
{
   this.witer = writer;
}
public String getWriter()
{
  return writer;
}
}
4. Buat class komik
public class komik extends buku
{
   Boolean gambar;
}
5. Buat class peminjamantest untuk mengecek hasil program.
public class peminjamantest
{
   public static void main (String [] args)
   {
      buku bukuku = new buku();
      mahasiswa siswa = new mahasiswa();
      peminjaman pinjam = new peminjaman();
      komik book = new komik();

      siswa.setNIM(32);
      siswa.setName("Muh Ferry Setiawan");
      siswa.setAddress("Kendal");

     bukuku.setTitle("Bangun Lagi dong Lupus");
     bukuku.setWriter("Raditya Dika");

     book.setTitle("Naruto");
     book.setWriter("Masashi Kisimoto");

     pinjam.peminjaman(siswa,bukuku);
     pinjam.lihatdatapeminjaman();

     pinjam.peminjaman(siswa,book);
     pinjam.lihatdatapeminjaman();
}
}
Jalankan program

    
  




Selasa, 27 Oktober 2015

Overiding dan Overloading dalam Java

Kali ini saya akan membagikan sedikit metode yang ada dalam java  yaitu Metode Overriding dan Metode Overloading.

Di program ini akan membedakan gaji dari masing-masing pegawai:
  1. Bos
  2. Pegawai tetap
  3. Pegawai kontrak
Untuk itu diperlukan SuperClass(Pegawai) dan SubClass(Bos, Pegawai Tetap, Pegawai Kontrak) serta Program utama. Dengan kata lain kita perlu membuat 5 class dalam satu program.
  1. Pertama kita buat Superclass "Pegawai"

  • Buat variabel - variabel yang diperlukan
  • Masukkan fungsi yang akan diberikan pada class pegawai "Absen"&"gaji"
    kemudian ketikan codingan seperti berikut :
    public class pegawai {int nama;
    int gaji;
    int gajipokok=150000;
    public void Absen(){
       System.out.println("perusahaan Homer");
        }
        public void gaji(){
        System.out.println("Gaji pokok pegawai=+gajipokok");
        }
    }

  2. Buatlah SubClassA yaitu "bos"
  • Berikan keyword "extends" yang merujuk pada SuperClass
  • Tambahkan type dan nama dari variabel
  • Lakukan Overiding pada bagian fungsi "Absen" yang nantinya akan dimunculkan
  • Tambahkan pula fungsi lain yaitu "gajibos"
          public class bos extends pegawai{
          int gajibonus;
          int gajilembur;
          int total;
          int jumlahlemburbos;
          public void Absen(){
    System.out.println("Nama=Homer");
}
          public void gajibos (int jumlahlemburbos){
          gajilembur = gajilembur * jumlahlemburbos;
          total = gajipokok+gajibonus+gajilembur;
          System.out.println("Gaji bos = " + total);
    }
}

 3. Tambahkan SubclassB yaitu "pegawai_tetap"
  • Lakukan hal yang sama dengan cara pertama
  • Perbedaannya pada variabel gajitunjangan diberi angka tertentu
  • Dan pada fungsi gajipegawaitetap diberikan fungsi khusus sehingga dapat di overloading

          public class pegawai_tetap extends bos{
          int gajilembur=1700;
          int gajitunjangan=2000;
          int totalgajiperusahaan;
          int jumlahlembur;

          public void Absen(){
    System.out.println("Nama=flender");
}
          public void gajipegawaitetap(int jumlahlembur){
          gajilembur=gajilembur*jumlahlembur;
           totalgajiperusahaan=gajipokok+gajitunjangan+gajilembur;
  System.out.println("Gaji bos="+totalgajiperusahaan);

    }
}

4. Buat SubclassC dengan nama "pegawai_kontrak"
  • Pengisian sama seperti pada SubclassB

         public class pegawai_kontrak extends pegawai{
         int gajitambahan;
         int totalgajiperusahaan;

         public void Absen(){
    System.out.println("Nama= Plopper CS");
}
        public void gajipegawaikontrak(int gajitambahan){
        totalgajiperusahaan=gajipokok+gajitambahan;
    System.out.println("Gaji bos="+totalgajiperusahaan);
   
    }
}

 5. Buat program utama "program_utama"
  • Buat constructor dari class yang sebelumnya  
  • Panggil fungsi dari masing-masing class yang telah dibuat contoh : "Absen","gaji", dll.
  • Lakukan Overriding pada fungsi yang diberikan hak seperti fungsi "gajibos" pada class bos.
  • Isi data Overriding sesuai dengan fungsi yang telah dibuat pada Class Sebelumnya

         public class program_utama {
         public static void main (String[]Args){
   
         pegawai objsuper = new pegawai();
         bos objsubA = new bos();
         pegawai_tetap objsubB = new pegawai_tetap();
         pegawai_kontrak objsubC = new pegawai_kontrak();

    System.out.println("Gaji pokok");
        objsuper.Absen();
        objsuper.gaji();
    System.out.println("\n");
   
    System.out.println("Gaji bos");
        objsubA.Absen();
        objsubA.gajibos(4);
    System.out.println("\n");
   
    System.out.println("Gaji Pegawai Tetap");
        objsubB.Absen();
        objsubB.gajipegawaitetap(4);
    System.out.println("\n");
   
    System.out.println("Gaji Pegawai Kontrak");
       objsubC.Absen();
       objsubC.gajipegawaikontrak(500);
    System.out.println("\n");
    }
}


 6. Jalankan program



Senin, 28 September 2015

Tugas PBO- Jenis-jenis Keyword pada Java

Assalamualaikum wr.wb
Pada kesempatan kali ini saya akan menjelaskan tentang jenis-jenis keyword pada java.

Jenis-jenis keyword pada Java dan fungsinya :

1. Abstract
Abstract adalah kata kunci yang digunakan untuk menyatakan kelas atau metode untuk
menjadi abstract. Sebuah metode tidak memiliki implementasi, semua kelas yang
berisi metode abstract harus dari mereka abstrak, walaupuntidak semua kelas abstrak
memiliki metode abstrak.Objek dari kelas abstrak tidak dapat instantiated, tetapi dapat
diperpanjang olh kelas lain. Semua subclass dari kelas abstrak harus menyediakan
implementasi untuk semua metode abstrak, atau juga harus abstrak.

2. Assert
Assert merupakan kata kunci yang ditambahkan dalam J2SE 1,4, digunakan untuk
membuat pernyataan yang programmer percaya selalu benar dititik dalam program.
Jika pernyataan akan diaktifkan ketika program dijalankan dan ternyata bahwa
pernyataan adalah palsu, Kata kunci ini dimasukkan untuk membantu dalam
debugging.

3. Byte
Byte kata kunci yang digunakan untuk menyatakan suatu bidang yang dapat
menyimpan sebuah 8 – bit menandatangani dua complement integer. Kata kunci ini
juga digunakan untuk menyatakan bahwa suatu metode mengembalikan nilai tipe
byte.

4. Break
Digunakan untuk melanjutkan pelaksanaan program dipernyataan segera setelah blok
melampirkan saat ini ataupernyataan jika diikuti sebuah label.

5. Case
Case digunakan untuk membuat kasus-kasus individu dalam pernyataan switch.

6. Class
Suatu jenis yang mendefinisikan implementasi dari jenis objek tertentu. Sebuah
defenisi kelas mendefinisikan instance kelas bidang dan metode dan kelas batin serta
menetukan antar muka kelas dan segera mengimplementasikan superclass kelas. Jika
superclasstidak secara eksplisit ditentukan, superclass secara implicit object.

7. Default
Default digunakan dalam sebuah pernyataan switch untuk label blok pernyataan yang
akan dieksekusi jika tidak ada case cocok dengan nilai yang ditentukan.

8. Else
Kata kunci ini dapat digunakan bersama if untuk membuat penyataan if-else yang
mengujisuatu ekspresi Boolean, jika ekspresi bernilai true, blok pernyataan yang
berhubungan dengan if dievaluasi, jika ia bernilai false blok, dari laporan yang
berkaitan dengan else dievaluasi.

9. Import
Digunakan pada awal sebuah file sumber untuk menentukan kelas atau seluruh paket
JAVA untuk disebut kemudian tanpa termasuk paket-paket mereka nama-nama dalam
referensi. Sejak J2SE 5.0, import laporan dapat mengipor statc anggota kelas.

10. If
If digunakan untuk membuat pernyataan jika yang menguji suatu ekspresi bernilai
true, blok pernyataan yang berhubungan dengan jika pernyataan dijalankan. Kata
kunci ini juga dapat digunakan untuk membuat pernyataan jika lai.

11. New
New digunakan untuk membuat sebuah instance dari sebuah kelas atau array.

12. Package
Sekelompok jenis paket dinyatakan dengan package kata kunci.

13. Int
Adalah kata kunci yang digunakan untuk menyatakan sebuah lapangan yang dapa
memegang 32-bit masuk integer melengkapi dua. Kata kunci ini juga digunakan untuk
menyatakan bahwa metode yang mengembalikan nilai int.

14. Interface
Digunakan untuk menyatakan tipe khusus kelas yang hanya berisi metode abstrak,
konstan (static final) bidang dan static interface. Hal ini nantinya akan
diimplementasikan oleh kelas yang menyatakan antarmuka dengan implementasi kata
kunci.

15. Long
Long kata kunci digunakan unuk menyatakan sebuah lapangan yang dapat memegang
64-bit masuk integer yang melengkapi dua. Kata kunci ini digunakan untuk
menyatakan bahwa metode yang mengembalikan nilai tipe long.

16. Native
Digunakan dalm deklarasi metode untuk menentukan bahwa metode ini tidak
diimplementasikan dalam file sumber java yang sama, melainkan dalm bahasa lain.

17. Private
Kata kunci yang digunakan dalam pembagian lapangan, metode, atau kelas batin,
anggota swasta hanya dapat diakses oleh anggota lain dari kelas mereka sendiri.

18. Public
Piblic kata kunci yang digunakan dalam deklarasi metode, kelas, atau bidang, kelas
umum, metode dan bidang dapat diakses oleh anggota dari setiap kelas.

19. Static
Digunakan untuk menyatakan sebuah lapangan, metode atau kela batin sebagai
bidang kelas. Kelas mempertahankn satu salinan bidang kelas terlepas dari berapa
banyak contoh yang ada dari kelas itu. Static juga digunakan untuk mendefinisikan
sebuah metode sebagai metode kelas. Kelas metode yang terikat ke kelas, bukan ke
contoh spesifik, dan hanya dapat beroperasi pada kolom kelas. (kelas dan interface
dideklarasikan sebagai static anggota lain kelas atau interface sebenarnya top-level
kelas dan tidak inner class).

20. Return
Digunakan untuk menyelesaikan pelaksanaan metode. Hal ini dapat diikuti oleh suatu
nilai yang dapt diperlukan oleh defenisi metode yang dikembalikan ke pemanggil.

21. This
Digunakan untuk mewakili sebuah instance dari kelas dimana ia muncul. This dapat
digunakan untuk mengakses anggota kelas sebagai referensi. This juga kata kunci
digunakan untuk meneruskan panggilan dari satu konstuktor dikelas untuk konstuktor
lain dikelas yang sama.

22. Throw
Kata kunci yang digunakan untuk menangani exception jenis tugas yang kompatibel.
Jikatik adahandler pengecualian tersebut ditemukan dalam metode yang sekarang,
maka kembali metode dan proses ini diulang dalam metode distack, maka
pengecualian dilewatkan kehandler pengecualian theard itu tidak tertangkap.

23. Try
Medefinisikan blok pernyataan yang telah exception handling. Jika pengecualian
dilemparkan dalam try blok, opsional catch blok dapat menagani menyatakan jenis
pengecualain. Juga,opsionalfinally blok dapat dideklarasikan yang akan dijalankan
ketika keluar eksekusi try blok dan catch klausa, telepas dari apakah pengecualain
dibuang atau tidak. Sebuah try blok harus memilki minimal satu catch klausa atau
finally blok.

24. Void
Kata kunci yang digunakan untuk menyatakan bahwa suatu metode tidak
mengembalikan nilai apapun.

25. Volatile
Digunakan dalam deklarasi lapangan untuk menentukan bahwa variabel yang diubah
asynchronously oleh bersamaan menjalankan thread, metode, kelas dan interface
sehingga tidak dapat dideklarasikan volative.

26. While
Kata kunci digunakan untuk membuat loop semntara, ynag menguji suatu ekspresi
Boolean dan mengeksekusi blok pernyataan yang berhubungan dengan loop jika
ekspresi bernilai true, ini terus sampai ekspresi bernilai false. Kta kunci ini juga dapat
digunakan untuk membuat sebuah do-while-loop.

27. Boolean
Kata kunci yang digunakan untuk menyatakan suatu bidang yang dapat menyimpan
suatu nilai Boolean, yaitu baik true atau false. Kata kunci ini juga digunakan untuk
menyatakn bahwa metode yang mengembalikan nilai tipe Boolean.

28. Char
Char kata kunci digunakan untuk menyatakan bidang yang dapat menyimpan 16-bit
Unicode karakter. Kata kunci ini juga digunakan untuk menyatakan bahwa metode
yang mengembalikan nilai tipe char.

29. Catch
Mendefinisikan sebuah handler pengecualian kelompok pernyataan yang dieksekusi
jika pengecualian dilemparkan diblok ditentukan oleh sebelumnya try kata kunci,
kode ini akan dijalankan hanya jika kelas pengecualian dilemparkan adlah tugas
kompatibel dengan kelas pengecualian dideklarasikan oleh catch klausa.

30. Const
Meskipun reserved sebagai kata kunci dijava, const tidak digunakan dan memiliki
fungsi.

31. Continue
Digunakan untuk melanjutkan eksekusi program pada akhir tubuh loop saat ini. Jika
diikuti dengan label, continue eksekusi kembali pada akhir tubuh loop brlabel
melampirkan.

32. Do
Kata kunci yang dpat digunakan bersama dengan whie untuk membuat sebuah dowhile
loop, yang menjalankan suatu blok statement berkaitan dengan loop dan
kemudian tes ekspresi Boolean yang dapat berkait dengan while, jika ekspresi bernilai
true, blok dijalankan lagi, ini trussampai ekspresi bernilai false.

33. Double
Kata kunci yang digunakan untuk menyatakan sebuah lapangan yang dapat
memegang 64-bit. Kata kunci ini juga digunakan untuk menyatakan bahwa
suatumetode megembalikan nilai tipe double.

34. Enum
Sebuah java kata kunci yang igunakan untuk mendeklarasikan tipe enumerasi. Matri
memperpanjang kelas dasar enum.

35. Extends
Digunakan dalm sebuah deklarasi kelas untuk menetukan superclass, digunakan
dalam deklarasi interface nutuk menentukan satu atau lebih superinterface. Kelas X Y
meluas kelas untuk menmbah fungsionalitas, baik dengan menambahkan field atau
metode ke Y kelas, atau dengan meng-overridemetode kelas Y. Antar muka Z
memperluas satu atau lebih interface dengan menmbahkan metode. Kelas X dikatakan
sebagai subclass Y kelas, interface Z dikatakan sebagai interface dari interface itu
meluas. Juga digunakan untuk menentukan batas atas sebuah ketik Generics.

36. Final
Mendefinisikan entitas sekali yang tidak dapat diubah atau berasal dari nanti. Lebih
spesifk, sebuah kelas akhir tidak dapat subclassed, metode akhir tidak dapat diganti,
dan variabel final dapat trjadi paling banyak sekali sebagai ekspresi kiri. Semua
metode dikelas terakhir secara implicit final.

37. Finaly
Digunakan untuk mendefinisikan suatu blok statement nutuk blok yang ditetakan
sebelumnya oleh try kata kunci. Yang finaly blok dijalankan setelah keluar eksekusi
try blok dan apapun yang terkait catch klausa terlepas dari apakah pengecualian
terlempar atau tertangkap, atau eksekusi meninggalkan metode ditengah try atau catch
blok menggunakan return kata kunci.

38. Float
Float kata kunci digunakan untuk menyatakan sebuah lapanagn yang dapa memegang
32-bit persisi tunggal IEEE 754-angka floating point. Kata kinci ini juga digunakan
untuk menyatkan bahwa suatu metode mengembalikan tipe float.

39. For
For kata kunci digunakan untuk membuat loop, yang menmpatkan inisialiasai
variabel, suatu ekspresi Boolean, dan suatu incrementation. Inisialisasi variabel
dilakukan terlebih dahulu, kemudian ekspresi Boolean dievaluasi. Jika ekspresi
bernilai true, blok pernyataan yang berhubungan loop dijalaankan dan kemudian
incrementation yang dilakukan.

40. Goto
Meskipun receved sebagai kata kunci dijava, goto tidak digunakan dan memiliki
fungsi pada java.

41. Implement
Untuk menentukan satu atau lebih interface yang diimplementasikan oleh kelas saat
ini. Kelas A mewarisi jenis dan metode abstrak dinyatakan oleh interface.

42. Instanceof
Sebuah operator biner yang menggunakan sebuahreferensi objek sebagai operan
pertama dan kelas atau antar muka sebagai operan kedua dan menghasilkan hasil
Boolean.

43. Protected
Kata kunci yangdigunakan dalam pembagian lapangan, metode,atau kelas batin,
anggota yang dilindungi hanya dapat diakse oleh anggota kelas mereka sendiri, bahwa
kelas itu subclass atau kelas yang sama.

44. Strictfp
Sebuah java kata kunci yang digunakan untuk membatasi persis dan pembulatan
pehitungan floating point untuk memastikan portabilitas.

45. Super
Untuk mengakse anggota kelas diwariskan oleh kelas dimana ia muncul. Super kata
kunci juga digunakan untuk meneruskan panggialn dari konstruktor di superclass.

46. Switch
Kata kunci yang digunakan dalam hubunganya dengan case dan default untuk
membuat pernyataan swtch,yang mengavaluasi sebuah variable, nilai cocok untuk
tertentu case,dan pengeksekusi blok pernyataan terkait dengan case.

47. Transient
Menytakan bahwa medan bukan contoh default seri bentuk objek.

48. Synchronized
Digunakan dalam deklarasi atau blok kode metode untuk mendapatkan mutex kunci
untuk objek sedangkan saat benag mengekekusi kode.

49. Throws
Digunakan dalam deklarasi metode untuk menentukan pengecualian tidak ditangani
dalam metode melainkanditeruskan ketingkat yang lebih tniggi berikutnya program.
Semua tertngkap pengecualian dalam sebuah metode yang tidak kasus.
Runtime Exception harus dideklarasikan menggunakan throws kata kunci.

50. Short
Short kata kunci digunakan untuk menyatakan bidang bisa menampung 16-bit integer
melengkapi menandatangi dua. Kata kunci ini juga digunaka untuk menyatakan
bahwa metode yang mengembalikan nilai tipe short

Selasa, 15 September 2015

Pembuatan Program Sederhana dengan Java

Assalamualaikum wr.wb

Pada kesempatan kali ini saya akan menjelaskan tentang pembuatan program sederhana dengan menggunakan java, disini saya membuat program pengkonversian jam dan menit ke dalam detik. Pertama kita mebuat class terlebih dahulu, saya membuat class waktu dengan atribut jam, menit, detik. Berikut scriptnya :
import java.util.Scanner;
 public class konversi_waktu {
 public static void main(String[] args) { 
               Scanner input = new Scanner(System.in); 
               double jam, menit, detik; 
               System.out.print("Masukan Jam = ");
               jam = input.nextDouble(); 
               System.out.print("Masukan Menit = ");
               menit = input.nextDouble();
               detik = (jam*3600) + (menit*60); 
               System.out.println("Total Detik = "+detik);
        } 

}

Penjelasan scriptnya :
Tipe data yang kita gunakan adalah double, agar jika angka yang kita masukan bilangan dengan koma hasilnya pun tetap koma tidak seperti data interger yang merupakan data untuk bilangan bulat
Mungkin teman-teman bertanya-tanya tentang kode import java.util.Scanner; kode tersebut berguna untuk mengambil fungsi scanner pada java yang mana scanner merupakan tipe data reference.
Selanjutnya kode Scanner input = new Scanner(System.in); kode tersebut merupakan pendeklarasian variable Scanner (variabel nya adalah "input" jika ingin diganti kata lain tidak apa-apa)
Terakhir kode panjang = input.nextDouble(); kode tersebut bertujuan untuk menyimpan variabel  yang kita masukan dan akan di proses pada perhitungan matematika.

Demikian yang dapat saya sampaikan, semoga bermanfaat, terima kasih.


Selasa, 08 September 2015

Tugas PBO


Assalamualaikum wr.wb

Pada kesempatan kali ini saya akan membuat sebuah program dengan menggunakan Struct, Looping, pengkonversani waktu, Array dan Sorting. Program ini dibuat dengan menggunakan aplikasi Code Block. Berikut soalnya :

Buat program untuk menampilkan data secara berurutan :

Kasus :
Input :

Nama      Jam         Menit       Detik      Total


Alfa            2             30            26         9026
Faridh         2            19            56          8396
Suni            2            32             1           9121

Output:

Nama        Jam       Menit      Detik       Total

Faridh            2          19          56            8396
Alfa               2          30          26            9026
Suni               2          32           1             9121


Penyelesaianya :

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

struct data

{
         char nama[20];
          int jam, menit, detik, total;
};

int main()
{

     int i, x, y, jumlah;
     struct data anggota[20], c;
     printf("Masukan jumlah anggota : ");
     scanf("%d", &jumlah);
     for(i=0;i<jumlah;i++)
{
     printf("\nMasukan nama : ");
     scanf("%s", &anggota[i].nama);
     printf("Masukan jam : ");
    scanf("%d", &anggota[i].jam);
    printf("Masukan menit : ");
    scanf("%d", &anggota[i].menit);
    printf("Masukan detik : ");
    scanf("%d", &anggota[i].detik);
    anggota[i].total=(anggota[i].jam*3600)+(anggota[i].menit*60)+(anggota[i].detik*1);
}
    printf("\nData sebelum diurutkan\n\n");
    printf("Nama\tJam\tMenit\tDetik\tTotal\n");
    for(i=0;i<jumlah;i++)
{

printf("%s\t%d\t%d\t%d\t%d\n", anggota[i].nama, anggota[i].jam, anggota[i].menit, anggota[i].detik, anggota[i].total);

}
for(x=0;x<jumlah-1;x++)
{
for(y=0;y<jumlah-1;y++)
        {
         if(anggota[y].total > anggota[y+1].total)
        {
          c=anggota[y];
          anggota[y]=anggota[y+1];
          anggota[y+1]=c;
        }

    }

}

printf("\nData setelah diurutkan\n\n");
printf("Nama\tJam\tMenit\tDetik\tTotal\n");
for(i=0;i<jumlah;i++)
{
printf("%s\t%d\t%d\t%d\t%d\n", anggota[i].nama, anggota[i].jam, anggota[i].menit, anggota[i].detik, anggota[i].total);

    }

}


Hasil :

Jumat, 26 Desember 2014

TUGAS CODING TERSTRUKTUR DENGAN BAHASA C

Pada kesempatan kali ini saya akan menjelaskan tentang coding terstruktur yang melbatkan konsep seperti if else, looping for, dan fungsi.

Sebelumnya saya akan menjelaskan tentang konsep yang akan dipakai yaitu :

  • if else adalah suatu konsep yang akan memproses statement yang mengkikutinya jika (if) kondisi yang diseleksi adalah benar dan sebaliknya (else) jika kondisi yang diseleksi adalah salah.
  • Looping dengan menggunakan for merupakan suatu konsep perulangan seberapapun kita mau.
  • Fungsi adalah suatu konsep untuk mengerjakan tugas tertentu yang letaknya dipisah dari program utama.

jika sudah paham konsep diatas mari kita selesaikan soal beikut :

  • Buatlah program untuk dapat menentukan nilai yang terbesar dan yang terkececil dari tiga buah nilai yang di inputkan.
  • Mencetak bilangan ganjil kelipatan tiga diantara angka 10 s/d 50.
  • Menghitung tahun kabisat, nilai tahun harus di input di keyboard.
  • Membuat program untuk menghitung nilai menurut formula (Σ2X + Y) yang diberikan dari duah buah deret angka dengan X = 2, 4, 6, 3, 2 dan Y = 4, 2, 3, 5, 2.
  • Selesaikan formula berikut ini Y = Σ !Xi dengan Xi = 3, 4, 2, 2.
  • Selesaikan formula berikut ini Y = Σ Xn ; dengan n = 2, 2, 3, 2; dan nilai X = 2.
  • Selesaikan formula berikut ini Y = Σ (X/Xn) dengan X = 2, 2, 4, 2 dan n = 2, 1, 2, 2.

Soal 1
Untuk soal nomer 1 kita akan menggunakan konsep if else, berikut codingnya :


{
    int a,b,c,tinggi,rendah;

    printf("masukan bilangan a :");
    scanf("%d",&a);
    printf("Masukan bilangan b :");
    scanf("%d",&b);
    printf("masukan bilangan c :");
    scanf("%d",&c);

    if(a>b)
    {
        tinggi = a;
        rendah = b;
        if(c>tinggi)
        {
            tinggi=c;
            rendah=b;
        }
        if(c<rendah)
        {
            tinggi=a;
            rendah=c;
        }
    }
    printf("Nilai tertinggi adalah :%d\n",tinggi);
    printf("Nilai terendah adalah :%d\n",rendah);
}
jika sudah lalu jalankan program, berikut hasilnya:




Soal 2
Untuk menentukan angka ganjil 10-50 kita gunakan konsep pengulangan for, sedangkan untuk angka ganjil kita gunakan konsep if. Berikut codingnya :

{
    int i;
    for(i=10;i<=50;i++)
    {
        if(i%3==0 && i%2==1)
        {
            printf("Bilangan kelipatan 3 adalah : %d\n",i);
        }
    }
}
 
berikut hasilnya :




Soal 3
Tahun kabisat adalah tahun yang habis dibagi 4, if (tahun%4==0).Berikut codingnya :

{
   int thn ,hasil;

   printf("Masukan tahun : ");
   scanf("%d",&thn);

   if(thn%4==0)
   {
       printf("tahun %d adalah tahun kabisat",thn);
   }
   else
   {
       printf("Tahun %d bukan tahun kabisat",thn);
   }
}
berikut hasilnya :




tahun 2016 adalah tahun kabisat



tahun 2014 bukan tahun kabisat

Soal 4
Untuk soal nomer 4 kita menggunakan konsep fungsi, berikut codingnya :

int fungsi (int x, int y);
int main()
{
    int x[5]={2,4,6,3,2}, y[5]={4,2,3,5,2},i,hasil=0;

    for(i=0;i<=4;i++)
    {
        hasil = hasil + fungsi (x[i],y[i]);
    }
    printf("hasil dari sigma 2X + Y = %d",hasil);
}
int fungsi (int x, int y)
{
    int i,n;
    for(i=0;i<=4;i++)
    {
        n=2*x+y;
    }
    return(n);
}

berikut hasilnya :



Soal 5
Untuk soal nomer 5 kita menggunakan for, berikut codingnya :

int faktorial(int nilai);
int main()
{
    int i, x[4]={3,4,2,2},hasil=0;

    for (i=0; i<=3 ; i++)
    {
        hasil = hasil + faktorial(x[i]);
    }
    printf("Hasilnya adalah : %d",hasil);
}
int faktorial(int nilai)
{
    int fk=1,i;
    for(i=1;i<=nilai;i++)
    {
        fk=fk*i;
    }
    return(fk);
}



Soal 6

Untuk soal nomer 6 fungsi digunakan untuk mencari hasil pangkat. berikut codingnya :

int pangkat (int a, int b);
int main()
{
    int x=2, n[4]={2,2,3,2},i,hasil=0;
    for (i=0;i<=3;i++)
    {
        hasil= hasil + pangkat (x,n[i]);
    }
    printf(" hasil sigma x pangkat n adalah :%d",hasil);
}
int pangkat (int a, int b)
{
    int pangkat = 1,i;
    for (i=1;i<b;i++)
    {
        pangkat= pangkat* a;
    }

    return (pangkat);

}

berikut hasilnya :



Soal 7

Pada soal ini kita menggunakan float karena hasil akhirnya ada angka dibelakang koma.

#include <stdio.h>
#include <stdlib.h>
float pangkat(float a,float b);
int main()
{
    int x[4]={2,2,4,2},i;
    float hasil;
    float n[4]={2,1,2,2};
    float jumlah = 0;
    for (i=0;i<=3;i++)
    {
        hasil=(x[i]/pangkat(x[i],n[i]));
        jumlah = jumlah + (x[i]/pangkat(x[i],n[i]));
        printf("Hasilnya adalah = %f\n",hasil);
    }
    printf("\nJumlahnya adalah = %f ",jumlah);
}
float pangkat(float a,float b)
{
    float pkt=1;
    int i;
    for(i=1;i<=b;i++)
    {
        pkt=pkt*a;
    }
    return(pkt);
} berikut hasilnya :



Demikian tentang coding terstruktur, semoga bermanfaat.

Selasa, 09 Desember 2014

KEAMANAN KOMPUTER

Pada pertemuan kali ini saya akan menjelasakan tentang keamanan komputer


  • Keamanan Komputer
Keamanan komputer adalah tindakan pencegahan dari serangan pengguna kompuuter atau pengakses jaringan yang tidak bertanggung jawab. Keamanan komputer berhubungan dengan pencegahan diri dan deteksi terhadap pengganggu yang tidak dikenali oleh sistem komputer.