Touring pantai Ujung Genteng-Curug Cikaso-Pelabuhan Ratu

Akhirnya punya blog baru, setelah yang lama ngga pernah diurusin, tapi kemungkinan nasib blog ini akan sama saja dengan blog gw yang terdahulu, hehe…  nah postingan pertama ini gw akan memberikan foto2 pengalaman gw 3 hari 2 malam touring ke pantai ujung genteng, dan curug cikaso, dan beberapa daerah lain daerah kabupaten sukabumi sama temen gw ber 6. Tapi yang gw post, cm yang di pantai ujung genteng sama Curug Cikaso. Siapa tau jadi referensi temen2 buat touring, hehe…
Perjalanan yang cukup jauh ini dimulai pada hari terakhir UAS semester 6, tanggal 14 juni 2010 sampai 16 juni 2010. Nih foto2nya…
nah untuk tujuan pertama adalah curug cikaso, ni dia foto2nya…

Foto Sebelum berangkat, gw ada di pojok paling kanan ^^v

untuk foto2 pantainya nih…

Pantainya masih putih bersih

gw di pantai ujung genteng :)

nih liat curugnya, pasti mantap, curug Cikaso…

mantap banget nih curug

Posted in Uncategorized | Leave a comment

Tugas Alstrukdat ADT Point

ada 4 file yang dibutuhkan, yakni boolean.h, point.h, point.c, dan main.c untuk menjalankan program ADT point.h. Semoga tugas ini bermanfaat untuk semua…

BOOLEAN.h

#ifndef BOOLEAN_H
#define BOOLEAN_H
#define true 1
#define false 0
#define boolean unsigned char
#endif

#ifndef BOOLEAN_H#define BOOLEAN_H#define true 1#define false 0#define boolean unsigned char#endif

POINT.h

/* file : point.h */

/* ADT point */


#ifndef POINT_h

#define POINT_h

#include “BOOLEAN.h”


/* definisi ADT point */

typedef struct

{

int x; /* absis */

int y; /* ordinat */

} point;


/* definisi prototipe primitif */

/*** konstruktor membentuk point ***/

point makepoint(int x,int y);

/* membentuk sebuah point dari komponen-komponennya */


/*** selektor point ***/

int getabsis (point p);

/* mengirimkan komponen absis dari p */


int getordinat(point p);

/* mengirimkan komponen ordinat dari p */


/*** destruktor/dealokator:tidak perlu ***/

/*** set nilai komponen point ***/

void setabsis(point *p,int newx);

/* men-set komponen absis dari p */


void setordinat(point *p,int newy);

/* men-set komponen ordinat dari p */


/* kelompok interaksi dengan I/O device, baca/tulis */

void bacapoint(point *p);

/* bacapoint(x,y,p) membentuk p dari x dan y yang dibaca */


void tulispoint(point p);

/* nilai p ditulis ke layar dg format (X,Y) */


/* kelompok operasi aritmatika terhadap byte */

point pluspoint(point p1,point p2);

/* menghasilkan salinan p yang berisi p1+p2 */

/* melakukan operasi penjumlahan vektor */


point minuspoint(point p1,point p2);

/* menghasilkan p1-p2 */


/*** kelompok operasi relasional terhadap point ***/

boolean EQ(point p1,point p2);

/* mengirimkan true jika p1=p2 */


boolean NEQ(point p1,point p2);

/* mengirimkan true jika p1 tidak sama dengan p2 */


boolean LT(point p1,point p2);

/* mengirimkan true jika p1<p2 */

/* definisi lebih kecil:lebih “kiri-bawah” dalam bidang kartesian */


boolean GT(point p1,point p2);

/* mengirimkan true jika p1>p2 */

/* definisi lebih besar:lebih “kanan-atas” dalam bidang kartesian */


/* kelompok menentukan dimana p berada */

boolean isorigin(point p);

/* menghasilkan true jika p adalah titik origin */


boolean isonsbx(point p);

/* menghasilkan true jika p terletak pada sumbu x */


boolean isonsby(point p);

/* menghasilkan true jika p terletak pada sumbu y */


int kuadran(point p);

/* menghasilkan kuadran dari p: 1,2,3,atau 4 */

/* precondition: p bukan titik origin dan p tdk terletak pd slh satu sumbu */


/* kelompok operasi lain terhadap type */

point nextx(point p);

/* mengirim salinan p dengan absis ditambah satu */


point nexty(point p);

/* mengirim salinan p dengan ordinat ditambah satu */


point plusdelta(point p,int deltax,int deltay);

/* mengirim salinan p yang absisnya = absis(p)+deltax dan */

/* ordinatnya = ordinat(p)+deltay */


point mirrorofpoint(point p,boolean sbx,boolean sby);

/* menghasilkan salinan p yang dicerminkan */

/* tergantung nilai sbx dan sby */

/* jika sbx bernilai true, maka dicerminkan terhadap sb x */

/* jika sby bernilai true, maka dicerminkan terhadap sb y */


float jarak0(point p);

/* menghitung jarak p ke (0,0) */


void geserpoint(point *p,int deltax,int deltay);

/*I.S : p terdefinisi */

/*F.S : p digeser sebesar deltax dan ordinatnya sebesar delta y*/


void geserpointkesbx(point *p);

/* I.S : p terdefinisi */

/* F.S : p di sumbu x dg absis = absis semula */

/* proses : tergeser ke sumbu x */

/* contoh : jika koordinat semula(9,9) menjadi (9,0)*/


void geserpointkesby(point *p);

/* I.S : p terdefinisi */

/* F.S : p di sumbu y dg absis = absis semula */

/* proses : tergeser ke sumbu y */

/* contoh : jika koordinat semula(9,9) menjadi (0,9)*/



void mirrorpoint(point *p,boolean sbx,boolean sby);

/* I.S : p terdefinisi */

/* F.S : p dicerminkan tergantung nilai sbx atau sby */

/* jika sbx true maka dicerminkan thd sumbu x */

/* jika sby true maka dicerminkan thd sumbu y */


void putarpoint(point *p,float sudut);

/* I.S : p terdefinisi */

/* F.S : p diputar sebesar sudut derajat */


#endif

POINT.c
#include <stdio.h>
#include <math.h>
#include “POINT.h”
#include “BOOLEAN.h”

point makepoint(int x,int y){
point temp; //buat varibel tipe bentukan point bernama temp.
temp.x=x;
temp.y=y;
return temp;
}
int getabsis (point p){
return p.x; //mendapatkan nilai absis x
}

int getordinat(point p){
return p.y; //mendapatkan nilai ordinat y
}

void setabsis(point *p,int newx){
(*p).x=newx; // menSet nilai x
}

void setordinat(point *p,int newy){
(*p).y=newy; // menSet nilai y
}

void bacapoint(point *p){
printf(“masukkan nilai x :\n”);
scanf(“%d”,&(*p).x); //membaca inputan x dari keyboard
printf(“masukkan nilai y :\n”);
scanf(“%d”,&(*p).y); //membaca inputan y dari keyboard
}

void tulispoint(point p){
printf(“x : %d \n”, p.x); //mencetak nilai x dan y ke layar
printf(“y : %d \n \n”, p.y);
}

point pluspoint(point p1,point p2){
point temp;
temp.x = p1.x + p2.x;
temp.y = p1.y + p2.y;
return temp;
}

point minuspoint(point p1,point p2){
point temp;
temp.x = p1.x – p2.x;
temp.y = p1.y – p2.y;
return temp;
}

boolean EQ(point p1,point p2){
if((p1.x==p2.x) && (p1.y==p2.y)){
return 1;
}
else{
return 0;
}
}

boolean NEQ(point p1,point p2){
if((p1.x != p2.x) && (p1.y != p2.y)){
return 1;
}
else{
return 0;
}
}

boolean LT(point p1,point p2){
if((p1.x < p2.x) && (p1.y < p2.y)){
return 1;
}
else{
return 0;
}
}

boolean GT(point p1,point p2){
if((p1.x > p2.x) && (p1.y > p2.y)){
return 1;
}
else{
return 0;
}
}

boolean isorigin(point p){
if((p.x == 0) && (p.y == 0)){
return 1;
}
else{
return 0;
}
}

boolean isonsbx(point p){
if(p.y == 0){
return 1;
}
else{
return 0;
}
}

boolean isonsby(point p){
if(p.x == 0){
return 1;
}
else{
return 0;
}
}

int kuadran(point p){
if (p.x>0 && p.y>0)          //syarat bila point p terletak di kuadran 1
return 1;               //mengembalikan nilai p terletak dikuadran 1
else if (p.x<0 && p.y>0)    //syarat bila point p terletak di kuadran 2
return 2;             //mengembalikan nilai p terletak dikuadran 2
else if (p.x<0 && p.y<0)    //syarat bila point p terletak di kuadran 3
return 3;             //mengembalikan nilai p terletak dikuadran 3
else if (p.x>0 && p.y<0)    //syarat bila point p terletak di kuadran 4
return 4;             //mengembalikan nilai p terletak dikuadran 4
}

point nextx(point p){
point temp;
temp.x=p.x + 1;
return temp;
}

point nexty(point p){
point temp;
temp.x=p.x;
temp.y=p.y + 1;
return temp;
}
point plusdelta(point p,int deltax,int deltay){
point temp;
temp.x=p.x + deltax;
temp.y=p.y + deltay;
return temp;
}
point mirrorofpoint(point p,boolean sbx,boolean sby){
point temp;         //membuat variabel bertipe point bernama temp
if(sbx){            //cek kondisi
temp.x=-1 * (p.x);         //dicermikan terhadap sumbu x
temp.y=p.y;
}
else if(sby){
temp.x=p.x;
temp.y=-1 * (p.y);     //dicermikan terhadap sumbu y
}
return temp;            //mengembalikan nilai po bertipe point,sebab ini adalah fungsi
}
float jarak0(point p){
float jarak;
jarak = sqrt((p.x*p.x)+(p.y*p.y));
return jarak;
}
void geserpoint(point *p,int deltax,int deltay){
(*p).x=(*p).x+deltax;//geser point sejauh deltax
(*p).y=(*p).y+deltay;//geser point sejauh deltay
}

void geserpointkesbx(point *p){
(*p).x=(*p).x;//nilai x tetap.
(*p).y=0;   //nilai y di set menjadi 0
}
void geserpointkesby(point *p){
(*p).y=(*p).y;  //nilai y tetap
(*p).x=0;//nilai x di set menjadi 0
}

void mirrorpoint(point *p,boolean sbx,boolean sby){
if(sbx){ //cek kondisi
(*p).y=-1*(*p).y;    //dicerminkan terhadap sumbu x.
(*p).x=(*p).x;
}
else{
(*p).x=-1*(*p).x;      //dicerminkan terhadap sumbu y.
(*p).y=(*p).y;
}
}

void putarpoint(point *p,float sudut){
double (d1);
double (d2);
(d1)=(*p).x*cos(sudut)-(*p).y*sin(sudut);
(d2)=(*p).x*sin(sudut)+(*p).y*cos(sudut);
printf(“nilai data13 setelah diputar sebesar 30 derajat : (%0.2f,%0.2f) \n”,d1,d2);
printf(” \n”);
printf(” \n”);
}

Main.c
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include”BOOLEAN.h”
#include”POINT.h”

int main(){
point p,q,r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,plus,cermin;
/* test membuat point*/
p=makepoint(10,10);
q=makepoint(20,30);
printf(“=====================TUGAS1 ADT POINT=========================\n”);
printf(” \n”);
printf(” \n”);
printf(” \n”);
printf(” \n”);
printf(“nilai X1 test: %d \n”,p.x);
printf(“nilai Y1 test: %d \n \n”,p.y);
printf(“nilai X2 test: %d \n”,q.x);
printf(“nilai Y2 test: %d \n \n”,q.y);
/* test set dan get point*/
setabsis(&q,20);
setordinat(&q,30);
printf(“nilai x yang baru setelah di set: %d \n”,getabsis(q));
printf(“nilai y yang baru setelah di set: %d \n \n” ,getordinat(q));
/* test baca point dari keyboard*/
bacapoint(&q);
tulispoint(q);
/* test tambah point*/
a=makepoint(15,20);
printf(“DATA PERCOBAAN : \n”);
printf(“Data1 : \n”);
printf(“nilai X1: %d \n”,a.x);
printf(“nilai Y1: %d \n”,a.y);
b=makepoint(20,30);
printf(“Data2 : \n”);
printf(“nilai X2: %d \n”,b.x);
printf(“nilai Y2: %d \n \n”,b.y);
r=pluspoint(a,b);
printf(“Hasil penjumlahan Data1 dan Data2 : ( %d , %d )\n”,r.x,r.y);
/*  test kurang point*/
r=minuspoint(a,b);
printf(“Hasil pengurangan Data1 dan Data2 : ( %d , %d )\n”,r.x,r.y);
/* test equivalen*/
if (EQ(a,b)){
printf(“nilai absis dan ordinat data percobaan sama(EQ) \n”);
}
else{
printf(“nilai absis dan ordinat data percobaan berbeda(NEQ) \n”);
}
/* test not equivalen*/
if (NEQ(a,b))
printf(“nilai absis dan ordinat data percobaan berbeda(NEQ) \n \n”);
else
printf(“nilai absis dan ordinat data percobaan sama(EQ) \n \n”);
/* test lebih kecil*/
if (LT(a,b))
printf(“data1 lebih kecil dari data2 \n \n”);
else
printf(“data1 tidak lebih kecil dari data2 \n \n”);
/* test lebih besar*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data3 : \n”);
c=makepoint(10,15);
printf(“nilai X3: %d \n”,c.x);
printf(“nilai Y3: %d \n”,c.y);
printf(“Data4 : \n”);
d=makepoint(5,9);
printf(“nilai X3: %d \n”,d.x);
printf(“nilai Y3: %d \n \n”,d.y);
if (GT(c,d))
printf(“data3 lebih besar dari data4 \n \n”);
else
printf(“data3 lebih kecil dari data4 \n \n”);
/* test point origin*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data5 : \n”);
e=makepoint(0,0);
printf(“nilai X5: %d \n”,e.x);
printf(“nilai Y5: %d \n \n”,e.y);
if(isorigin(e))
printf(“data5 merupakan titik origin \n \n”);
else
printf(“data5 bukan titik origin \n \n”);
/* test point disumbu x*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data6 : \n”);
f=makepoint(2,0);
printf(“nilai X6: %d \n”,f.x);
printf(“nilai Y6: %d \n \n”,f.y);
if(isonsbx(f))
printf(“data6 terletak di sumbu x \n \n”);
else
printf(“data6 tidak terletak di sumbu x \n \n”);
/* test sumbu y*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data7 : \n”);
g=makepoint(0,3);
printf(“nilai X7: %d \n”,g.x);
printf(“nilai Y7: %d \n \n”,g.y);
if(isonsby(g))
printf(“data7 terletak di sumbu y \n \n”);
else
printf(“data7 tidak terletak di sumbu y \n \n”);
/* test kuadran*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data8 : \n”);
h=makepoint(1,-2);
printf(“nilai X8: %d \n”,h.x);
printf(“nilai Y8: %d \n \n”,h.y);
if(kuadran(h)==1){
printf(“data8 berada di kuadran 1 \n \n”);
}
else if (kuadran(h)==2){
printf(“data8 berada di kuadran 2 \n \n”);
}
else if (kuadran(h)==3){
printf(“data8 berada di kuadran 3 \n \n”);
}
else if (kuadran(h)==4){
printf(“data8 berada di kuadran 4 \n \n”);
}

/* test next point x*/
i = nextx(h);
printf(“nilai data8 baru setelah absisnya(x) ditambah 1 : (%d,%d) \n \n”,i.x,i.y);

/* test next point y*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data9 : \n”);
j=makepoint(1,2);
printf(“nilai X9: %d \n”,j.x);
printf(“nilai Y9: %d \n \n”,j.y);
k = nexty(j);
printf(“nilai data9 baru setelah ordinatnya(y) ditambah 1 : (%d,%d) \n \n”,k.x,k.y);
/*test plusdelta*/
plus=plusdelta(j,10,20);
printf(“nilai data9 baru setelah x ditambah 10 dan y ditambah 20 : (%d,%d) \n \n”,plus.x,plus.y);
/*test mirror of point */
printf(“DATA PERCOBAAN : \n”);
printf(“Data10 : \n”);
l=makepoint(3,0);
printf(“nilai X10: %d \n”,l.x);
printf(“nilai Y10: %d \n \n”,l.y);
cermin=mirrorofpoint(l,isonsbx(l),isonsby(l));
printf(“nilai data10 baru setelah pencerminan : (%d,%d) \n \n”,cermin.x,cermin.y);

/*test jarak0*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data11 : \n”);
m=makepoint(3,0);
printf(“nilai X11: %d \n”,m.x);
printf(“nilai Y11: %d \n \n”,m.y);
float jarak = jarak0(m);
printf(“Jarak data11 ke titik (0,0) : %0.0f \n \n”,jarak);
/* test geser point absis sebesar delta x dan ordinat sebesar delta y*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data12 : \n”);
n=makepoint(20,30);
printf(“nilai X12: %d \n”,n.x);
printf(“nilai Y12: %d \n \n”,n.y);
geserpoint(&n,2,3);
printf(“nilai data12 setelah digeser sebesar deltax=2 dan deltay=3 : (%d,%d) \n \n”,n.x,n.y);
/* test geser smb x*/
geserpointkesbx(&n);
printf(“nilai data12 setelah digeser ke sumbux : (%d,%d) \n \n”,n.x,n.y);
/* test geser smb y*/
printf(“DATA PERCOBAAN : \n”);
printf(“Data13 : \n”);
o=makepoint(5,5);
printf(“nilai X13: %d \n”,o.x);
printf(“nilai Y13: %d \n \n”,o.y);
geserpointkesby(&o);
printf(“nilai data13 setelah digeser ke sumbuy : (%d,%d) \n \n”,o.x,o.y);
//    printf(“nilai X : %d,nilai y setelah digeser:%d \n”,o.x,o.y);

/* test putar point*/
putarpoint(&o,30);
printf(“===========================SELESAI=================================”);
getche();
}

Posted in Uncategorized | Leave a comment

Hello world!

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

Posted in Uncategorized | 1 Comment