Hati Ikhlas – Pikiran CerdasPPLP GemasTIK 2 : Mesin Karakter Hati Ikhlas - Pikiran Cerdas

Teks penuh

(1)

Pendidikan dan Pelatihan Persiapan GemasTIK 2009, Teknik Elektro Unsoed, by aetthea

MESIN KARAKTER.

Tujuan :

1. Membaca pita menggunakan mesin karakter 2. Membangun aplikasi menggunakan konsep project

3. Mampu menyusun aplikasi menggunakan include (.cpp, .h) dalam beberapa file

Properti Pita :

1. Karakter : alphabet, angka

2. Mark : tanda pemberhentian pembacaan pita (., @,…)

Properti Mesin Kareakter :

1. Mesin memiliki umpan untuk masuknya pita karakter

2. Mesin akan memulai bekerja jika tombol Start diaktifkan/ditekan, mesin siap membaca karakter pertama dari pita, jika karakter pertama adalah Mark maka lampu mesin akan menyala sebagai tanda mesin akan berhenti bekerja

3. Setelah mesin hidup, pita dapat dibaca untuk karekater selanjutnya melalui pengaktifan tombol ADV.

(2)

Pendidikan dan Pelatihan Persiapan GemasTIK 2009, Teknik Elektro Unsoed, by aetthea /* Nama File : mesinkar.cpp */

/* Deskripsi : membaca teks yang diakhiri titik, tidak memanfatkan EOF pola pembacaan yang lain */ #include <fcntl.h>

#include <io.h>

char CC; /* karakter yang sedang dibaca */ char FILE_NAME[63]="c:\\pita.txt";

int _handle; /* file handle */ int retval;

char start()

/* Precond. sembarang */

/* Hasil. CC berisi karakter pertama pada pita, CC mungkin mark */ {

_handle =open(FILE_NAME,O_RDONLY); retval=read(_handle, &CC, 1);

if (CC == '.' )

/* hasil. CC adalah karakter berikutnya dari CC lama, mungkin CC mark */ /* Proses : Baca satu karakter dan Cek CC */

char IgnoreBlank()

(3)

Pendidikan dan Pelatihan Persiapan GemasTIK 2009, Teknik Elektro Unsoed, by aetthea char IgnoreTanda()

/* Precond : CC adalah sembarang */ /* Proses akhir : CC /= termasuk tanda */ {

while ( CC == '!' || CC == ';' || CC==char(13) || CC==char(10)) { CC=ADV(); }

return CC; }

/* Nama File : Mesinkar.h

Deskripsi : mesin karakter dengan pembacaan sederhana */ #ifndef MESINKAR_H

#define MESINKAR_H #ifndef MARK

#define MARK '.' #endif

extern char CC; char start(void);

/* Precond. sembarang */

/* Hasil. CC berisi karakter pertama pada pita, CC mungkin mark */

char ADV(void);

/* Precond. karakter pada jendela = CC, CC != mark */

/* hasil. CC adalah karakter berikutnya dari CC lama, mungkin CC mark */ /* Proses : Baca satu karakter dan Cek CC */

char IgnoreBlank();

/* Precond : CC adalah sembarang */ /* Proses akhir : CC /= blank */

char IgnoreTanda();

/* Precond : CC adalah sembarang */ /* Proses akhir : CC /= termasuk tanda */

(4)

Pendidikan dan Pelatihan Persiapan GemasTIK 2009, Teknik Elektro Unsoed, by aetthea /* Nama File : driver.cpp

Deskripsi : menguji modul realisasi mesinkar.cpp */ #include "mesinkar.h"

#include <stdlib.h> #include <stdio.h>

int main(int argc, char *argv[]) {

int i; // Kamus char _CC; // Algoritma _CC=start(); if (_CC == '.')

{ printf("Pita kosong"); } else

do {

printf("%c",_CC); _CC=ADV(); }

while ( _CC != '.'); system("PAUSE"); return 0;

Figur

Memperbarui...

Referensi

Memperbarui...