Monday, September 10, 2012

Rangkuman Pertemuan Pertama


1.       Parameter nilai
#include<iostream.h>

int Abc(int a, int b, int c)
{
   return a+b+b*c+(a+b-c)/(a+b)+4;
}

void main(void)
{
   cout << Abc(2,3,4) << endl;
}
mempertimbangkan fungsi cpp abc (program 1.1). fungsi ini menghitung rumus yang a + b *c untuk kasus ketika a,b dan c adalah bilangan bulat,hasilnya juga bilangan bulat.
dalam program 1.1 abdan c adalah parameter formal abc fungsiSetiap tipe integerjika fungsi dipanggil oleh pernyataan.


2.      Fungsi Template
Program 1.2
#include<iostream.h>

float Abc(float a, float b, float c)
{
   return a+b+b*c+(a+b-c)/(a+b)+4;
}

void main(void)
{
   cout << Abc(2,3,4) << endl;
}
4.      Cost Reference Parameter

#include<iostream.h>

template<class T>
T Abc(const T& a, const T& b,
         const T& c)
{
   return a+b+b*c+(a+b-c)/(a+b)+4;
}

void main(void)
{
   cout << Abc(2,3,4) << endl;
}
#include<iostream.h>

template<class Ta, class Tb, class Tc>
Ta Abc(const Ta& a, const Tb& b, const Tc& c)
{
   return a+b+b*c+(a+b-c)/(a+b)+4;
}

void main(void)
{
   cout << Abc(2,3,4) << endl;
}

ALOKASI MEMORI DINAMIS
Deklarasi :
Int * y;
Sebenarnya :
y =new int;
Variabel y merujuk pointer ke integer dan *y merujuk ke integer.
*y = 10;
kita bisa menggabungkan tiga langkah menyatakan ymengalokasikan memori,dan memberikan nilai pada * y-ke sejumlah kecil langkah seperti yang ditunjukkandalam contoh berikut:

ARRAY SATU DIMENSI DINAMIS
float *x = new float [n];
Elemen array diberi alamat dengan penulisan x[0], x[1], …, x[n-1].


PENANGANAN PERKECUALIAN
Apa yang terjadi dengan pernyataan :
float *x = new float [n];
ketika dieksekusi komputer dan ternyata memori tidak tersedia untuk n bilangan floating point ?

float *x;
try { x = new float [n]; }
catch (xalloc) {
cerr << “Out of Memory” << endl;
exit(1);  }

OPERATOR DELETE
Pernyataan :
                        delete y;           // variabel biasa
                        delete [ ] x;      // variabel array
akan membebaskan memori yang dialokasikan oleh *y dan array satu dimensi x.

METHOD (FUNCTION)
return-type method-name(para1, para2, . . .) {
. . .
body-of-the-method;
. . .
}
Contoh :
double jumlah_kuadrat(int x, int y) {
            return x*x + y*y;
}

METHOD OVEROADING
}  int max( int a, int b, int c )
}  int max( int a, int b)
}  int max( float a, float b, float c)
}  int max( float a, float b)

Thursday, July 5, 2012

Mencari Nilai Maximum dan Minimum dari Nilai yang diinputkan

Mencari Mean dari Beberapa Nilai yang Diinputkan

Mencari Median Dari Nilai yang Diinputkan

Sorting Rekursif


Penjumlahan matriks berordo 3x3


Refleksi Minggu Ke-14 Alpro

Minggu terakhir hanya berisi kroscek nilai bonus, dan ngobrol-ngobrol dengan dosen. Enaknya kalau kuliah gini terus #eh hahhahhaha . Minggu ini lebih ke sharing setelah lulus mau jadi apa, jadi apa ya, dosen sepertinya , pengennya designer web, tapi harus nengok ke kemampuan diri sendiri dulu deh .__.

Refleksi Minggu Ke-13 Alpro

I was sick huhuhuhuhu , materi hari itu adalah pointer, jadi masih sangat belum mengerti sekali *lebay tentang pointer, harus mengejar ketinggalan sepertinya T.T

Refleksi Minggu Ke-12 Alpro

Perkuliahan minggu ini mengulang minggu sebelumnya, ya karena ada mahasiswa yang tidak mengikuti perkuliahan kelas lain, sehingga perlu diulang. Jadi , ya alhamdulliah dapet ilmu lebih cepet dari teman-teman, sehingga tidak terlalu sulit lagii sewaktu latihan :)

Refleksi Minggu Ke-11 Alpro

Minggu ke-11 ini cukup unik, hehe. Mahasiswa yang ikut perkuliahan hanya 1 orang karena sedikit trouble diantara mahasiswa kelas D dengan dosen hihi. Tetapi yang tidak ikut diperbolehkan mengikuti kuliah dengan kelas lain, dan materinya tentang array dua dimensi. Tentang perkalian sesama array dua dimensi dan dengan vektor/1dimensi. pertamanya sedikit bingung, tapi tapi akhirnya bisa mengerti setelah diulang2 hihihi maklum nah lola ni --v

Refleksi Minggu Ke-10 Alpro

Materi ke-10 adalah searching, metode pencarian. Misalnya pencarian angka 28 dalam sederet inputan angka yang telah ditentukan, dengan beberapa jeniis metode searching yang ada. Pemahaman tentang materi disini sudah cukup lancar, hanya memang coding dalam programnya yang harus banyak latihan lagi :)

Refleksi Minggu Ke-9 Alpro

Sorting???? pasti sudah nggak asing dengan sorting, metode dalam pengurutan. Ada 3 metode yang diajarkan selama perkuliahan, dan semuanya alhamdulliah sudah bisa dipahami, tinggal pengaplikasiannya dalam bentuk program saja yang masih perlu latihan :)

Saturday, May 19, 2012

Refleksi Minggu Ke-8 Alpro

Wohooo kenapa tiba2 langsung ke-9, bukannya terakhir minggu ke-7 ya? yap, minggu ke-8 nya diskip hihi karena pak dosen sedang umroh, sehingga serempak minggu ke-8 diliburkan mulai kelas A sampai kelas D :)
Minggu ini membahas tentang soal uts, huks yang nilainya rata2 lumayan ancur huahahah. Yang paling paling aku sesali ada soal no.4 yang sebetulnya aku sudah bener jawabnya, tetapi ternyata masih kurang, dan yang poin b malah aku ganti, aaa *tepok jidat :(
Ini nih :
Modifikasi Algoritma
Di bawah ini adalah flowchart yang dimaksudkan untuk menghitung nilai a dibagi b. Isilah tabel
berikut seperlunya sesuai dengan flowchart.
a. Untuk nilai a = 12 dan b = 3

Tuesday, April 17, 2012

Program Membalik Kata

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

class Balik{
       friend istream& operator>>(istream&, Balik&);
       friend ostream& operator<<(ostream&, Balik&);
       public:
             void balik_kata();
             void balik(int s);
       private:
               char kata[50];
               int n;
};

void Balik::balik_kata(){//iteratif
     cout<<"Masukkan Kata Yang Akan Dibalik : ";
     cin>>kata;n=strlen(kata);
     cout<<"Kata Setelah Dibalik : ";
     balik(n);
     cout<<endl;
}

void Balik::balik(int s){//rekursif
     if (s != -1){
            cout<<kata[s];
            balik(s-1);
            }
            }

int main()
{
 Balik X;
 X.balik_kata();
 X.balik(1);

  getch();
}

Monday, April 16, 2012

Array

Sedikit share yah tentang array ;)) . Array adalah struktur data yang mengandung type data yang mempunyai tipe yang sama. Suatu array merupakan sekelompok memori yan berhubungan. Array mempunyai nama dan tipe yang sama. Untuk merujuk lokasi tertentu atau elemen dalam array, nama arra dan angka posisi dari elemn tersebut dalam array. Deklarasi array ditentukan dengan tipe dari setiap elemen dan banyaknya elemen yang diperlukan oleh setiap array sehingga komputer mempersiapkan sejumlah memori.
Deklarasi adalah sebaai berikut :
Algoritmik  :
c: Array [1..5] of integer
Bahasa C++ :
int c[5]
ini berarti memberitahu komputer untuk menyediakan 5 elemen integer array c. Array bisa saja dideklarasikan untuk berisi tipe data yan lain. Sebaai contoh, array tipe char dapat digunakan untuk menyimpan string karakter.

Flowchart Membalik Kata yang Diinputkan

Rekursif :


 Iteratif :

Konversi Dari Desimal Ke Biner

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


class Biner{
      friend istream& operator>>(istream&, Biner&);
      friend ostream& operator<<(ostream&, Biner&);
    
      public:
      Biner();     
      void masukan();
      void proses();
      void keluar();
      private:
      int data[100],l,a;      
      };
      Biner::Biner(){
       cout<<"program mengkonversi bilangan desimal ke biner"<<endl;
       }
       istream& operator>>(istream& in, Biner& masukan){            
           cout<<"masukan angka:";
           in>>masukan.a;
           }
      void Biner::proses(){
           int i;
           i=0;l=0;
           while(a!=1){
                       data[i]=a%2;
                       a=a/2;i=i+1;l=l+1;
                       }
                       }
     void Biner::keluar(){
          cout<<"hasil biner adalah :"<<1;
          for(int i=l-1;i>=0;i--){
                  cout<<data[i];}
                  }
                
     int main(){
         Biner x;
         cin>>x;
         x.proses();
         x.keluar();
                
getch();
}

Program Mencetak Bilangan yang Habis Dibagi 5 dan 7 Dari 1 - 100 (Rekursif Iteratif)

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

class Bagi{
      friend istream& operator>>(istream&, Bagi &);
      friend ostream& operator<<(ostream&, Bagi&);
      public:
       Bagi();
       void proses();
       int bagi(int a);
       private:
       int a;
       };

Bagi::Bagi(){
cout<<"Menampilkan bilangan yang habis dibagi 5 dan 7 antara 1 sampai 100"<<endl;
             }
//iteratif
void Bagi::proses(){
a =1;
while (!(a>100)){
if (a % 5==0 && a % 7==0){
cout << a << endl;
}else{}
a =a+1;
}
}
//rekursif
int Bagi::bagi (int a){
if (a>100){
}else
{
if (a % 5==0 && a % 7==0)
{
cout << a << endl;      }
else
{}bagi(a+1);
}}

int main(){

    Bagi X;
    X.proses();
    X.bagi(1);

getch();
}

Flowchart Mencetak Bilangan yang Habis Dibagi 5 dan 7 Dari 1 - 100

Rekursif :


 Iteratif :

Program Menhitung Suku Ke-n Dari Deret Fibonacci (Rekursif)

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

class Operator{
      friend ostream& operator<<(ostream&, Operator&);
      friend istream& operator>>(istream&, Operator&);

public:
       long fibonacci(int);

private:
        int n;
};

int fibonacci (int n){
    if((n==1) || (n==2))return (1);
    else return (fibonacci(n-1)+fibonacci(n-2));
}
ostream& operator<<(ostream& out, Operator& a)
{ for (int i=1;i<=a.n;i++)
out<<fibonacci(i)<<"";
return out;
}

istream& operator>>(istream& in, Operator& a){
cout<<"sampai suku ke- ";
in>>a.n;
return in;
}

main()
{
      Operator run;
      cin>>run;
      cout<<run;
    getch();
}

Friday, April 13, 2012

Penggunaan Class Dalam Menentukan Nilai Terbesar Dari Dua Bilangan Bulat

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

class data {
      public:
      int a,b;
     
      public:
      data();
      void tukar();
      void cetak();
      int maks2(int a, int b);
      void jalankan();
      };
data::data(){
a=100;
b=50;
}
int data::maks2(int a,int b){
    if(a>b)return(a);
    else return (b);
}

main(){
     data angka;
     angka.jalankan();
     }
    
void data ::jalankan(){
cout<<"masukkan dua bil integer"<<endl;
cout<<"masukkan bil pertama :";
cin>>a;
cout<<"masukkan bil kedua:";
cin>>b;
cout<<"nilai terbesar: "<<maks2(a,b);

getch();
}

Program C++ Menentukan Nilai Terbesar Dari Dua Bilangan yang Diinputkan

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

int main()
{  
   int a;
   int b;

   cout << "masukkan dua angka" << endl; 
   cout<<"angka 1:";
   cin >> a;
   cout<<"angka2:";
   cin >> b;
   cout << "nilai terbesar :" << endl;  
   if (a>b)
   {
      cout << a << endl;   }
   else
   {
      cout << b << endl;   }

   getch();
}

Fungsi Menentukan Nilai Terbesar Dari Dua Bilangan yang Diinputkan

Main :

Jalankan0 :
Maksimum2() :

Program Menukar Nilai Dua Variabel

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

using namespace std;
int main()
{
   int temp,a,b;

   a =100;
   b =50;
   cout << "isi nilai :"<<a << endl; 
   cout << "isi nilai2 :"<<b << endl;  
   temp =a;
   a =b;
   b =temp;
   cout << "sesudah tertukar" << endl;  
   cout << "isinilai = "<<a << endl;  
   cout << "isinilai = "<<b << endl;
   getch();
}

Flowchart Menukar Nilai Dua Variabel

Flowchart main :

Flowchart tukar0 :

Flowchart Menunjukkan Fungsi Untuk Menghasilkan Nilai X (pankat) Y

Program C++ Menghitung Nilai X(pangkat)Y dengan X Bilangan Real dan Y Bilangan Bulat

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

using namespace std;

class Pangkat{
friend istream& operator>>(istream&, Pangkat&);

public:
Pangkat();
int proses(int x, int y);
int output();
private:
int x,y,i;
int hasil;
};
Pangkat::Pangkat(){
cout<<"Mencari X pangkat Y "<<endl;
}

istream& operator>>(istream& in, Pangkat& masukan){
cout<<"Masukan x : ";
in>>masukan.x;
cout<<"Masukan y : ";
in>>masukan.y;
}

int Pangkat::proses(int x,int y){
if (y==1)
return x;
else if (y==0)
return 1;
else
return x*proses(x,y-1);
}

int Pangkat::output(){
hasil = proses(x,y);
cout<<"Maka hasilnya adalah : "<<hasil;
return hasil;
}

int main()
{
Pangkat X;
cin>>X;
X.output();
cout<<endl<<endl;

getch();
}

Program C++ Menentukan Bangun Persegi atau Persegi Panjang

#include 
#include 

class beda {
      friend istream& operator>>(istream&, beda&);
      
public :
       beda(){};       
       void bedakan(){
       if (p==l)
       cout<<"persegi";
       else 
       cout<<"persegi panjang";
       }
private :
        int p, l;

};


istream& operator>>(istream& in, beda& masukan){
cout<<"masukkan panjang = ";
in>>masukan.p;
cout<<"masukkan lebar = ";
in>>masukan.l;
return in;
}


main (){
     beda masukan;
     cin>>masukan;
     masukan.bedakan();
     getch();

}

Flowchart Menentukan Bangun Persegi atau Persegi Panjang


Contoh diinputkan panjang : 3 dan lebar : 5 maka outputnya :

Thursday, April 12, 2012

Program C++ Menghitung Jarak Antara Dua Titik

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

using namespace std;
int main()
{

   double x1,y1,a, b,x2, y2;

   cout<<"masukkan x1 = ";
   cin >> x1;
   cout<<"masukkan x2 =";
   cin >> x2;
   cout<<"masukkan y1=";
   cin >> y1;
   cout<<"masukkan y2=";
   cin >> y2;
   a =(x1+x2)/2;
   b =(y1+y2)/2;
   cout << "nilai dari garis x ="<<a << endl;  
   cout << "nilai dari garis y = "<<b << endl;
   getch();
}

Flowchart Menhitung Jarak antara Dua Titik

Misalnya x1= 2 , x2=4, y1=6, y2=8, maka jarak antara dua titik A(2,6) dan B(4,8) adalah :

Program C++ Menentukan Tahun Kabisat atau Bukan

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

using namespace std;
int main()
{
   int t;

   cout<<"masukkan tahun =";
   cin >> t;
   if (t % 4==0)
   {
      cout << "tahun kabisat" << endl;   }
   else
   {
      cout << "bukan tahun kabisat" << endl;   }

   getch();
}

Flowchart Menentukan Tahun Kabisat atau Bukan

 Contoh, tahun yang diinputkan adalah 2000 maka hasilnya :

Program Konversi Bilangan (1 - 11) Menjadi Kalimat

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

class konversi{
           friend istream& operator>>(istream&, konversi&);
public:
       konversi(unsigned int b=0){bilangan=b;};
       void membilang();
private:
unsigned int bilangan;
};

istream& operator>>(istream& in, konversi& x){
cout<<"masukkan bilangan:";
in>>x.bilangan;
return in;
}

void konversi::membilang(){
     switch (bilangan){
     case 0:cout<<"nol";break;
     case 1:cout<<"satu";break;
     case 2:cout<<"dua";break;
     case 3:cout<<"tiga";break;
     case 4:cout<<"empat";break;
     case 5:cout<<"lima";break;
     case 6:cout<<"enam";break;
     case 7:cout<<"tujuh";break;
     case 8:cout<<"delapan";break;
     case 9:cout<<"sembilan";break;
     case 10:cout<<"sepuluh";break;
     case 11:cout<<"sebelas";break;
    default:cout<<"di luar range"<<endl;
    }}

main(){
       konversi a;
       cin>>a;
       a.membilang();
getch();
}

Flowchart Menghitung Luas Permukaan dan Volume Kubus

Ini flowchart dari program c++ yang menggunakan operator overloading dari perhitungan luas permukaan dan volume kubus yang sudah saya posting beberapa hari lalu, cek it :)



Misal, nilai yang diinputkan 8, maka outputnya :

Program C++ Penjumlahan Tiga Bilangan Integer Menggunakan Operator Overloading

Pengunaan operator overloading pada penjumlahan tiga bilangan integer :

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

using namespace std;
class Hitung{
      friend ostream& operator<<(ostream&, Hitung&);
      friend istream& operator>>(istream&, Hitung&);
public:
       Hitung();
       void hitung_jumlahnya(){jumlah =(a+b+c);}
private:
int a,b,c;
int jumlah;
};

Hitung::Hitung(){
cout<<"program menghitung jumlah 3 integer"<<endl;
}

istream& operator>>(istream& in, Hitung& masukan){
cout<<"masukkan nilai a:";
in>>masukan.a;
cout<<"masukkan nilai b:";
in>>masukan.b;
cout<<"masukan nilai c:";
in>>masukan.c;
return in;
}
ostream& operator<<(ostream& out, Hitung& keluaran){
out<<"nilai a:"<<keluaran.a<<endl;
out<<"nilai b:"<<keluaran.b<<endl;
out<<"nilai c:"<<keluaran.c<<endl;
out<<"jumlah : "<<keluaran.jumlah<<endl;
return out;
}

main(){
       Hitung X;
       cin>>X;
       X.hitung_jumlahnya();
       cout<<X;
       getch();
      
              }

Tuesday, April 10, 2012

Refleksi Minggu Ke-7 Alpro

Array !!! lupa-lupa ingat tentang materi ini hahaha, padahal baru semester 1 kemaren *tepok jidat* . Dari perkuliahan alpro minggu ini menghasilkan contoh dari array :D :
input : seseorang melihat kalender untuk mencari tahu, pada tanggal x jatuh pada hari apa.
proses : (misalnya) mencari tanggal 9 April itu hari apa. Kemudian melihat kalender April kolom 1 baris ke-3
output : pada tanggal 9 April merupakan hari Senin.
Dalam menentukan contoh ini tidak terlalu sulit, tapi ketika pengaplikasian pada c++ itu banyak menemui kesulitan. Jujur sih, semester satu lalu belum paham bener tentang bab ini, terutama masalah2 yang lebih kompleks. Kurang latihan pasti ya huhu -____-
Quote : Latihan latihan latihan ~ Tekun dapat mengalahkan orang yang pintar :)

Refleksi Minggu Ke-6

Games??? yeeeaaa minggu ini ada games, yang mungkin sempet nggak mau ikutan karena takut ahihihi, seperti kuis komunikata, maklum ingatanku level rendah -____- . Tapi dengan games ini, sedikit lebih mengerti tentang materi yang diterangkan. Sedikit? ya sedikit, seperti sebelumnya odongnya kumat wuahahaha, nggak tau ini ada nggak sih obat yang bisa nyepetin pemahamanku tentang materi alpro ini. Aduh malah bahas apa ini, haha.
Jujur, sebenernya masih bingung penggunaan rekursi pada raptor, alias pada flowchartnya. Sebatas tau rekursi itu tidak menggunakan for, while, repeat until, tapi cara penerapannya di raptor gimana, bingung lagi :'( . Sepertinya perlu mentoring tentang ini deh huhu (sampai ketemu kembali mas mentor #eh ).
Quote : Jangan membiarkan masalahmu menumpuk, selesaikan :) 

Saturday, March 31, 2012

Pertemuan Ke-5 Alpro

Pertemuan ke-5? tidak ada presentasi, hehe cukup lega, karena memang materi itu sulit, belom ngerti2 sampe sekarang, fuhhh . Coba tanya teman sana sini, sama aja we laaaah >.< . Pengen tanya ke mentor, tapi dia masih sibuk dan masih harus mengurus observasi untuk tugas.
Dalam pertemuan kali ini, kami diminta mereview kasus dari pertemuan pertama sampai keempat, memang kelompok kami masih ada yang kurang, tetapi dapat diselesaikan dalam waktu itu juga. Kelompok kami juga mendapat kasus 5.3 tentang pangkat logaritma, sempet sidikit bingung mencari exp dalam raptor, maklum masih newbie :)) . Sampai salah satu dari kelompok kami diprivat di depan, buihihihi . Tapi nggak sia-sia, akhirnya jadiiiiii \(^.^)/ , Hasilnya di postingan selanjutnya yah :) .
Untuk petemuan selanjutnya harus lebih siap lagi nih sepertinya *harus* :D
Quote : Persiapan maksimal hasil maksimal :)

Sunday, March 25, 2012

Menghitung Volume dan Luas Permukaan Kubus Menggunakan Operator Overloading

Program menggunakan operator overloading sebenernya sedikit membingungkan -_- . Beberapa kali eror, padahal program yang dibuat sangat simpel yaitu menghitung volume dan kuas permukaan kubus. Tetapi setelah dicoba-coba, taraaaaaa berhasil :p .
#include <conio.h>
#include <iostream.h>

class hitung {
      friend ostream& operator<<(ostream&, const hitung&);
      friend istream& operator>>(istream&, hitung&);
     
public :
       hitung();
       void hitung_v(){v=(s*s*s);}
       void hitung_lp(){lp=(6*s*s);}
      
private :
        double s,v,lp;
};

hitung::hitung(){
cout<<"Program menghitung volume dan luas kubus"<<endl;
}

istream& operator>>(istream& in, hitung& masukan){
cout<<"masukkan s = ";
in>>masukan.s;
return in;
}

ostream& operator<<(ostream& out, const hitung& keluaran){
out<<"volume = "<<keluaran.v<<endl;
out<<"luas permukaan = "<<keluaran.lp<<endl;
return out;
}

main (){
     hitung x;
     cin>>x;
     x.hitung_v();
     x.hitung_lp();
     cout<<x;
    
getch();
}

Mau tau flowchartnya? mudah kok :) nih :

Mencari "n" Faktorial

Flowchart mencari n faktorial :
 Misal ingin mencari faktorial dari 5, maka hasilnya :

Menghitung Rata-Rata

Flowchart menghitung rata-rata dari beberapa nilai yang dimasukkan :
 Misalkan ada 4 data yang dimasukkan yaitu : 7,8,6,dan 7 maka hasilnya :

Mengkonversikan Angka Menjadi Nilai Huruf

Sebelum mengkonversikan angka menjadi huruf, terlebih dahulu menentukan deskripsi bahwa :
Jika - (n> 0) dan ( n<=20) maka n_huruf : E
       - (n> 20) dan (n<=40) maka n_huruf : D
       - (n>40) dan (n<=60) maka n_huruf : C
       - (n>60) dan (n<=80) maka n_huruf : B
       - selain itu n_huruf : A
Kemudian flowchartnya :
Misalkan, input n = 70 maka hasilnya :

Mencari Nilai Maksimum

Flowchart mencari nilai maksimum dari tiga bilangan yang diinputkan adalah sebagai berikut :
kemudian dimisalkan x = 3 , y =7 , dan z=5 maka outputnya :

Thursday, March 22, 2012

Refleksi Minggu ke-4 Alpro

Minggu ini membicarakan looping alias perulangan. Tidak kita sadari, di dunia ini kita melakukan banyak perulangan, contohnya melangkah waktu kita berjalan, sederhana tapi kadang luput dari perhatian :)). Pertama menggunakan loop pada raptor sempet membuat bingung, bagaimana cara mengisi condition. Ditambah 2 orang bertugas sebagai observer, kemudian yang satu tidak masuk, tinggal 3 orang yang di dalam kelas, sempet panik kasus yang harus dikerjakan tidak berhasil diselesaikan. Tetapi, setelah dicoba-coba, akhirnya berhasil, dan kelompok kami dapat presentasi. Mungkin untuk pertemuan selanjutnya lebih mendalam penjelasan dari kasus-kasus yang lebih rumit, karena ya memang tingkat kesulitan setiap kasus itu beda-beda.
Quote : Hal sederhana dalam kehidupan kadang punya andil besar :)

Sunday, March 18, 2012

Refleksi Minggu Ke-3 Alpro

Pertemuan ketiga?? hmmm langsung aja , terlalu tergesa-gesa, dan apapun yang tergesa2 hasilnya juga kurang baik. Itu menurutku sih, mungkin bisa ya, menunggu sampe satu kelas itu bener2 paham tentang materi yang diberikan. Buat apa materi yang disuguhkan banyak tapi gak ada satupun yang "nyantol" . Mending sedikit2 tapi semuanya paham. Ya, memang pemahaman seseorang kan beda-beda, apalagi kelas D kelas dapet giliran hari Senin, hari pertama, di mana sampai saat ini saja skenario belum ada buat perkuliahan minggu ke-4 besok kan? enak yang dapet giliran terakhir, jelas punya waktu lebih banyak. Kemarin sempet mau mentoring dengan asisten tapi terbentur jadwal kedua belah pihak yang tidak dapat bertemu, sedangkan masih ada tugas-tugas lain yang melambai-lambai untuk segera dikerjakan. Sekedar kritik, karena karakter orang beda2 karakter setiap kelas pun berbeda.
Quote : Belajar itu tidak perlu banyak, tapi pastikan sudah tercerna di dalam otak :)

Sunday, March 11, 2012

Menghitung Determinan Matriks Berordo 2x2

Flowchart perhitungan determinan matriks berordo 2x2 menggunnakan raptor dapat dilihat sebagai berikut :

Saya misalkan susunan matrik adalah sebagai berikut :
a   c
b   d
contoh :

Mencari Titik Tengah Sebuah Garis

Flowchart dalam mencari titik tengah sebuah garis yang ujung titiknya adalah A(x1,x2) dan B(y1,y2) :
sebagai contoh :

Memisahkan Bilangan Integer (< 1000) Menjadi Komponen-komponennya

Memisahkan bilangan integer menjadi komponen-komponennya di sini contohnya bilangan 135 itu terdiri dari :
1 ratusan
3 puluhan
5 satuan
Flowchartnya adalah sebagai berikut :


Kemudian setelah di run :

Saturday, March 10, 2012

Refleksi Ke-2 Alpro

Pertemuan ke-2 alpro? oke .jujur baru sedikit membaca materi :D . Karena memakai bahasa inggris, dan setelah memakai bantuan google translate pun masih belum paham -_-. Parah banget ya aku hihi. Menit-menit awal masih diterangkan apa itu sekuen. Seingetku sekuen merupakan sederetan pernyataan yang urutan dan eksekusinya runtut, jika urutannya dibalik maka maknanya akan berbeda.
Pembelajarannya kemudian dilanjutkan dengan pembagian kelompok. Dua kelompok TP bergabung menjadi satu. Sehingga setiap kelompok menjadi 6 orang. Kelompokku mendapat kasus 2.3 yaitu mengkonversikan dari meter ke centimeter dan inchi menggunakan Raptor. Contoh : 1 meter = 100 cm . Sebenarnya kelompok kami benar-benar belom siap, raptor saja instalnya baru hari itu juga, dan diantara kami belum ada yang paham benar tentang penggunaan raptor. Tapi setelah dicoba akhirnya bisa :) dan inilah hasilnya :


Kemudian setelah di execute :

Saturday, March 3, 2012

Algoritma Pengambilan Uang di ATM

Hasil diskusi kelompok kami :
-start
-ambil kartu ATM
-masukkan kartu ATM
-masukkan pin >> cek saldo
-periksa pin >> jika pin salah kembali masukkan PIN
-input nominal uang x
-cek saldo >> jika tidak cukup kembali input nominal uang
-ambil uang
-stop

Thursday, March 1, 2012

Pertemuan Pertama Alpro

Alpro? Apa itu alpro? alpro singkatan dari algoritma pemrograman yang merupakan mata kuliah yang katanya "mengerikan". Tapi, apa benar mengerikan? aku juga belom tau, masih pertemuan pertama, semoga seseram apapun nggak membuat semangat down yah :D .

Sebelum memasuki semester dua, sudah banyak isu, gosip, atau mungkin malah fakta yang menyebutkan alpro itu susah, dosennya galak, nggak enak (emang makanan? *eh ) dan sebagainya. Sumber yang menyatakan itu adalah kakak tingkat sendiri. Pasti para adek tingkat ini (aku dan teman-teman) udah takut, senewen, setres sebelum menghadapinya. Apalagi kelas D yang kebetulan kelasku dapat giliran pada setiap hari Senin jam 7, sudah tidak perlu diragukan status di jejaring sosial membahas tentang hal ini, entah yang semangat (semangat beneran nggak tuh? ) , down, atau malah setengah2.

Tiba di hari Senin 27 Februari 2012 pukul 07.00 , baru sebagian siswa yang stand by di kelas, dosen masuk. Terlihat wajah-wajah yang tegang hahaha termasuk aku. Tapi, Pak Wahyu Pujiyono memulai perkuliahan yang cukup membuat rileks. Sedikit review, algoritma merupakan prosedur untuk memecahkan suatu masalah. Misalnya, ketikan seseorang perlu sarapan di pagi hari, maka apa yang perlu dilakukan? ya jelas makan lah :D. Tapi bagaimana cara mendapatkan makanan itu tentu ada proses didalamnya,

Saturday, February 4, 2012

Kutipan Film

Iseng-iseng selama 2 minggu kemarin, mencari kutipan-kutipan di twitter yang pas buat menyemangati diri sendiri. Maklum lah, galau uas hihi, ditambah masalah lain yang menambah "ngenes" keadaan :((
Udah udah, daripada semakin lebay cuss aja ya ....

Happiness can be found in the darkest of times, If only you remember to turn on the light (Harry Potter)

Give me some sunshine. Give me some rain. Give me another chance. I wanna grow up once again (3 idiots)

Raih mimpimu, kejarlah citamu, jangan pernah menyerah untuk menjadi yang terbaik (KING)

Life is about the journey, not the destination (Step Up 3D)

Jadilah dirimu sendiri saja (Catwoman)

Friday, January 20, 2012

Twitter Client Untuk Desktop

Twitter? Kata yang sudah tidak asing di telinga. Dulu mungkin saya termasuk facebooker, tetapi setelah menggunakan twitter, saya pindah ke lain hati hihi. Walaupun sebenernya kurang lebih satu tahun pertama belom bisa menggunakan twitter =)) .Pertama kali tentu saya menggunakan web kalau bermain twitter, tapi kemudian menemukan kesulitan dalam "quote" tweet user lain. Dan tidak sengaja, saya melihat teman (kakak tingkat sebenernya :D) menggunakan seesmic. Setelah itu, saya mencoba menggunakannya dan mencari aplikasi-aplikasi lain yang dapat dingunakan untuk twitter juga (mencari yang nyaman untuk digunakan ^^).

Di sini saya share twitter client yang sudah saya gunakan (untuk dekstop), maaf sebelumnya jika penilaiannya terlalu subjektif ;))

SEESMIC
Seesmic  terdiri dari 2 macam, web dan desktop. Tidak sebatas twitter, aplikasi ini juga dapat digunakan untuk facebook dan account lain. Tampilannya dapat diubah sesuai yang diinginkan (background). Seesmic menyediakan fitur twitlonger, bit-ly, apabila user nge-tweet lebih dari 140 karakter. Tidak lupa twitpic, yfrog, untuk mengapload foto. Fitur klout pun juga tersedia untuk mengetahui seberapa berpengaruhnya kalian di twitter. Untuk mendownloadnya dapat mngunjungi https://seesmic.com/ , tetapi sebelumnya akan ada proses mendownload Microsoft Silverlight terlebih dulu. Seesmic compatible dengan Windows dan Mac OS.



Tuesday, January 17, 2012

Penjumlahan Matrik Menggunakan Array Pada C++

Program menghitung jumlah inputan pada matrik dengan menggunakan array dapat dilihat sebagai berikut :
#include <iostream.h>
#include <conio.h>

void masukan(int a[5][5],int b,int c)
{ for(int i=0;i<b;i++)
    for(int j=0;j<c;j++)
    {cout<<"Data ke "<<i<<j<<" = ";
    cin>>a[i][j]; }
}

void jumlah(int a1[][5],int a2[][5],int a3[][5],int b1,int c1)
{  for(int i=0;i<b1;i++)
    for(int j=0;j<c1;j++)
      a3[i][j]=a1[i][j]+a2[i][j];
}

void tampilkan(int a[5][5],int b,int c)
{ for(int i=0;i<b;i++)
   { for(int j=0;j<c;j++)
        cout<<a[i][j]<<"  ";
     cout<<endl;
    }
}

int main() {
 int dt1[5][5],dt2[5][5],dt3[5][5];
 int b1,c1;
 cout<<"Jumlah baris matrik  = ";
 cin>>b1;
 cout<<"Jumlah kolom matrik  = ";
 cin>>c1;
 cout<<"\nMatrik pertama\n";
 masukan(dt1,b1,c1);
 cout<<"\nMatrik kedua\n";
 masukan(dt2,b1,c1);
 jumlah(dt1,dt2,dt3,b1,c1);
 cout<<"\nMatrik pertama\n";
 tampilkan(dt1,b1,c1);
 cout<<"\nMatrik kedua\n";
 tampilkan(dt2,b1,c1);
 cout<<"\nMatrik hasil penjumlahan\n";
 tampilkan(dt3,b1,c1);
 getch();
}
Setelah di compile and run :

Monday, January 16, 2012

Program Bank ABC Menggunakan C++

Ini merupakan program sederhana dalam melakukan beberapa transaksi pada Bank ABC :

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

int main()
{ int mn,sld,setor,tarik;
  char jwb;
 
  sld=50000;
do
{    menu:
    cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~"<<endl;
    cout<<"||      BANK ABC       ||"<<endl;
    cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~"<<endl;
    cout<<"     Saldo : "<<sld<<endl<<endl;
    cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~"<<endl;
    cout<<"||   Menu Transaksi    ||"<<endl;
    cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~"<<endl;
    cout<<"||  1. Setor Tabungan  ||"<<endl;
    cout<<"||  2. Ambil Tabungan  ||"<<endl;
    cout<<"||  3. Keluar          ||"<<endl;
    cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~"<<endl<<endl;
    cout<<"Pilih salah satu menu(1..3): ";
    cin>>mn;

    if(mn==1)
    {   cout<<"Menu Penyetoran"<<endl;
        cout<<"Jumlah Setor : ";
        cin>>setor;
        sld=sld+setor;
        system("cls");
        cout<<"Saldo : "<<sld;
        cout<<endl;           
    }
    else
    if(mn==2)
    {
        cout<<"Jumlah Penarikan : ";
        cin>>tarik;
    {   if (sld-tarik<10000)
    {   system("cls");
        cout<<"Saldo Anda Tidak Mencukupi..."<<endl;
        cout<<"Saldo Minimal 10000..."<<endl;}
        else
        { sld=sld-tarik;
        system("cls");
        cout<<"Saldo : "<<sld;
        cout<<endl;   
        }
        }
        }
    else
    if(mn==3)
    exit(1);
    else
    {    system("cls");
        cout<<"Menu yang anda inputkan tidak ada"<<endl;
        cout<<"Mohon pilih menu yang tersedia"<<endl<<endl;
        goto menu;}
        cout<<"\n\n Kembali ke Menu Utama(Y/T)? : ";
        cin>>jwb;
        cout<<endl<<endl;}
        while(jwb=='Y'||jwb=='y');
        cout<<"**** Terima Kasih ****";
}

Kemudian di compile and run:

String (10 fungsi string)

String merupakan kumpulan dari beberapa karakter. Terdapat fungsi-fungsi di dalamnya seperti strcpy, strlen,strcat,strupr,strlwr,strstr,dan strrev.
Contoh program menggunakan fungsi string adalah sebagai berikut :

#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;

int main(int argc, char *argv[])
{
    char kalimat [30]="saya belajar cpp";
    cout<<kalimat<<endl;
    cin.getline(kalimat,sizeof(kalimat));
    cout<<kalimat<<endl;
    char nama[20]="listy";
    char alamat[20]="Yogyakarta";
    strlen(nama);
    cout<<nama<<endl;
    strcat(nama,alamat);
    cout<<alamat<<endl;
    strupr(alamat);
    cout<<alamat<<endl;
    strlwr(nama);
    cout<<nama<<endl;
    strstr(nama,alamat);
    cout<<alamat<<endl;
    strrev(nama);
    cout<<nama<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}

setelah di compile and run :