Pada
postingan kali ini mencakup dari materi pertemuan ke V mengenai Array 1 Dimensi,
Character, dan String.
Berikut
merupakan video mengenai penukaran nama depan dan belakang dengan menggunakan
fungsi balik yang dibuat sendiri yang diterapkan pada bahasa pemrograman C
(Untuk source code dapat dilihat pada bagian bawah Latihan C).
(Video
membalikkan nama depn dengan nama belakang. No.Reg: 19%5 = 4)
Link Video: http://www.youtube.com/watch?v=QlSwgXnFE0w
| 
   
Coding 1 (2) 
 | 
 
| 
   
Source
  Code: 
 | 
 
| 
   
1.  #include <stdio.h>     //pemanggilan
  header standard input output 
2.  #include <conio.h>     //pemanggilan
  header control input output 
3.  #include <string.h>    //pemanggilan
  header string 
4.   
5.  int jum_vocal(int jum, char input[200])     //fungsi
  untuk mencari jumlah vocal 
6.  { 
7.     char vokal[6]={'a','i','u','e','o'};     //mengisi variabel(array) 
8.     int i,j,vok=0;       //inisialisasi
  variable 
9.     for(i=0; i<jum; i++) //perulangan
  pertama 
10.    { 
11.           for(j=0; j<6; j++)   //perulangan
  kedua 
12.           { 
13.                  if (input[i]==vokal[j])    //kondisi
  untuk membandingkan hasil perulangan pertama dengan kedua 
14.                        vok++; //increment
  nilai vok 
15.           } 
16.    } 
17.    return vok;   //mengembalikan
  nilai hasil perulangan 
18. } 
19.  
20. int jum_konsonan(int jum, char input[200])  //fungsi
  untuk mencari jumlah konsonan 
21. { 
22.    char konsonan[22]={'b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z'};   //mengisi variabel(array) 
23.    int i,j,kon=0;       //deklarasi
  variable 
24.    for(i=0; i<jum; i++) //perulangan
  pertama 
25.    { 
26.           for(j=0; j<22; j++)  //perulangan
  kedua 
27.           { 
28.                  if(input[i]==konsonan[j])  //kondisi
  untuk membandingkan hasil perulangan pertama dengan kedua 
29.                        kon++; //increment
  nilai kon 
30.           } 
31.    } 
32.    return kon;   //mengembalikan
  nilai hasil perulangan 
33. } 
34.  
35. int jum_lain(int jum, char input[200])      //fungsi
  untuk mencari jumlah karakter lain 
36. { 
37.    int voc, kon, lainnya;     //deklarasi
  variable 
38.    voc=jum_vocal(jum,input);  //mengambil
  isi dari fungsi jum_vocal dan memasukkannya ke variabel voc 
39.    kon=jum_konsonan(jum,input);      //mengambil
  isi dari fungsi jum_konsonan dan memasukkannya ke variabel kon 
40.    lainnya=jum-(voc+kon);     //mencari
  hasil dari pengurangan total karakter dengan total vokal+konsonan 
41.    return lainnya;      //mengembalikan
  nilai hasil pencarian jumlah karakter lainnya 
42. } 
43.  
44. int main(void)   //fungsi
  utama 
45. { 
46.    char input[200],
  vokal[6], konsonan[22]; //deklarasi variabel dengan tipe char dan memiliki nilai
  masing-masing 
47.    int jum,voc,kon,lain;      //deklarasi
  variabel dengan tipe integer 
48.  
49.    printf("===== MENCARI JUMLAH KARAKTER VOKAL, KONSONAN, DAN
  LAINNYA ===== \n"); 
50.    printf("||             
  MADE WAHYU SANDIKA PURNAMA                    || \n \n"); 
51.  
52.    printf("masukkan kata= "); //meminta inputan dari user 
53.    gets(input);  //menyimpan
  ke variabel input dengan fungsi gets(fungsi yang sama dengan scanf hanya saja
  gets dapat mengambil spasi) 
54.    printf("\n"); 
55.  
56.    strlwr(input);       //descending
  semua carakter yang diinputkan oleh user 
57.    jum=strlen(input);   //menjumlahkan
  setiap karakter yang diinputkan oleh user 
58.  
59.    voc=jum_vocal(jum,input);  //mengirim
  dan menerima nilai balikan dari fungsi jum_vocal (jumlah vocal) 
60.    kon=jum_konsonan(jum,input);      //mengirim
  dan menerima nilai balikan dari fungsi jum_konsonan (jumlah konsonan) 
61.    lain=jum_lain(jum,input);  //mengirim
  dan menerima nilai balikan dari fungsi jum_lain (jumlah karakter lainnya) 
62.  
63.    printf("Jumlah vokal= %d \n",voc); //menampilkan jumlah karakter vocal 
64.    printf("Jumlah konsonan= %d \n",kon);    //menampilkan jumlah karakter konsonan 
65.    printf("Jumlah Karakter lainnya= %d \n",lain);  //menampilkan jumlah karakter selain vocal dan konsonan. 
66.  
67.    getch();      //menahan
  eksekusi program 
68.    return(0);    //mengembalikan
  nilai fungsi utama ynag bertipe integer 
69. } 
 | 
 
Source
code diatas merupakan source code program untuk menganalisa string inputan yang
diinputkan oleh user dan kemudian ditampilkan berapa jumlah karakter vokalnya,
konsonan, dan karakter lainnya, dengan cara usr menginputkan sembarang kata
yang kemudian kata tersebut dihitung jumlah karakternya, dikirimkan ke fungsi
yang kemudian dicari jumlah karakter vocal, konsonan, dan karakter lainnya dan
hasilnya dikembalikan ke fungsi utama untuk ditampilkan. Berikut merupakan hasil gambar
setelah program dijalankan.
Gambar 1. Tampilan Program Soal No 2
| 
   
Coding 2 (5) 
 | 
 
| 
   
Source
  Code: 
 | 
 
| 
   
1.  #include <stdio.h>     //pemanggilan
  header standard input output 
2.  #include <conio.h>     //pemanggilan
  header control input output 
3.   
4.  int main(void)   //fungsi
  utama 
5.  { 
6.     int A[5] = {5, 10, 6, 0, 4};      //pendeklarasian
  variabel bertipe integer dengan array berindex 0-4 
7.     int B[5] = {0, 0, 0, 0, 0};        
8.     int n; //deklarasi variabel
  bertipe integer 
9.   
10.    printf("====== 
  MEMBALIKKAN NILAI  ======
  \n"); 
11.    printf("||  Made
  Wahyu Sandika Purnama  || \n \n"); 
12.    printf("Nilai A = 5 10 6 0 4 \n \n"); 
13.    printf("Nilai B = "); 
14.    for(n=0; n<5; n++)   //perulangan
  pertama 
15.    { 
16.           B[4-n] =
  A[n];       //kondisi untuk menukarkan isi dari A ke B 
17.    } 
18.  
19.    for(n=0; n<5; n++)   //perulangan
  kedua untuk menampilkan hasil pembalikan dari A ke B 
20.    { 
21.           printf("%d ",B[n]); 
22.    } 
23.     
24.    getch();      //menahan
  eksekusi program 
25.    return(0);    //mengembalikan
  nilai dari fungsi utama yang bertipe integer 
26. } 
 | 
 
Source code diatas merupakan
source code dalam pembuatan program untuk mengisi array B dengan data dari
array A, dimana isi array B terbalik dari isi array A. program tersebut
dijalankan dengan menggunakan perulangan dimana data array terakhir B diisi
dengan data array awal A, data kedua terakhir B diisi dengan data kedua A
sehingga array A awal terdapat di B akhir. Berikut merupakan hasil gambar
setelah program dijalankan.
Gambar 2. Tampilan Program Soal No 5
| 
   
Coding 3 (6) 
 | 
 
| 
   
Source
  Code: 
 | 
 
| 
   
1.  #include <stdio.h>      //pemanggilan
  header standard input output 
2.  #include <conio.h>      //pemanggilan
  header control input output 
3.  #include <string.h>     //pemanggilan
  header string 
4.   
5.  int main(void)   //fungsi
  utama 
6.  { 
7.      char binatang[9] = "monyet",
  tebak[9] = {'?','?','?','?','?','?','?','\0'};    //deklarasi variabel bertipe char 
8.      char huruf[9]; 
9.      int bin,i,j,banding,n;     //deklarasi
  variabel bertipe integer 
10.     n = strlen(binatang);      //menghitung
  banyak karakter pada variabel binatang dan ditampung pada variabel n bertipe
  integer 
11.      
12.     printf("===== GAMES MENEBAK NAMA BINATANG =====\n"); 
13.     printf("||    Made
  Wahyu Sandika Purnama     || \n
  \n"); 
14.     printf("Terdiri dari 6 huruf.. \n"); 
15.     bin = 0;      //inisialisasi
  variable 
16.     j = 0; 
17.      
18.     do{    //perulangan 
19.            bin = 0; 
20.             
21.            for(i=0; i<n; i++)   //perulangan
   
22.                  printf(" %c ",tebak[i]);   //menampilkan
  "_" sesuai isi dari variabel "tebak" 
23.             
24.            printf("\n \n");     //membuat
  baris baru 
25.            printf("\n Inputkan huruf : "); 
26.            gets(huruf);  //menyimpan
  inputan dari user 
27.            strlwr(huruf);       //mendescendingkan
  semua inputan dari user 
28.  
29.            for(i=0; i<n; i++)   //perulangan 
30.            { 
31.                  if(binatang[i] ==
  huruf[0]){  //kondisi untuk menyocokkan nama binatang dengan inputan
  dari user 
32.                         tebak[i]
  = huruf[0]; 
33.                         bin++; 
34.                  } 
35.            } 
36.             
37.            if(bin == 0)  //kondisi
  jika inputan tidak sesuai 
38.            {              
39.                  j++;
   
40.                   
41.                  if (j<5)      //kondisi
  jika inputan user tidak sesuai dan memiliki kesempatan dibawah 5x 
42.                         printf("\n Coba Lagi!! (sisa kesempatan %d) \n\n",5-j); 
43.                  else 
44.                         printf("\n Maaf Anda Kurang Beruntung :D \n \n");    //keluaran jika user sudah salah 5x 
45.            } 
46.            banding
  = strcmp(binatang,tebak); 
47.             
48.     }while((j <
  5)&&(banding == 1)); 
49.  
50.     printf("\nNama Binatang = %s\n",binatang); 
51.     printf("Tertebak = "); 
52.     for(i=0; i<n; i++) 
53.                  printf("%c ",tebak[i]); 
54.      
55.     getch(); 
56.     return(0); 
57. } 
 | 
 
Source code
diatas merupakan source code untuk pembuatan program games untuk menebak
nama binatang, setiap huruf yang betul akan ditampilkan sesuai dengan
posisinya, user hanya memiliki 5 kali kesempatan untuk salah, jika kesalahan
sudah 5 kali maka program akan berhenti. Program dijalankan dengan menyediakan
clue berapa banyak huruf dari nama binatang yang akan ditebak, setelah user
memasukkan huruf, huruf tersebut kemudian dicocokkan dengan setiap karakter
dari nama binatang yang ditentukan oleh program, jika benar maka huruf tersebut
ditampilkan berdasarkan posisinya, dan jika salah maka kesempatan untuk salah
dikurangi 1. Berikut merupakan hasil gambar setelah program
dijalankan.
Gambar 3. Tampilan Program Soal No 6
| 
   
Coding 4 (Latihan b) 
 | 
 
| 
   
Source
  Code: 
 | 
 
| 
   
1.  #include <stdio.h>      //pemanggilan
  header standard input output 
2.  #include <conio.h>      //pemanggilan
  header control input output 
3.  #include <string.h>     //pemanggilan
  header string 
4.   
5.  int perbandingan(char input_1[25], char input_2[25])       //pembuatan
  fungsi bertipe int dengan nama perbandingan 
6.  { 
7.      char pass_1[25],
  pass_2[25];      //deklarasi variabel dengan tipe char 
8.      int
  banding_1,banding_2,tampil;   //deklarasi varabel bertipe integer 
9.   
10.            strcpy(pass_1,"made");     //mengisi
  variabel pass_1 dengan "made" menggunakan fungsi string copy pada
  header string 
11.            strcpy(pass_2,"wahyu");    //mengisi
  variabel pass_2 dengan "wahyu" menggunakan fungsi string copy pada
  header string 
12.  
13.            banding_1=strcmp(pass_1,input_1); //membandingkan
  isi variabel pass_1 dengan inputan pertama dari user dengan menggunakan
  fungsi string compare pada header string 
14.            banding_2=strcmp(pass_2,input_2); //membandingkan
  isi variabel pass_2 dengan inputan kedua dari user dengan menggunakan fungsi
  string compare pada header string 
15.  
16.     if ((banding_1==0)&&(banding_2==0))      //kondisi
  jika perbandingan pertama dengan perbandingan kedua benar, maka nilai
  balikannya bernilai 0 
17.     { 
18.            tampil=1;     //jika
  kondisi benar maka tampil bernilai 1(benar) 
19.     }else{ 
20.            tampil=0;     //jika
  salah maka tampil bernilai 0(salah) 
21.     } 
22.     return tampil;       //mengembalikan
  hasil dari fungsi perbandingan yang bertipe integer 
23.  
24. } 
25.  
26. int main (void)  //memulai
  fungsi utama 
27. { 
28.     char
  input_1[25],input_2[25];     //deklarasi variabel berntipe char dengan isi 25
  karakter 
29.     int tampil, cocok=0; //deklarsi
  variabel dengan tipe integer 
30.      
31.     printf("========== APLIKASI INPUT PASSWORD
  ==========\n"); 
32.     printf("||      
  Made Wahyu Sandika Purnama       
  ||\n \n"); 
33.  
34.     do{    //memulai perulangan 
35.            printf("masukkan password 1= ");  //meminta inputan dari user 
36.            scanf("%s",&input_1);      //menyimpan
  ke variable 
37.            printf("Masukkan password 2= "); 
38.            scanf("%s",&input_2); 
39.  
40.            tampil =
  perbandingan(input_1,input_2);  //mengirim isi inputan dari user ke fungsi
  "perbandingan" dan menerima hasil balikan (tampil) 
41.     if (tampil==0)       //jika
  tampil bernilai 0 atau salah 
42.            printf("Coba lagi \n \n"); //yang ditampilkan jika tampil bernilai 0 
43.     else 
44.            printf("berhasil");  //yang
  ditampilkan jika tampil bernilai 1 atau benar 
45.            cocok++;      //increment
  variabel cocok untuk mengulang jika kondisi tampil = 0 
46.  
47.     }while((tampil==0)&&(cocok!=3));  //proses
  diatas diulang jika nilai tampil masih 0 dan variabel cocok tidak sama dengan
  3 
48.  
49.     if((tampil==0)&&(cocok==3)) //kondisi
  jika tampil masih bernilai 0 dan telah diulang sebanyak 3x (cocok = 3) 
50.            printf("Login Gagal");     //maka
  yang ditampilkan "Login gagal" 
51.  
52.     getch();      //menahan
  eksekusi program 
53.     return(0);    //mengembalikan
  nilai fungsi utama yang bertipe integer 
54. } 
 | 
 
Source code diatas merupakan source code mengenai program
untuk mencocokkan 2 buah inputan password dengan nama depan sebagai password
pertama dan nama belakang sebagai password kedua. Program ini dijalankan dengan
menggunakan fungsi yang dibuat sendiri untuk membandingkan inputan pertama user
dengan password pertama dari program dan inputan kedua dari user dengan
password kedua dari program, jika tidak sesuai, user diberikan 3 kali
kesempatan untuk salah, jika kesalahan sudah 3 kali maka program berhenti, dan
jika benar maka program menyatakan inputan benar. Berikut merupakan hasil gambar setelah program dijalankan.
Gambar 4. Tampilan Program Soal Latihan b
| 
   
Coding 4 (Latihan c) 
 | 
 
| 
   
Source
  Code: 
 | 
 
| 
   
1.  #include <stdio.h>     //pemanggilan
  header standard input output 
2.  #include <conio.h>     //pemanggilan
  header control input output 
3.  #include <string.h>    //pemanggilan
  header string 
4.   
5.  char balik (char kata_1[25], char kata_2[25])      //nama
  fungsi buatan yang bertipe string 
6.  { 
7.     char temp[25];       //deklarasi
  variabel bertipe string 
8.     strcpy(temp,kata_1); //mengisi
  variabel temporary dengan inputan pertama dari user 
9.     strcpy(kata_1,kata_2);     //mengisi
  variabel pertama dengan inputan kedua dari user 
10.    strcpy(kata_2,temp); //mengisi
  variabel kedua dengan inputan pertama yang dipindahkan ke variabel temporary 
11.  
12.    printf("Nama anda adalah %s %s",kata_1,kata_2); //menampilkan setelah penukaran isi variabel 1 dengan
  variabel 2 
13. } 
14.  
15. int main (void)  //fungsi
  utama 
16. { 
17.    char nama_1[25],
  nama_2[25];      //deklarasi variabel bertipe string 
18.  
19.    printf("========== PROGRAM BALIK NAMA ==========\n"); 
20.    printf("||     Made
  Wahyu Sandika Purnama     ||\n \n"); 
21.  
22.    printf("Masukkan nama depan anda= ");    //meminta inputan nama pertama dari user 
23.    scanf("%s",&nama_1); //menyimpan
  inputan pertama dari user 
24.  
25.    printf("Masukkan nama belakang anda= "); //meminta inputan nama kedua dari user 
26.    scanf("%s",&nama_2); //menyimpan
  inputan kedua dari user 
27.  
28.    printf("\n"); 
29.    balik(nama_1,
  nama_2);     //mengirim inputan dari user ke fungsi buatan dengan
  nama balik kemudaian diproses dan dikembalikan ke fungsi utama untuk
  ditampilkan. 
30.  
31.    getch(); 
32.    return(0); 
33. } 
 | 
 
Source code diatas merupakan source code mengenai program
untuk membalikkaan inputan nama awal dan belakang, yang awalnya user
menginputkan nama depan pada kata_1 dan nama belakang pada kata_2 setelah
diproses oleh system menjadi nama belakang diawal dan diikuti dengan nama awal
dibelakangnya. Program ini dijalankan dengan menggunakan fungsi balik yang
dibuat sendiri yang digunakan untuk logika menukarkan yaitu dengan menambahkan
variable temporary sebagai penyimpanan sementara. Dicontohkan dengan 2 gelas A
dan B, untuk menukar isi kedua gelas tersebut maka diperlukan 1 buah gelas
kosong untuk penampungan isi gelas A untuk sementara, kemudian gelas A yang
kosong diisi dengan isi gelas B, selanjutnya gelas B yang kosong diisi dengan
isi gelas A yang sebelumnya dipindahkan ke gelas temporary. Sedikit ilustrasi
gambar:
Gambar
5. Ilustrasi penukaran isi
Berikut merupakan hasil gambar setelah program dijalankan.
Gambar 6. Tampilan Program Soal Latihan c
0 comments:
Post a Comment