PROGRAM HILLS
#include<stdio.h>
#include<string.h>
main(){
int i,j,k,l,p, m, pilih, a,c, b,d, s1,s2,y1,y2;
char temp, sistem;
char z[40],key[40],hasil[40], A, B;
char huruf[26]={‘A’,'B’,'C’,'D’,'E’,'F’,'G’,'H’,'I’,'J’,'K’,'L’,'M’,
‘N’,'O’,'P’,'Q’,'R’,'S’,'T’,'U’,'V’,'W’,'X’,'Y’,'Z’};
clrscr();
printf(” ==========================================================\n”);
printf(” = PROGRAM HILSS =\n”);
printf(” = =\n”);
printf(” = Neo Fajar Bawana Konta Dewa Danu =\n”);
printf(” = TEKNIK PERSANDIAN =\n”);
printf(” = =\n”);
printf(” ==========================================================\n”);
printf(“\n”);
sleep(2);
clrscr();
printf(” ___________________________________________________________\n”);
printf(“| |\n”);
printf(“| SELAMAT DATANG DI PROGRAM PENYANDIAN HILSS |\n”);
printf(“| 1. ENCRYPTION |\n”);
printf(“| 2. DECRYPTION |\n”);
printf(“| 3. EXIT |\n”);
printf(“|__________________________________________________________|\n”);
printf(“\n”);
printf(” masukkan menu pilihan anda:”);
scanf(“%d”,&pilih);
switch(pilih);
{
case1:
clrscr();
printf(” ====Selamat Datang di Program Digraf Encryption====\n “);
sleep(2);
printf(“\n”);
printf(“A.Sistem KS\n”);
printf(“B.Sistem KCTR\n”);
printf(“Pilih Sistem Sandi Yang Akan digunakan:\n”);
scanf(“%c”, &sistem);
switch(sistem);
{
case’A':
printf(“ENTER KEY WORD (UPPER CASE LETTER) : “);
scanf(“%s”,key);
l = strlen(key);
for(i=0;i<l;i++)
for(j=i+1;j<l;j++){
if(key[i] == key[j]){
key[j]=’ ‘;
if(j+1<l){
m=j;
for(k=m+1;k<l;k++){
key[m]=key[k];
m++;
}
j–;
}
l-=1;
}
}
for(i=0;i<26;i++)
for(j=0;j<l;j++){
if(huruf[i]==key[j])
huruf[i]=’ ‘;
}
p = l;
for(i=0;i<26;i++){
if(huruf[i]!=’ ‘){
key[p]=huruf[i];
p++;
}
}
clrscr();
printf(“\n\n”);
printf(“HASIL PROSES KS: \n”);
printf(“\n”);
for(i=0;i<26;i++){
printf(“%c”,key[i]);
}
sleep(1);
printf(“\n\n”);
printf(“untuk persamaan y1\n”);
sleep(1);
printf(“masukkan nilai koefisien x1:”);
scanf(“%d”,&a);
printf(“\n”);
printf(“masukkan nilai koefisien x2:”);
scanf(“%d”,&b);
printf(“\n”);
printf(“masukkan nilai konstanta1:”);
scanf(“%d”,&s1);
printf(“\n”);
printf(“untuk persamaan y2″);
sleep(1);
printf(“\n”);
printf(“masukkan nilai koefisien x1:”);
scanf(“%d”,&c);
printf(“\n”);
printf(“masukkan nilai koefisien x2:”);
scanf(“%d”,&d);
printf(“\n”);
printf(“masukkan nilai konstanta2:”);
scanf(“%d”,&s2);
printf(“\n”);
for(i=0,j=i+1;i,j<26;i++,j++)
{
key[i]=key[i+1];
y1=(i*a+j*b+s1)%26;
y2=(i*c+j*d+s2)%26;
printf(“%c%c “, key[y1],key[y2]);}
break;
case’B':
printf(“copy cepet”);
break;
}
case2:
printf(“maaf saya belum mengerti jadi maaf”);
break;
case3:
break;
}
getch();
}
PROSES LOOPING
PENGULANGAN DENGAN FOR
LOOP FOR
Loop adalah pengulangan perintah-perintah sampai mencapai keadaan tertentu. Turbo C mempunyai 3 jenis loop, yaitu :
-
for
-
while
-
do – while
Bentuk umum Loop For :
for (inisialisasi; syarat; penambahan) pernyataan;
Keterangan :
-
Inisialisasi adalah pernyataan untuk menyatakan keadaan awal dari variabel kontrol.
-
Syarat adalah ekspresi relasional yang menyatakan berhentinya pengulangan.
-
Penambahan menyatakan perubahan variabel kontrol setiap terjadi pengulangan. Setiap bagian harus dipisahkan oleh tanda titik koma.
Contoh :
main()
{
int i;
clrscr();
for (i=1; i <=5 ; i++) printf(“%d \n”,i);
getch();
}
Pada program tersebut :
Inisialisasi : i = 1
Syarat : i <= 5
Penambahan : i++ , artinya ditambah 1
Hasil :
1
2
3
4
5
OPERATOR PENAMBAH DAN PENGURANG
C mempunyai dua operator khusus yaitu penambah (++) dan pengurang (–), contoh :
i ++ sama dengan i = i + 1
i — sama dengan i = i – 1
Operator penambah dan pengurang dapat dituliskan di depan atau dibelakang, tetapi mempunyai arti yang berbeda. Jika operator diletakkan di depan, C akan melakukan penambahan atau pengurangan sebelum memakai nilai operator. Jika diletakkan di belakang, C akan memakai nilai operator lalu menambah atau mengurangi variabel.
Contoh :
x = 10 x = 10
y = ++x y = x++
hasil : 11 hasil : 10
Contoh :
main()
{
int i;
clrscr();
for (i=5; i > 0 ; i–) printf(“%d \n”,i);
getch();
}
Contoh :
#include <math.h>
main()
{
int i, kuadrat, jumlah;
float akar;
char garis[35] = “——————————-”;
clrscr();
printf(“Tabel Kuadrat dan Akar Kuadrat \n”);
printf(“%s\n”,garis);
printf(“Bilangan Kuadrat Akar Kuadrat\n”);
printf(“%s\n”,garis);
for (i=1; i<=10; i++)
{
kuadrat = i * i;
akar = sqrt(i);
printf(” %2d %3d %6.4f \n”,i,kuadrat,akar);
}
printf(“%s\n”,garis);
getch();
}
VARIASI LOOP – FOR
Kita dapat memakai beberapa variabel kontrol di dalam loop for,
contoh :
main()
{
int x,y;
clrscr();
for (x=0,y=0; x+y<=20; x++,++y) printf(“%d\n”,x+y);
getch();
}
Program di atas mencetak bilangan 0 sampai 20. Perhatikan pernyataan for di atas.
Inisialisasi : x=0, y=0
Syarat : x+y <= 20
Penambahan : x++, y++
Tanda koma dipakai untuk memisahkan dua pernyataan di dalam sebuah bilangan. Misalnya di bagian inisialisasi ada pernyataan x=0 dan y=0. Tanda koma berarti lakukan ini dan ini.
MENGHILANGKAN SEBUAH BAGIAN LOOP
Variasi lain adalah dengan menghilangkan salah satu bagian dari loop,
contoh :
main()
{
char ch;
clrscr();
printf(“Ketikkan karakter-karakter (z = stop) : \n”);
for (ch=’ ‘; ch!=’z'; ) ch=getche();
}
Pada program di atas, Anda diminta untuk mengetikkan karakter-karakter dan program akan berhenti jika Anda mengetikkan huruf ‘z’.
LOOP TAK HINGGA
Loop tak hingga dibuat dengan menghilangkan bagian syaratnya,
contoh :
main()
{
char ch;
clrscr();
printf(“Ketikkan karakter-karakter : \n”);
for (ch=’ ‘; ; ) ch=getche();
}
Program tersebut meminta Anda mengetikkan sebuah huruf dan tidak akan berhenti. Untuk menghentikannya tekan tombol CTRL + BREAK
LOOP TANPA PERNYATAAN
Loop tanpa pernyataan dipakai untuk menunggu. Semakin banyak pengulangan, semakin lama menunggu.,
contoh :
main()
{
int t,x;
clrscr();
printf(“Berapa kali loop Anda akan menunggu : \n”); scanf(“%d”,&x);
for (t=0 ; t<x ; t++ ) ;
}
LOOP BERSARANG
Perhatikan contoh program berikut :
main()
{
int i,j;
clrscr();
for (i=1 ; i <= 3 ; i++)
{
for (j=1 ; j <= 5 ; j++ ) printf(“*”);
printf(” \n”);
}
getch();
}
Dari contoh tersebut dapat kita simpulkan bahwa variabel i menyatakan baris dan variabel j menyatakan kolom.
PENGULANGAN DENGAN WHILE DAN DO-WHILE
LOOP WHILE
Bentuk umum :
while (syarat) pernyataan;
Pernyataan pada loop while dapat berupa sebuah pernyataan atau blok pernyataan atau pernyataan kosong. Pernyataan akan diulang selama syarat benar,
contoh :
main()
{
int i;
clrscr();
i=1;
while (i <= 5)
{
printf(“STI&K\n”);
i=i+1;
}
getch();
}
Loop while menyatakan bahwa pengulangan akan dilakukan terus selama syarat terpenuhi.
LOOP DO WHILE
Loop for dan while akan mengecek syarat pengulangan pada awal loop. Loop do-while mngecek syaratnya pada akhir pengulangan. Loop do-while akan selalu dikerjakan minimal sekali. Loop do-while menyatakan bahwa pengulangan akan dilakukan selama syarat terpenuhi.
Bentuk umum :
do
{
statemen;
statemen;
} while (syarat)
Bentuk umum untuk loop do-while adalah pada rutin pemilihan menu, sebab menu selalu dikerjakan minimal sekali,
contoh :
main()
{
int no_menu;
do
{
clrscr();
printf(“\n Menu Hari Ini “);
printf(“\n ——————”);
printf(“\n 1. Nasi Goreng “);
printf(“\n 2. Nasi Soto Ayam “);
printf(“\n 3. Gado-Gado “);
printf(“\n 4. Bubur Ayam “);
printf(“\n\n Masukkan pilihan Anda…! (0 = Selesai) “);
scanf(“%d”,&no_menu);
switch (no_menu)
{
case 1 :
printf(“\n Nasi Goreng Rp. 5000,-”);
break;
case 2 :
printf(“\n Nasi Soto Ayam Rp. 6000,-”);
break;
case 3 :
printf(“\n Gado-Gado Rp. 4000,-”);
break;
case 4 :
printf(“\n Bubur Ayam Rp. 3500,-”);
break;
case 0 :
printf(“\n Selesai.. Terima kasih..!”);
break;
default :
printf(“\n\n Pilihan Anda Salah…!”);
}
getch();
}while (no_menu != 0);
}
-
Recent
-
Links
-
Archives
- May 2008 (5)
- January 2008 (6)
- December 2007 (7)
-
Categories
-
RSS
Entries RSS
Comments RSS