kalimat.h
September 30, 2008 at 12:31 am | In ADT & kumpulan fungsi, Compiler | 1 CommentMenyimpan adt yang aku buat untuk compile.c, juga ada beberapa fungsiĀ untk string yang mungkin berguna.
oleh andika
—————————————————————————————
#ifndef kalimat_H
#define kalimat_H
typedef char barisfile[500][500]; /*ADT untuk merekam file pascal, biar rapih. yang pertama untuk no. baris, yang kedua untuk string tiap baris */
void TulisBarisKalimat(barisfile S, int barisawal, int barisakhir){
int k,l;
for(k=barisawal;k<=barisakhir;k++){
for(l=0;S[k][l]!= ”;l++){printf(“%c”,S[k][l]);};
};
};
/* untuk ADT barisfile: Menuliskan ke layar kalimat per baris dari tipe baris file, dibuat untuk keperluan testing*/
int CariAkhirKata(char *S, char *kalimat){
int i,k;
k=0;
for (i=0;S[i]!=”;i++){
if(S[i]=kalimat[k]){
while((kalimat[k] != ”) && (S[i]==kalimat[k])){
i++;
k++;
}
if (kalimat[k] == ”){return i;};
};
k=0;};
if(S[i] == ”){return 0;};
};
/*Mencari string kalimat pada string S. Jika ketemu memberikan index karakter kalimat terakhir, 0 jika tidak ketemu*/
int JumlahBaris(barisfile P){
int i;
i=0;
while (P[i][0] != ”)
{i++;};
return i;};
/*mengembalikan jumlah baris yang ada di barisfile P */
int PanjangKalimat(char* S){ /*mengembalikan jumlah karakter yang ada di sebuah string (termasuk ”), */
int i;
i =0;
while(S[i] != ”){
i++;};
return i;
};
void SalinKalimat1(char *S1,char *S2){ /*Membuat pengganti strcpy. Pendekatan array, Masih belum berjalan dengan sempurna kalau S2 lebih pendek dari S1, tapi bingung dimana salahnya..*/
int i;
for (i=0;S2[i] != ”;i++){
S1[i] = S2[i];
};
};
void SalinKalimat2(char *S1, char *S2) /*Membuat pengganti strcpy. Mencoba pendekatan hanya dengan pointer saja, jalan dengan baik.*/
{
while (*S2 != 0)
{*S1++ = *S2++;}
*S1 = 0;
};
void GeserBarisKebawah(barisfile S, int a){
int i,j;
i = JumlahBaris(S);
while (a <= i){
j = i+1;
SalinKalimat2(S[j],S[i]);
i–;
};
};
/*Untuk ADT barisfile: menggeser satu step ke bawah*/
#endif
1 Komentar »
RSS umpan untuk komentar-komentar dalam tulisan ini. URI Lacak Balik
Tinggalkan komentar
Blog pada WordPress.com. | Theme: Pool by Borja Fernandez.
Entries and comments feeds.
Nice work,
ati2 jangan sampe dicuri pihak lain
Komentar oleh Ata — Oktober 1, 2008 #