display
Oktober 7, 2008 at 4:28 pm | In Interface & TOC | 4 Commentsini ada mesinkar.h:
#ifndef MESINKAR_H
#define MESINKAR_H
#include “boolean.h”
#ifndef MARK
#define MARK ‘.’
#ifndef MARK1
#define MARK1 ‘;’
#endif
void START (void);
/* I.S. sembarang */
/* F.S. CC adalah karakter pertama pita*/
/*jika CC == MARK, EOP menyala */
/*jika CC != MARK, EOP mati */
void ADV (void);
/* I.S. CC!=MARK */
/* F.S. CC adalah karakter berikutnya pada I.S */
/* jika CC==MARK, EOP menyala (true) */
boolean EOP (void);
/* true jika CC == MARK*/
void ADV1 (void);
/* I.S. CC!=MARK1 */
/* F.S. CC adalah karakter berikutnya pada I.S */
/* jika CC==MARK1, EOP menyala (true) */
boolean EOP1 (void);
/* true jika CC == MARK1*/
trus, mesinkar.c:
#ifndef MESINKAR_C
#define MESINKAR_C
#include <assert.h>
#include <fcntl.h>
#include <stdio.h>
#include “boolean.h”
#include “mesinkar.h”
char CC;
static char Pita_karakter [1500] = “P08-7015-080418-01.pas” /*nama file yang diuji coba*/
static FILE*fileku;
static int retval;
void START (void);
/* I.S. sembarang */
/* F.S. CC adalah karakter pertama pita*/
/*jika CC == MARK, EOP menyala */
/*jika CC != MARK, EOP mati */
{
FILEKU = fopen (Pita_karakter,”r”);
retval = fscanf (FILEKU, “%c”, &CC);
}
void ADV (void);
/* I.S. CC!=MARK */
/* F.S. CC adalah karakter berikutnya pada I.S */
/* jika CC==MARK, EOP menyala (true) */
{
retval = fscanf (FILEKU, “%c”, &CC);
if ( CC == MARK) {
fclose (FILEKU);
}
}
boolean EOP (void);
/* true jika CC == MARK*/
{ return (CC== MARK); }
void ADV1 (void);
/* I.S. CC!=MARK1 */
/* F.S. CC adalah karakter berikutnya pada I.S */
/* jika CC==MARK1, EOP menyala (true) */
{
retval = fscanf (FILEKU, “%c”, &CC);
if ( CC == MARK1) {
fclose (FILEKU);
}
}
boolean EOP1 (void);
/* true jika CC == MARK1*/
{ return (CC== MARK1); }
dan maindisplay.c:
# include <stdio.h>
# include “mesinkar.h”
# include “mesinkar.c”
int main ()
{ /* KAMUS*/
static char CC;
static char FILE_NAME [1500] = “P08-7015-080418-01.pas”
int retval;
FILE*fileku;
/*ALGORITMA*/
START ();
while (CC!= MARK)
{
while (CC!= MARK1)
{ ADV ();
printf (“%c”, CC);
printf (“/n”);
}
return 0;
}
HEMM HEMM. masih gagal dicompile
gue bingungg deh,
setiap dicompile masalahnya ada di
#include “mesinkar.h”-nya. ada tulisan:
2 I:\mencoba display\maindisplay.c In file included from I:\mencoba display\maindisplay.c
bingungg. tolongin gue.
makasihh.
oh iyaa, yg buadd main displaynya. kan gue pengennya tuh ngebuattnya si mesin ngebacanya satu persatu karakter per baris. truss… kyknya algoritma mainnya anehh. msh dicoba2 lagi sihh
tappi teteupp nihh
yang masalah #include “mesinkar.h”-nya bgmna ituu?
makasihh sekali lagi.
by nabila
& 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.
#endif-nya seharusnya ditulis di bawah sendiri, di akhir file/tulisan, bukan sebelum prototipe fungsi.
Terus, seingetku, mesinkar.c nggak perlu ada #ifndef bla..bla..bla kayak file header dan nggak di-include ke file main.
Komentar oleh Hanugrha Abidianto — Oktober 8, 2008 #
Tambahan:
Di file mesinkar.h:
nggak perlu pakai #ifndef … sebelum define MARK dan define MARK1 karena #define yang dipakai itu untuk deklarasi konstanta.
Komentar oleh Hanugrha Abidianto — Oktober 8, 2008 #
untuk display, kan udah ada contoh algoritma di di modul “contoh program kecil c”? (bab file eksternal). kode disitu tinggal di modifikasi sedikit aja jadi, kan?
Komentar oleh Andika — Oktober 8, 2008 #
thenkyuu hanugg & andhika
Komentar oleh bhellabhello — Oktober 11, 2008 #