Kamis, 15 Oktober 2015



tugas pemrograman dasar

Assalamualaikum wr.wb... hai, balik lagi ama gw Nishful kali ini saya akan membahas tentang:
1.     Sejarah java
2.     Variabel
3.     Tipe data
4.     Operator-operator
5.     Contoh- contoh program
Langsung saja ke pembahasan pertama ya... mari simak...

SEJARAH  JAVA

          Dimulai pada tahun 1991 dibentuknya suatu tim yang diberi nama green.Tim ini dipimpin oleh Patrick Naughton dan James Gosling (Sekelompok insinyur Sun ). Awalnya mereka ingin membuat suatu bahasa komputer yang dapat digunakan oleh TV kabel (Cable TV Box) yang memiliki memori kecil dan setiap perusahaan memiliki tipe yang berbeda .Untuk mengaplikasikan hal tersebut mereka menggunakan hal yang pernah dicoba oleh bahasa pascal.

          Sebelumnya Niclaus Wirth telah membuat sebuah bahasa yang portable yang akan digunakan dalam mesin bayangan selanjutnya ini disebut sebagai Virtual Mesin namun saat itu belum diumumkan.

          Akhirnya tim green mengunakan ide ini akhirnya mereka menciptakan Java Virtual Mesin. Virtual mesin inilah yang membuat java dapat dijalankan diberbagai platform pada tahun 1992 tim membuat produknya yang diberi nama *7 (star seven) namun produk ini gagal dipasaran.

          Setelah itu dibuat produk yang baru. Inilah java, pada awalnya bahasa pemrograman yang dibuat tersebut diberi nama “oak “ (Kemungkinan nama ini diambil dari nama pohon yang ada didepan jendela james gosling) namu setelah di periksa ternyata nama oak sudah digunakan maka lahirlah nama “java”.

          Pada tahun 1993 sampai pertengahan 1994 tim green yang mempunyai nama baru First person. Inc hanya menghabiskan waktu dengan memperhatikan penjualan dari produknya. Ternyata tidak satupun orang ditemukan. Akhirnya pada tahun 1994 First Person dibubarkan.
Pada tahun itu Web berkembang sangat pesat saat itu browser yang banyak digunakan adalah Mosaic suatu broser yang gratis.

          Dalam suatu wawancara pada pertengahan tahun 94 James Gosling mengatakan “We could build a real cool browser. It was one of the few things in the client/serve mainstream that needed some of the weird things we’d done: architecture neutral, real-time,reliable, secure—issues that weren’t terribly important in the workstation world. So we built a browser.”
Akhirnya dibuatlah suatu browser oleh Patrick Naughton dan Jonathan Payne.
Browser itu diberi nama Hot Java. Browser ini dibuat dengan menggunakan bahasa java untuk menunjukkan kemampuan dari java.

          Yang tidak kalah hebatnya mereka juga membuat teknologi yang disebut Aplet sehingga browser dapat menjalankan odeprogram didalam browser.

          Inilah bukti dari teknologi itu yang ditunjukkan java pada tanggal 25 mei 1995 Sejak saat itu browser java memberikan lisensinya kepada browser lain untuk bisa menjalankan Applet dan pada tahun 1996 diberikan pada Internet Explorer.
          Akhirnya pada tahun 1996 dikeluarkan versi pertama dari java dengan mengeluarkan java 1.02
Pada tahun 1998 dikeluarkan java 1.2 dan java mulai mengeluarkan slogannya “Write once, Run anywhre “

Setelah membahas mengenai java, selanjutnya pembahasan tentang variable. Kemudian berisi informasi bermanfaat lain yang telah di jelaskan di atas... monggo di baca...

VARIABEL

1. berubah-ubah, tidak tetap
2. deklarasi sesuatu yang memiliki nilai.
3. Berbeda-beda dalam bahasa pemrograman disebut juga simbol yang mewakili nilai tertentu, variabel   yang dikenal di sub program disebut variabel lokal. sedang yang di kenal secara umum/utuh dalam       satu program disebut variabel global.

Variabel adalah objek penelitian, atau apa yang menjadi fokus di dalam suatu penelitian. Menurut F.N. Kerlinger variabel sebagai sebuah konsep. Variabel merupakan konsep yang mempunyai nilai yang bermacam-macam. Suatu konsep dapat diubah menjadi suatu variabel dengan cara memusatkan pada aspek tertentu dari variabel itu sendiri. Suatu identitas yang nilainya dapat berubah.

Variabel dapat dibagi menjadi variabel kuantitatif dan variabel kualitatif. Variabel kuantitatif diklasifikasikan menjadi 2 kelompok, yaitu variabel diskrit (discrete) dan variabel kontinu (continous).



TIPE DATA

A. Pengertian Tipe Data

Tipe data biasanya digunakan untuk menentukan jenis nilai yang dapat ditampung oleh suatu variabel, umumnya telah menyediakan tipe-tipe data yang sederhana (simple) maupun yang terstruktur. Apabila kita membutuhkan tipe data yang belum tersedia, kita dapat mendefinisikan sendiri tipe data baru yang disebut enumerated type.

B. Macam-macam Tipe Data

a.   Tipe Data Sederhana (SIMPLE - DATA TYPE)
• adalah tipe data yang sudah ada dan dijadikan standar dalam bahasa pemrograman tertentu.
• Isi dari tipe data sederhana ini adalah data-data tunggal

TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)

1. STANDARD DATA TYPE
• Interejer
• Real
• Char
• String
• Bolean


2. USER-DEFINED DATA TYPE
  ENUMERATED OR SCALAR TYPE
  SUBRANGE TYPE

INTEGER => TIPE BILANGAN BULAT
                            

REAL =>TIPE BILANGAN PECAHAN 

TIPE BILANGAN REAL
  Data yang termasuk bilangan real adalah data angka yang mengandung pecahan.
  Data yang seperti ini akan memiliki keterangan jangkauan, jumlah digit penting (berarti) dan ukuran.
  Digit berarti ini penting diperhatikan karena ini berhubungan dengan tingkat ketelitian data yang disajikan.

TIPE DATA KARAKTER


TIPE DATA BOOLEAN
  Adalah tipe data yang hanya bernilai benar (true) atau salah (false).
  Jangkauan (nilai yang mungkin) hanya 2 yaitu true atau false.

USER - DEFINED DATA TYPE =>SUB JANGKAUAN
  Tipe sub jangkauan merupakan tipe data yang jangkauannya merupakan sebagian dari tipe data yang lain.
  Misalnya untuk tipe byte memiliki jangkauan dari 0..255, sementara kita hanya memerlukan angka 1..12 untuk menampung data bulan. Maka bisa diciptakan satu tipe baru yang merupakan sub jangkauan tersebut.
  Contoh = Type Bulan : 1 .. 12 ;


B.   TIPE DATA TERSTRUKTUR (STRUCTURED - DATA TYPE)
1.   ARRAY(LARIK)
2.    RECORD(REKAMAN)
3.    FILE
4.    SET (HIMPUNAN)

1. ARAY (LARIK)
  Larik adalah tipe data yang berisi beberapa data yang ditampung dalam satu variabel yang memiliki tipe data yang sama.
  Masing masing data yang tertampung dalam sebuah larik akan ditandai sebagai elemen pertama sampai ke - n.
  larik dapat dibuat beberapa dimensi, misalnya untuk menggambarkan matrix kita perlu menggunakan larik 2 dimensi. 

2.   RECORD (REKAMAN)
  Tipe data rekaman di gunakan untuk menampung data yang terdiri dari beberapa tipe yang berbeda.
  Record dapat diakses (diisi) dan dibaca per elemen record dengan menyebut nama elemennya.


3.   SET (HIMPUNAN)
Tipe data himpunan merupakan sebuah tipe data yang didalamnya memuat sejumlah elemen (anggota) dimana anggotanya memiliki tipe data dasar yang sama.

C.   TIPE POINTER
  Pointer secara harfiah dapat diartikan sebagai penunjuk.
  Tipe data pointer ini merupakan tipe data yang berisikan alamat memori dimana data disimpan

OPERATOR-OPERATOR

Operator adalah simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data (operand).
Ada beberapa jenis operator, yaitu :
1. Assignment Operator / Operator Penugasan 
         Assignment Operator (operator penugasan) adalah operator yang menggunakan tanda sama   dengan (=) untuk mengisi sebuah nilai dalam suatu variabel.
 
2. Arithmetic Operator / Operator Aritmatika
Arithmetic Operator (operator aritmatika) adalah operator yang digunakan untuk melaksanakan operasi aritmatika.
Beberapa operator aritmatika antara lain:
* : untuk perkalian
+ : untuk penjumlahan
- : untuk pengurangan
/ : untuk pembagian
% : untuk sisa pembagian (modulus)


3. Logical Operator / Operator Logika / Boolean Operator

Operator Boolean atau Operator Logika adalah operator yang digunakan untuk melakukan operasi logika yaitu operator yang menghasilkan nilai TRUE (benar) atau FALSE (salah).
Bebarapa macam operator logika antara lain:
1. and : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
2. or : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE
3. xor : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE tetapi bukan keduaduanya
           bernilai TRUE
4. ! : mengasilkan nilai tidak TRUE
5. && : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
6. || : menghasilkan nilai TRUE jika salah satu operand bernailai TRUE

4. Comparison Operator / Operator Pembanding

Operator Pembanding adalah operator yang digunakan untuk membandingkan dua buah nilai atau operand.
Operator perbandingan ini antara lain :
<  : untuk kurang dari
> : untuk lebih dari
<= : untuk kurang dari atau sama dengan
>= : untuk lebiih dari atau sama dengan
== : untuk sama dengan
!= : untuk tidak sama dengan
<> : untuk tidak sama dengan


CONTOH-CONTOH PROGRAM

Dibawah ini adalah contoh program sederhana :

1. Konversi jam, menit dan detik

#include <iostream.h>
#include <conio.h>

void main (){
        int jam =3600;
        int menit =60;
        int a, b, c, d, e, f;
        a=4*jam+56*menit+12;
        b=3*jam+21*menit+56;
        c=10*jam+34*menit+1;
        d=8*jam+32*menit+31;
        e=6*jam+42*menit+11;
        f=a+b+c+d+e;
        cout<<"hasil dari 4jam 56 menit 12 detik kedetik adalah "<<a<<endl;
        cout<<"hasil dari 3jam 21 menit 56 detik kedetik adalah "<<b<<endl;
        cout<<"hasil dari 10jam 34 menit 1 detik kedetik adalah "<<c<<endl;
        cout<<"hasil dari 8jam 32 menit 31 detik kedetik adalah "<<d<<endl;
        cout<<"hasil dari 6jam 42 menit 11 detik kedetik adalah "<<e<<endl;
        cout<<"jumlah total dari konversi tersebut adalah "<<f<<endl;
getch ();       
}

2. konversi dari cm ke km,m,cm menggunakan modulus

#include <iostream.h>
#include <conio.h>

void main () {
     int cm,m,km,a,b,c;
     cout<<"konversi dari cm ke km,m,cm:"<<endl;
     cout<<"masukan nilai a:";
     cin>>a;
     km=a/100000;
     b=a%100000;
     m=b/100;
     c=b%1000;
     cm=c;
     cout<<endl<<endl;

     cout<<"km="<<a/100000<<endl<<endl;
     cout<<"m="<<b/100<<endl<<endl;
     cout<<"cm="<<c<<endl<<endl;
getch ();
}

3. Konversi desimal ke hexa, biner dan oktal

cout<<"Program Konversi Bilangan\n\n";
cout<<"Masukkan bilangan desimal : ";
cin>>input;
dectohex(input);
dectobin(input);
dectooc(input);
getch();
}

void dectobin(int input)
{    
cout << input <<" dalam Biner adalah ";
for(int x=0; x<input;)
{
++counter;
c[counter] = input % 2;
input = input / 2;
}
while(counter>0)
{
cout << c[counter];
--counter;
}
cout<<"\n";
}

void dectohex(int input)
{
cout << input <<" dalam Hexadesimal adalah ";
for(int x=0; x<input;)
{
++counter;
c[counter] = input % 16;
input = input / 16;
}

while(counter>0)
{
if(c[counter]==15)
{
cout<<"F";      
}
else if(c[counter]==14)
{
cout<<"E";
}
else if(c[counter]==13)
{
cout<<"D";
}
else if(c[counter]==12)
{
cout<<"C";
}
else if(c[counter]==11)
{
cout<<"B";
}
else if(c[counter]==10)
{
cout<<"A";
}
else
{
cout<<c[counter];
}
--counter;
}
cout<<"\n";
}

void dectooc(int input)
{    
cout << input <<" dalam Oktal adalah ";
for(int x=0; x<input;)
{
++counter;
c[counter] = input % 8;
input = input / 8;
}
while(counter>0)
{
cout << c[counter];
--counter;
}
cout<<"\n";
}

4. Menghitung akar persamaan kuadrat

#include <iostream>
#include <conio.h>
#include <math.h>

   void main () {
   float a,b,c,x1,x2;

   cout<<"masukan nilai a : ";
   cin>>a;
   cout<<"masukan nilai b : ";
   cin>>b;
   cout<<"masukan nilai c : ";
   cin>>c;

   cout<<endl<<endl;
   x1=(b+sqrt(b*b-4*a*c))/2*a*c;
   x2=(b-sqrt(b*b-4*a*c))/2*a*c;

   cout<<"x1="<<x1<<endl<<endl;
   cout<<"x2="<<x2<<endl<<endl;

getch ();
}

5. Menghitung deret fibonaci dengan looping for

#include <iostream.h>
 #include <conio.h>

void main () {
int a,b,c,i;
cout<<"program menghitung deret fibonaci"<<endl<<endl;

    cout<<"masukan bilangan pertama=";
    cin>>a;
    cout<<"masukan bilangan kedua=";
    cin>>b;

    for (i=0; i<=10; i++){
    c=a+b;

    cout<<c<<endl;
    a=b;
    b=c;
    }
getch ();
}

6.Membuat huruf F dengan karakter *

#include <iostream.h>
#include <conio.h>

void main () {
  char a='*';
  int f,i,c;

  cout<<"masukan nilai tinggi:";
  cin>>f;
  for(i=1; i<=f; i++){
  cout<<a;
  if(i==1)
  for(c=1; c<=3; c++)
  cout<<a;
  if(i==3)
  for(c=1; c<=3; c++)
  cout<<a;
  cout<<endl;
  }
getch ();
}

7. Membuat huruf H

#include <iostream>
#include <conio>
main (){
    int angka;

    cout <<"Masukkan Nilai : ";
    cin >> angka;

   for(int a=1; a<=angka; a++)
  {
     for(int i=0; i<angka; i++)
    {
       if(i<1 || i == angka-1)
    {
    cout<<"#";
}

else if(a == (angka/2)+1)
{
cout<<"#";
}
else
{
cout<<" ";
}
}
cout<<endl;
}
getch();
}

8. Menampilkan bilangan ganjil 1-100

#include <iostream.h>
#include <conio.h>

int main (){
int a,b,i;
a=-1;
   cout<<"bilangan ganjil (1_100) adalah:"<<endl;

   for (i=1;i<=50;i++)
   {

   b=2+a;

   cout<<b<<" ";
   a=b;
   }
getch ();
} 

9. Menghitung luas persegi panjang dan volume balok dengan fungsi

#include <iostream.h>
#include <conio.h>

int volume(int &l){
  int t;
  cout<<"masukan nilai t :";
  cin>>t;
  l =l*t;
  return l;
}

int luas(int p, int l)  {
   int x;
   x=p*l;
   cout<<"tampilkan nilai luas :"<<x<<endl;
   volume(x);
   return x;
}

void main (){
  int p,l,j;
  cout<<"masukan nilai p :";
  cin>>p;
  cout<<"masukan nilai l :";
  cin>>l;
  j=luas(p,l);
  cout<<"volume balok adalah : "<<j<<endl;

getch();
}

10. Menghitung luas alas, luas permukaan dan volume kerucut

#include <iostream>
#include <conio>
#define phi 3.14

void main(){
   float r_alas, r_selimut, t, volume_krucut, luas_alas, luas_selimut;

    cout<<"maksukkan jari jari alas = ";
    cin>>r_alas;
    cout<<"maksukkan jari jari selimut = ";
    cin>>r_selimut;
    cout<<"masukkan tinggi kerucut = ";
    cin>>t;

    luas_alas=phi*r_alas*r_alas;
    volume_krucut=luas_alas*t;
    luas_selimut=phi*r_selimut*r_selimut/3;

    cout<<"luas_alas adalah "<<luas_alas<<endl;
    cout<<"volume_krucut "<<volume_krucut<<endl;
    cout<<"luas permukaan krucut "<<(luas_selimut+luas_alas);
getch();    
}

11. Penjumlahan dan perkalian(hanya menggunakan operator +)

#include <iostream.h>
#include <conio.h>

int tambah (int a,int b) {
  int x;
  x=a+b;
  return x;
}

int kali (int a,int b){
  int y;
  for (int i=1; i<=b; i++) {
  y=y+a;
}
  return y;
}
void main (){
  int a,b,x,y;

  cout<<"nilai a : ";
  cin>>a;
  cout<<"nilai b : ";
  cin>>b;
  x=tambah(a,b);
  cout<<"hasil tambah : "<<x<<endl;
  y=kali(a,b);
  cout<<"hasil kali : "<<y<<endl;

getch ();  
}

12. Menghitung luas persegi dan luas segitiga switch case

#include <iostream.h>
#include <conio.h>

int segitiga (int alas, int t) {
    int LS;
    LS=0.5*alas*t;
    return LS;
}

int persegi (int s){
    int LP;
    LP=s*s;
    return LP;
}

void main () {
    int a;
    float lagi, LP,LS,s,alas,t;
    clrscr();

    cout<<" 1. Menghitung Luas Persegi."<<endl;
    cout<<" 2. Menghitung Luas Segitiga."<<endl;

    cout<<"masukan pilihan : ";cin>>a;

switch (a){
    case 1: cout<<"masukan sisi ";
    cin>>s;
    LP=persegi(s);
    cout<<"luas persegi adalah "<<LP;
    break;
    case 2: cout<<"Masukkan alas ";
    cin>>alas;
    cout<<"Masukkan tinggi ";
    cin>>t;

   LS=segitiga (alas,t);
   cout<<"Luas segitiga adalah "<<LS;
   break;
}

getch ();
}

13. Matriks ordo 2x2, transpose dan jumlahnya

#include <conio.h>
#include <iostream.h>

void main(){
    int A[2][2], B[2][2], C[2][2];

    cout<<"Masukan Matriks A\n"<<endl;
    for(int i=0;i<2;i++)
    {
       for(int j=0;j<2;j++)
       {
          cout<<"A["<<i<<"]["<<j<<"]: ";
          cin>>A[i][j];
       }
    }
   cout<<"\n\n";

   cout<<"Matriks\n";
   for(int i=0;i<2;i++)
   {
      for(int j=0;j<2;j++)
      {
         cout<<" "<<A[i][j];
      }
      cout<<"\n"<<endl;
   }

    cout<<"transpose matrik"<<endl;
    for(int i=0;i<2;i++)
    {
       for(int j=0;j<2;j++)
       {
           B[j][i]=A[i][j];
       }
    }
    for(int i=0;i<2;i++)
    {
       for(int j=0;j<2;j++)
       {
            cout<<" "<<B[i][j];
       }
         cout<<"\n"<<endl;
    }

 cout<<"jumlah A + B : "<<endl;
 for(int i=0;i<2;i++)
    {
       for(int j=0;j<2;j++)
       {
            C[i][j]=B[i][j]+A[i][j];
       }
    }

 for(int i=0;i<2;i++)
    {
       for(int j=0;j<2;j++)
       {
            cout<<" "<<C[i][j];
       }
         cout<<"\n"<<endl;
    }

getch();
}

14. Mencari nilai mean (rata-rata) dalam array satu dimensi (panjang array 5).

#include <iostream.h>
#include <conio.h>
#define n 5

void data(float a[n]){
   for(int i=0;i<n;i++){
    cout<<"data ke "<<i<<" : ";
     cin>>a[i];
   }
}
float meandata(float a[n]){
    float d=0;
    for(int i=0;i<n;i++){
    d+=a[i];
   }
   return d/n;
}
void main(){
   float a[n], mean,tampil;
   data(a);
 
   mean=meandata(a);
   cout<<endl;
   cout<<"Mean \t: "<<mean<<endl;

getch();
}

15 . Membuat dan menulis data ke dalam dua file

#include <iostream.h>
#include <fstream.h>
#include <conio.h>

void main () {

char nama [20];
char nim [20];
int jumlah;
     char dosen [20];
     char mk [20];
     int jum;

     cout<<"masukan jumlah mahasiswa :";
     cin>>jumlah;
   cout<<"masukan jumlah DOSEN :";
     cin>>jum;

     ofstream save;
     save.open ("mahasiswa.txt", ios::app);
     for (int i=1; i<=jumlah; i++){
     cout<<"Nama :";
   cin>>nama;
     save<<"NAMA :"<<nama<<endl;

     cout<<"Nim :";
   cin>>nim;
     save<<"NIM :"<<nim<<endl;
   }
   save.close();

     save.open ("dosen.txt", ios::app);
     for (int i=1; i<=jum; i++){
     cout<<"NAMA DOSEN :";
     cin>>dosen;
     save<<"NAMA DOSEN :"<<dosen<<endl;

     cout<<"MK :";
     cin>>mk;
     save<<"MK :"<<mk<<endl;
       }
   save.close();
}

16. Membuat struct secara dinamis

#include<conio.h>
#include<iostream.h>

struct mahasiswa{
  char nim[15];
  char nama[30];
  char alamat[50];
};

void main(){
   mahasiswa mhs;
   cout<<"Nama   : "; cin>>mhs.nama;
   cout<<"Nim    : "; cin>>mhs.nim;
   cout<<"Alamat : "; cin>>mhs.alamat;

   cout<<endl<<endl;

   cout<<"Nim Anda    : "<<mhs.nim<<endl;
   cout<<"Nama Anda   : "<<mhs.nama<<endl;
   cout<<"Alamat Anda : "<<mhs.alamat<<endl;

getch(); }

Semoga bermanfaat gan….

Tidak ada komentar:

Posting Komentar