Final Project Alprog
Final Project Alprog
DAN PEMROGRAMAN
OLEH :
Nama
NRP
Jurusan
: Wahyu Darma
: 2214100012
: TEKNIK ELEKTRO
BAB I PENDAHULUAN......................................................................
1.1 Latar Belakang.........................................................................
1.2 Rumusan Masalah....................................................................
1.3 Tujuan......................................................................................
1.4 Manfaat....................................................................................
BAB II IMPLEMENTASI PROGRAM.................................................
2.1 Kalender Abadi.......................................................................
2.2 Tebak Angka............................................................................
2.3 Tic Tac Toe..............................................................................
BAB III PENUTUP...............................................................................
3.1 Kesimpulan..............................................................................
3.2 Kontribusi................................................................................
3.3 Lampiran..................................................................................
1
1
1
1
2
3
3
7
9
14
14
14
15
BAB I
PENDAHULUAN
1.1 Latar Belakang
Bahasa pemrograman adalah teknik instruksi untuk memerintahkan komputer.
Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan
2
BAB II
IMPLEMENTASI PROGRAM
4
c. Mencetak Nama Hari dan pengaturan letaknya.
d. Penggunaan
variabel
string
dalam
deklarasi
dan
Penginputan
data
menggunakan statement.
Gambar di atas merupakan screen capture dari bagian program kalender
yang telah dibuat. Program tersebut merupakan suatu sistem deklarasi yang
meliputi deklarasi dari integer dan (bulan) variabel string. Dalam deklarasi
tersebut, (bulan) dapat dikatakan sebagai variabel string karena mengandung
nilai-nilai string atau karakter-karakter di dalamnya. Nilai 12 dan 20 pada
kotak pertama menunjukkan banyaknya nilai-nilai string yang terkandung.
Nilai 20 pada kotak kedua menunjukkan panjang maksimumnya karakter dari
setiap nilai string yang terkandung. Deklarasi variabel string di atas tidak lain
merupakan deklarasi array bertipe char.Lalu terdapat statement-statement atau
fungsi utama yaitu fungsi printf dan scanf. Fungsi printf merupakan fungsi
yang umum digunakan untuk menampilkan data ke layar. Sedangkan fungsi
scanf merupakan fungsi yang digunakan untuk memasukkan berbagai jenis
data. Dalam program tersebut juga terdapat statement tahun dan bulan, yang
mana statement tahun berfungsi untuk menentukan tahun berapa yang akan
dituju pengguna dan statement bulan digunakan untuk menentukan bulan apa
yang akan dituju si pengguna program.
5
e .Hasil Keluaran program
Inilah hasil program yang keluar dari koding yang telah saya buat.Disini
kami mengambil sampel hari kemerdekaan Indonesia karena sampel tersebut bisa
diketahui apakah koding kita salah atau enggak tergantung kebenaran hari
kemerdekaan Indonesia yang ada di koding kita dengan hari kemerdekaan
Indonesia yang sebenarnya.
2.2Tebak Angka
a.
Toe yang telah dibuat.Ini menggunakan tipe string dimana kita akan membuat
b. Pembuatan Langkah-langkah
Gambar di atas merupakan screen capture dari bagian program Tic Tac
Toe yang telah dibuat.Koding ini dibuat agar klasifikasi yang kita buat seperti
gerakan pemain atau tampilan papan Tic Tac Toe akan melakukan proses yang
kita buat melalui koding.Ibaratnya ini adalah pemisalan variabel gerakan yang
akan dilakukan.
9
Gambar di atas merupakan screen capture dari bagian program Tic Tac
Toe yang telah dibuat.Cara kerjanya adalah komputer yang bermain bersama kita
memakai variabel O dalam papan Tic tac Toe.Lalu di koding ini akan
mendeteksi gerakan yang telah diambil pemain sehingga gerakan komputer tidak
bisa mengambil mengisi gerakan pemain yang telah menempati daerah tersebut
dan jika semua gerakan telah diisi maka otomatis akan keluar kata draw.
11
f. Pembuatan Tampilan Papan Tic Tac Toe
Gambar di atas merupakan screen capture dari bagian program Tic Tac
Toe yang telah dibuat.Koding ini dibuat untuk membuat papan Tic Tac Toe seperti
matriks tapi dengan batas garis sehingga seperti kotak-kotak persegi.Koding ini
berhubungan dengan koding pembuatan ruang kosong yakni menggunakan tipe
string.
g. Pengecekkan Kemenangan
Gambar di atas merupakan screen capture dari bagian program Tic Tac
Toe yang telah dibuat.Koding ini dibuat untuk melakukan pengecekkan
kemenangan variabel yang sama yang terdapat pada papan permainan Tic Tac
Toe.Pengecekkan tersebut dibagi dalam 3 bentuk arah deteksinya yakni secara
horizontal,secara vertikal dan secara diagonal.Jika ada salah satu pemain yang
mewakili variabelnya dempet bersamaan apakah itu secara horizontal,vertikal,atau
diagonal maka koding tersebut akan mendeteksi dan akan menentukan
pemenangnya melalui variabel X atau O tadi.
12
h. Hasil keluaran
13
BAB III
PENUTUP
3.1 Kesimpulan
Implementasi ilmu yang telah didapatkan, dapat dilakukan dengan
berbagai bentuk maupun cara, salah satunya dengan adanya project semester.
Dengan cara ini, ilmu yang telah didapatkan dalam kelas dapat dituangkan
secara langsung, sehingga akan diketahui apakah ilmu yang diajarkan dapat
diterima dengan baik atau tidak. Dalam mata kuliah algoritma dan
pemrograman, project semester yang diberikan yaitu pembuatan kalender
abadi. Dalam proses pembuatannya, banyak aspek yang diaplikasikan, di
antaranya pengaplikasian proses pengambilan keputusan, proses perulangan
dan penggunaan fungsi. Semua aspek tersebut telah dikembangkan dalam
program sebanyak 3 program tersebut. Pengembangan tersebut merupakan
bagian dari skill asah logika, kemampuan berintuisi dan jiwa seni yang
dimiliki oleh seorang pembuat program tersebut. Selain itu, dalam proses
pengembangan juga diperlukan suatu pemahaman teori yang baik dan kajian
literatur yang banyak.
3.2 Kontribusi
Dalam penyelesaian project algoritma dan pemrograman semester ini,
penulis memberi kontribusi sebagai pembuat program dan juga perancang
program supaya hasil dari program tersebut ketika di run memberikan
tampilan yang sebenarnya sesuai dengan yang diharapkan dan bagus untuk
dilihat dan juga mudah untuk dipahami.
14
LAMPIRAN
b=1;
for(b=1;b<bulan;b++)
{
h=jum_hari(b,tahun);
t=t+h;
}
h=t%7;
printf("\n
printf("
--------------'%d'--------------\n",tahun);
----'%s'----\n",nama_bulan[bulan-1]);
if(k%7==0)
{printf("\n");}
}
return(0);
}
2.2Tebak Angka
#include <stdio.h>
#include <math.h>
int main()
{
int a,b,c,d,hasil;
printf("=============ALGORITMA
DAN
PEMROGAMAN=============\n\n");
printf("NAMA\t:\n");
printf("1. PRASETYO TRI ANGGORO (2214100072)\n");
printf("2. WAHYU DARMA (2214100012)\n");
printf ("\nAnda telah masuk dalam permainan tebak angka");
printf("\nPikirkan angka dari 0 sampai 15");
printf ("\nApakah angka dibawah ada dipikiran anda?");
17
printf("\n 8 9 10 11 12 13 14 15 \njika ada maka ketik huruf '1'
jika tidak maka ketik huruf '0' = ");
scanf(" %d", &a);
printf("\n 4 5 6 7 12 13 14 15 \njika ada maka ketik huruf '1'
jika tidak maka ketik huruf '0' = ");
scanf(" %d", &b);
printf("\n 2 3 6 7 10 11 14 15 \njika ada maka ketik huruf '1'
jika tidak maka ketik huruf '0' = ");
scanf(" %d", &c);
printf("\n 1 3 5 7 9 11 13 15 \njika ada maka ketik huruf '1' jika
tidak maka ketik huruf '0' = ");
scanf(" %d", &d);
hasil=a*pow(2,3)+b*pow(2,2)+c*pow(2,1)+d*pow(2,0);
printf("angka yang kamu pikikan adalah %d",hasil);
return 0;
}
2.3Tic Tac Toe
#include <stdio.h>
#include <stdlib.h>
char matrix[3][3]; /* the tic tac toe matrix */
char check(void);
void init_matrix(void);
void get_player_move(void);
void get_computer_move(void);
18
void disp_matrix(void);
int main(void)
{
char done;
printf("This is the game of Tic Tac Toe.\n");
printf("You will be playing against the computer.\n");
done = ' ';
init_matrix();
do {
disp_matrix();
get_player_move();
done = check(); /* see if winner */
if(done!= ' ') break; /* winner!*/
get_computer_move();
done = check(); /* see if winner */
} while(done== ' ');
if(done=='X') printf("You won!\n");
else printf("I won!!!!\n");
disp_matrix(); /* show final positions */
return 0;
}
/* Initialize the matrix. */
void init_matrix(void)
{
int i, j;
19
for(i=0; i<3; i++)
}
printf("\n");
}
/* See if there is a winner. */
char check(void)
{
int i;
for(i=0; i<3; i++) /* check rows */
if(matrix[i][0]==matrix[i][1] &&
matrix[i][0]==matrix[i][2]) return matrix[i][0];
21
for(i=0; i<3; i++) /* check columns */
if(matrix[0][i]==matrix[1][i] &&
matrix[0][i]==matrix[2][i]) return matrix[0][i];
/* test diagonals */
if(matrix[0][0]==matrix[1][1] &&
matrix[1][1]==matrix[2][2])
return matrix[0][0];
if(matrix[0][2]==matrix[1][1] &&
matrix[1][1]==matrix[2][0])
return matrix[0][2];
return ' ';
}
22