Minggu, 03 April 2016

Contoh Program stack dan algoritma


A. Dasar Teori 

Stack adalah sebuah kumpulan data dimana data yang diletakkan di atas data yang lain.
 Denang demikian stack adalah struktur data yang tersusun secara rapi dan elemen tarkhir yang disimpan dalam stack menjadi elemen yang pertama yang akan diambil. Untuk meletakkan elemen pada bagian atas dari stack melakukan perintah pist. Dan untuk memindahkan dari tempat yang atas melakukan perintah pop.
Untuk gambaran dari stack yaitu kita mempunya dua buah kotak yang kita tumpuk, sehingga kotak kedua tidak taroh ditas kotak pertama. Jika kemudian stack dua buh kotak kita tambah dengan kotak ketiga, maka akan membentuk sebuah elemen stack kotak yang terdiri dari beberapa kotak atau N kotak.

A.1 Reprensentasi Stack dengan Array
Dalam stack kita dapat menggukan array untuk menggukan stack,dengan anggapan bahwa banyaknya elemen max dari stack tidak melebuhi batas banyaknya elemen dalam array. Kalau kita menambahkan data terus menerus akan menaykibatkan overflow. Dengan demikian perlu data tambahan untuk menctat ujung stack, dengan keadaan seperti itu kita dapat menyajikan stack dengan tipe data struktur (struct) yang terdiri dari dua field. Field pertama bertipe array yang berguna untuk menyimpan elemen stack dan yang kedua bertipe interger untuk mencatat posisi ujung stack. Deklarasi stack sebagai berikut.
#define MAXSTACK 100
typedef int ItemType;
/* Definisi struktur stack */
typedef struct
{
int Item[MAXSTACK];
/* Array yang berisi data tumpukan
*/
int Count; /* menunjukkan indeks data paling atas dari
stack */
}Stack;


B. PROGRAM

Sources code program stack

 

Output program


C. Penjelasan program 

#include<stdio.h>
#include<string.h>
#include<conio.h>
#define MAX_toko 10
Program diatas menggukan 3 file heder diantaranya stdio.h yaitu header standar input output untuk menambahkan fungsi-fungsi printf(), scanf() dll dan header conio.h menpilkan hasil antarmukakepada pengguna fungsi-fungsi getch(),getche(),dll hedear string.h yaitu untuk melakukan manipulasi string fungsi-fungsi yang ditampilkan  strcpy() dll. Define MAX_toko 10 berfungsi mendefinisikan suatu konstanta yang nantinya akan digantikan oleh prosesor saat program di-compiler dan bernilai max 10  untuk banyaknya karakter.

typedef struct stack{
    int atas;
    char data[10][10];
};
Sintak diatas yaitu berfungsi untuk medefinisikan struk untuk int atas” yaitu array yang berisi data tumpukan. Dan char data [10][10] yaitu jumlah data yang tersimpan di var data maksimal jumlah setiap data 10
stack tumpuk;
void inisialisasi(){
    tumpuk.atas=-1;
}
Sintak diatas yaitu inisialisasi dari array dari isi atas” bernilai -1 dikarenkan array dimulai dari 0 yang berarti stack dalam keadaan kosong

int penuh(){
    if(tumpuk.atas ==MAX_toko-1)
        return 1;
    else
        return 0;
Sitak diatas berfungsi melakukan pengecekan apakah stack dalam kondisi penuh jadi memeriksa atas” apakah nilainya sama dengn MAX_toko jika bernilai  1 maka full.
int cek(){
    if(tumpuk.atas == -1)
        return 1;
    else
        return 0;
}

Sintak diatas berfungsi melakukan apakan stack dalam keadaan kosong jikan nilai return bernilai 1 makan stack dalam keadaan kosong dan sebaliknya.
void masukkan(char d[10]){
    tumpuk.atas++;
    strcpy(tumpuk.atas[tumpuk.atas],d);
}
Sintak diatas berfungsi untuk memasukkan elemen ketackdan dan elemen tersebut akan menjadi elemn teratas dari stack, nilai atas akan proses incrent setiap kali ada penambahan stack akan menambah satu asalkan stack masih belum penuh.


void ambil(){
    printf("Pengambilan Data =%d\n",tumpuk.data[tumpuk.atas]);
        tumpuk.atas--;
}
Sintak diatas untuk mengambil nilai teratas pada stack dengan mengases array atas dan menampilkan nilai yang akan diambil terlebih dahulu baru akan melakukan decrement sehinggan stack akan erkurang.
void hapus(){
    tumpuk.atas=-1;
}
Sintak diatas untuk menghapus jika nilai sama dengan 1
void tampildata(){
    for(int i=tumpuk.atas;i>=0;i--)
    {
        printf("%d.\t Dta : %s\n",i,tumpuk.data[i]);
    }
}
Sintak diatas digunkan untuk menampilkan elemen-elemen stack disini terdapat proses looping terhadap bilai array jikan ingin menampilkan elemen stack kita harus membaca elemen array dari indek yang paling atas dan setelah itu melakukan decrement terhadap nilai var i
void menu(){
    int pil;
    inisialisasi();
    char dt[10];

    do{
        printf("1. Input Data\n");
        printf("2. Pengambilan Data\n");
        printf("3. Menampilkan Data\n");
        printf("4. Penghapusan Data\n");
        printf("5. EXIT\n");
printf("MENU PILIH :");
scanf("%d",$pil);
Sitak diatas yaitu awal dari program itu sendiri, disini variabel pil dengan tipe data interger yang nantinya digunkan untuk menyimpan hasil dari masukkan data . Dan fungsi inisialisasi dan varibel dt  dengan jumbah max karakter 10 dengan tipr data char
Perintah printf sendiri digunkan untuk memberikan pilhan menu saat pengimputan data 




switch(pil)
{
case 1:if(penuh() !=1)
        {
            printf("Data=");
            scanf("%s",dt);
            masukkan(dt);
        }
    else
            printf("\n Data penuh\n");
    break;
case 2:if(cek() !=1)
            ambil();
    else
            printf("\n Data Kosong\n");
    break;
case 3:if(cek() !=1)
            tampildata();
    else
            printf("\n Data Ksong\n");

    break;
case 4:hapus();
        printf("\nSudah Kosong \n");
    break;
    }
Program tersebut melakukam switch dengan di simpan di varibel pil dan untuk case 1 fungsi penuh jikan nilai tersebut tidak sama dengan 1 makan akan mencetak data yang akan disimpan di var dt, jika tidak menampilkan data penuh untuk case yang 2,3 jika fungsi cek bernilai tidak sama nilai  makan menampilkan data kosong untuk case 4 untuk menghapus data dan memberikan pemberitahuan data sudah kosong.
getch();
    }
    while(pil !=5);
    getch();
}

Sintak diatas digukan untuk menjeda tau pause program sampai user menekan tombol enter atau sembarang program akan kebali ke perintah sebelunya 


D. Algoritma program Stack 

1. Start 
2. Pertama melakukan pemeriksaan apakah stack kosong atau penuh
3. Ketika akan melakukan proses push lakukan pemeriksaan pada tumpukan  apakah tumpukan penuh jika salah makan lakukan proses no.4 jika benar  lakukan proses no.7
4. Masukkan elemen dalam tumpukan tersebut 
5. Ketikan akan melakukan proses pop lakukan pemeriksaan terlebih dahulu  pada tumpukan  apakah tumpukan sudah kosong jika benar maka lakukan  proses no.6 jika salah lakukan no.7
6. Menghapus elemen yang yang ada paling atas
7. Tampilkan pemberitahuan apakah tumpukan sudah penuh atau kosong.

















 




contoh program stack || algoritma program stack || dasar teori stack || dasar teori program stack
Share:

Selasa, 01 Maret 2016

Login wifi.id gratis dengan free wifi

Sore kawan siang siang gini enaknya wifian tapi wifi yang gak lemot dirumah gua hanya wifi id nah kendalanya harus beri spincard dulu. disini saya akan share cara login wifi id dengan dengan menggunakan free wifi. saya perjelas dulu disini saya tidak melakukan hecking ataupun trik trik yang lain disini saya memamfaatkan fasilitas yang diberikan oleh pihah telkom. trik ini saya gunakan saat gak punyak uang / nipis dut :D yaitu saya memberi vocer wifi id yang harganya 2000-an dengan watu 2 jam nah pas waktu habis pemakeaanya kita mamfaatkan free wifi. langsung saja ke tutorialnya 

yang pertama yang harus diwajibkan yaitu disini anda harus logiin atau pernah konek dengan wifi id menggunkan apapun akunya spincard ataupun indischool.

yang kedua anda ubah address login wifi id seperti ini 

http://welcome2.wifi.id/wifi.id-new/free/?gw_id=WAG-D5-KBL&client_mac=e0:ca:94:da:2e:d8&wlan=&sessionid=WAG-D5-0210002200000006455d261989


yang saya tebali silahkan diganti dan mulai login . lihat gambar 

Share:

Sabtu, 16 Januari 2016

Membuat program konversi suhu celcius ke fahrenheit dengan rumus

      hay sobat saya disini akan sedit berbagi ilmu saya . disini saa akan memberikan contoh programe konversi suhu. disini saya membuat dengan mudah dan simpel untuk dipahami kawan langsung saya keprogramnya.


  1. Buatlah program untuk mengkonversi suhu dari Celcius ke Fahrenheit  dengan rumus F = C * 1.8 + 32  input   : suhu dalam Celcius
    Output : suhu dalam Fahrenheit 4

    sintak  program
hasil output program 

   2. Buat program untuk menginputkan satu karakter dari keyboard kemudian cetak karakter tersebut ke layar.
sintak program 
hasil outputan  program 

  3.    Buat program untuk menghitung luas lingkaran, dengan panjang jari-jari yang diinputkan dari keyboard.  Definisikan sebuah konstanta PI dengan nilai 3.14f

sintak program 
hasil outputan program 


mungkin hanya itu yang bisa saya berikan kalou ada kesalahan dan kekurangan mohon dimaklumi  disini saya juga masih dalam pembelajaran 

 

 



Share:

Minggu, 10 Januari 2016

Cara membuat game sederhana tebak angka

hay, kawan jumpa lagi kali ini saya akan membagikan sedikit pengetahun saya, disi saya akan membagikan cara membuat game tebak kata. game ini saya buat untuk memenuhi tugas akhir saya yaitu konsep pemograman .
saya akan sedikit memberikan penjelasan dari sintak yang ada.
Dana untuk memudahkan saya menyedikan vidio yang terdapat dibawah link ini

Penjelasan Program yang Dibuat
Untuk melengkapi salah satu tugas mata kuliah Teknik Pemprograman Terstruktur 1 maka saya memilih membuat program tersebut dengan Judul  “ Tebak Kata “ .
 program tersebut sangat sederhana dan mudah dipahami karena game ini implementasi dari looping. Dan untuk pemahamanya atau pemakeanya setelah program dijlankan disitu ada outputan  “saya memikirkan sebuah angka 1-50. mulailah menebak”  setelah itu masukkan angka sembarang atau tebakan angka yang akan di inputkan dan komputer akan menyecen dari angka yang dimaksukkan apakah sudah benar , kalau seandainya  inputan telalu kecil akan program akan mengeluarkan outputan            “ Angka yang anda masukkan terlalu kecil” dan jika terlalu besar “Kalimat yang anda masukan terlalu besar” dan sampai benar.  Dan jika benar akan menampilkan outputan menampilkan tebakan sebanyak yang di tebak.


Alur Programa dalam bentuk FLOWCHART


SOURCES CODE 
#include <stdlib.h> //digunakan untuk memanggil cout cin dll
#include <time.h>
#include <iostream>

using namespace std;

int main()
{system ("cls && color 5f"); //perintah tersebut yaitu untuk merubah warna dari background
   int angka, tebak, n=0;
  
   srand (time(NULL));
   angka=rand() % 50 +1; // untuk merender angka yang di tentukan komputer 1 - 50
  
   cout << "|===================================================|\n";
   cout << "|\t   INILAH GAME SEDERHANA TEBAK KATA         |\n";
   cout << "|saya memikirkan sebuah angka 1-50. mulailah menebak|\n";
   cout << "|===================================================|\n";
   do{
         n++;
         cin >> tebak;
         if (tebak < angka) cout << "angka anda terlalu kecil.\n";
         else if (tebak > angka) cout << "angka anda terlalu besar.\n";
   }while(tebak!=angka); system ("cls && color f2");
         //perintah while dilakun selama
         //tebak tidak samadengan angka dan akan akan selalu looping
         // sampai pernytaan terpenuhi
        
   cout << "Tebakan Anda Benar dan  telah menebak sebanyak " << n << " kali.\n";//variabel n akan menapilkan banyaknya pengulangan
   cout<<"                       ,,,   ,,,      "<<endl;
   cout<<"                      ( ',') ('0')/    "<<endl;
    cout<<"                      <|''|> /|''|     "<<endl;
    cout<<"                       |__|   |__|     "<<endl;
    cout<<"                      ./  L  ./  L     "<<endl;
        
  
   return 0;
}


Penjelasan Sorce code dan Tampilan


Untuk game ini saya menggunkan  tiga  jenis library header antara lain stdlib.h , iostraem , time.h. untuk pengertian #include disini disebut sebagi library fungsion yang artianya adalah fungsi – fungsi yang disediakan oleh bahasa C dan C++ dalam file – file header atau librarynya. Salah satu library yang diperkenalkan program ini yaitu cout yang berfungsi untuk mencetak kelayar monitor
Untk varibel bertipe interger untuk intergernya  “angka, tebak , dan n=0 “ 
untuk variabel angkan digunakan untuk  menyimpan  angka yang akan ditentukan acak oleh computer.
Untuk variabel tebak digunakan menyimpan angka yang akan di inputkan dan menyimpan inputan berupa angka.
Untuk variabel n=0 digunkan menghitung  tebakan yang di inputkan.


angka=rand() % 50 +1; berfungsi sebagai mengisi dari varibel angka dan fungsi rand() digunakan untuk mengacak angka yang akan di tentukan computer dan rand () teletak di library stdlib.h dan computer akan memuat angka sampai 50
 Dan untuk jsrand (time(NULL)); berfungsi untuk memastikan supanya bilangan acik dan memlakukan rand.




Untuk mengawali program fungsi cout digunakan untuk mencetak text pada C++  dan untuk memperindah tampilan program saat program dijalankan

Dan untuk hasil dari tampilan sorces di atas yaitu

Untuk looping saya menggunakan Do While
Cin berfungsi digunkan untuk melakukan inputan dari setiap jawaban yang nantinya jawaban tersebut akan disimpan pada variabel tebak
Dan fungsi if else digunakan untuk Dalam struktur kondisi if…..else minimal terdapat dua pernyataan. Jika kondisi yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang dilaksanakan. pembandi jikan  tebak lebih kecil dari angka maka akan mengeluarkan outputan “angaka anda terlalu kecil” dan jikan angka tebak lebih besar dari angka maka outputan “ angka anda terlalu besar “
Dan untuk while(tebak!=angka) yaitu bermaksud selama inputan tidak benar program akan melakukan looping terusmenerus sampai mendapatkan bilangan yang sama alias looping berhenti.
\n
Menunjukkan bahwa akan membuat garis baru.






Untuk akhir yaitu program akan menampilkan outputan  dan akan memberikan berapa banyak jumlah mengulang tebakan
perintak
cout yang pertama yaitu menampilkan bahawah looping sudah berakhir  untuk mengetahui berapa banyak telah menebak kita tamabahakan << n << “ kali\n”; yaitu n merupan varibel yang menampung semua tebakan yang di inputkan


A.   KESIMPULAN

KEKURANGAN
Dalam program ini terdapat kekurangan yaitu pada saat kita memasukkan angka dan jika salah akan mengulang sampai looping terpenuhi jadi tidak ada batas masimal untuk melakukan tebakan.
Selain itu pada program ini terlihat begitu sederhana karena tidak ada fariasi warna baik itu pada tulisan ataupun tampilan lainnya.

KELEBIHAN
Kelebihan dalam program ini, bila kita salah memasukkan angka, maka program tidak akan eror ataupun berhenti melainkan akan mengulang ,
Dari keseluruhan game tersebt merupan implementasian dari looping dan untuk jalannya game hanyalah mengulang ulang pernyataan samapai mendapatkan pernyataaan yang benar sesuai inputan konputer yang dilakukan random . karenapa  komputer bisa melakukan perintah angka yang acak dikarenaka pada saat awal programa menggukan fugsi rand yang terdapat di library  stdlib.h dan hanya itu saya yang mungkin bisa saya sampaikan .


vidio tourialnya disini

















SUMBER



Share: