DIKTAT MATA KULIAH PEMROGRAMAN I BAB XII FILE

dokumen-dokumen yang mirip
DIKTAT MATA KULIAH PEMROGRAMAN I BAB XII FILE

Praktikum 12 FILE. Gambar Struktur data dari file

OPERASI FILE DASAR PEMROGRAMAN

PERTEMUAN XI OPERASI FILE

1. Menciptakan dan mengisi file dengan data karakter dari keyboard /* File program: fputc.c */ #include <stdio.h> #include <stdlib.

PERTEMUAN XI OPERASI FILE

Pemrograman Terstruktur. Pemrosesan File Teks dan File Biner

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-13 Arsip (File) 2

PERTEMUAN VII FILE TEKS & FILE BINER

BAB XII OPERASI FILE

Teknik Pemrograman Terstruktur 1

FILE INPUT/OUTPUT. Overview

Achmad Solichin.

BAB 12 MANIPULATION FILE

PRAKTIKUM 6 PENGULANGAN PROSES 2

MODUL 7 FILE. namafile adalah nama dari file yang akan dibuka/diaktifkan. mode adalah jenis operasi file yang akan dilakukan terhadap file.

Bab 7 File 109 BAB 7 FILE TUJUAN PRAKTIKUM TEORI PENUNJANG. FILE *fopen( const char*nama_file, const char*mode);

BAB IV PENGULANGAN PROSES

Minggu ke-13 Berkas (File)

Modul V Pemrograman Bahasa C ( bagian II )

DIKTAT MATA KULIAH PEMROGRAMAN I BAB VII ARRAY

Baca Tulis File. Untuk dapat membaca atau menulis data dari/ke sebuah file maka langkah yang perlu dilakukan adalah:

Proses Perulangan (Looping) DASAR PROGRAMMING 1

Membuka dan Menutup File

Praktikum 4 PENGULANGAN PROSES

Praktikum 5 PERULANGAN PROSES

LATIHAN DAN KISI-KISI SOAL JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

Tipe Data dan Operator

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

Algoritma Pemrograman. Fery Updi,M.Kom

Algoritme dan Pemrograman

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

Hari : Rabu Pertemuan : 3 Tanggal Praktikum : Oktober 2001 Shift : 4

TUGAS PENDAHULUAN MODUL I PERKENALAN MIKU, COMPILER BAHASA C, DAN STANDARD INPUT-OUTPUT

12/29/2011. Algoritme dan Pemrograman. Bit. Bitwise operator

BAB VI BAHASA C Pendahuluan

DISUSUN OLEH BAB IX. Structt. //untuk. long. int nip; char. nama[31]; char } HAL 1

Pencarian (Searching)

BAB VI PERULANGAN (LOOP)

File. Dalam bahasa pemrograman C, terdapat dua jenis stream: teks (ASCII) dan binari. Minggu ini, FILE dan stream jenis teks akan dibahas.

VARIABEL & TIPE DATA PEMROGRAMAN C++

Perulangan 2 DASAR PEMROGRAMAN

BAB 2. FUNGSI INPUT OUTPUT

Achmad Solichin.

Suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik ganda, misalnya:

INPUT DAN OUTPUT BAHASA C

Bab 2. Dasar-Dasar Pemrograman C

A. TUJUAN PEMBELAJARAN

PRAKTIKUM 5 PENGULANGAN PROSES 1

Algoritma dan Struktur Data. Ramos Somya

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

BAB VII STRING Konstanta String Suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik ganda, misalnya:

Tipe Data, Variabel, Input/Output

MI, KA-D3, SIA, SIB. ADI, S.Kom.

MODUL IV OPERASI DASAR MASUKAN DAN KELUARAN

adalah langkah-langkah yang diambil dalam

STRING DASAR PEMROGRAMAN

LAMPIRAN LISTING PROGRAM ALGORITMA SMS

SATUAN ACARA PERKULIAHAN (SAP)

Praktikum 1. Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa : tipe_data nama_var[ukuran];

Pemrograman I Bab III Tipe Data, Variabel, dan Operasi Perhitungan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

Bahasa C-M6 By Jamilah, Skom 1

UNIVERSITAS WIDYATAMA JURUSAN TEKNIK INFORMATIKA - FAKULTAS TEKNIK Jl. Cikutra No.204 A BAndung UJIAN TENGAH SEMESTER TA.

1. Konstanta String Kostanta ABCDE disimpan dalam memory secara berurutan, dengan komposisi sebagai berikut : Memory rendah.

BAHASA PEMROGRAMAN C

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

Looping : break, continue, nested loop

MENAMPILKAN HASIL Operasi Keluaran (Output)

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

MAKALAH POINTER PADA BAHASA C

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Pada prinsipnya operasi yang dilakukan pada file terdiri dari 3 tahapan : 1. Membuka file 2. Melakukan pemrosesan pada file 3.

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

Praktikum 3 DASAR-DASAR PEMROGRAMAN C

Fungsi : Dasar Fungsi

PENGENALAN BAHASA C DAN C++

Chapter 1 KONSEP DASAR C

Materi : Operasi File

A. TUJUAN PEMBELAJARAN

KONSEP STRING. Nilai string selalu diakhiri dengan tanda NULL (\0)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Pertemuan 11: OPERASI FILE dalam C

Konsep Pemrograman. Bab 14. Struktur 1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

BAB IV INPUT DAN OUTPUT

Seharusnya. if (antrian.tail==max-1) return 0;

STACK DAN QUEUE. Pengertian Stack Dan Queue. stack & queue. Last saved by KENKEINA Created by KENKEINA

TUTORIAL PHP MYSQL Langkah Tepat menjadi Web Developer Handal, menguasai PHP dan MySQL, jalan terbaik membuat website dan aplikasi berbasis web

Pemrograman Dasar C. Minggu 6

A R R A Y. Bentuk umum deklarasi array : type nama_array[ukuran] tipe : menyatakan tipe dasar array ukuran : menyatakan banyaknya elemen pada array

Struct Lanjutan: Studi Kasus

DASAR PEMROGRAMAN. File

Input/Output with files

Dasar Operasi File. Overview. Tujuan Instruksional

Pendahuluan Pemrograman Mikrokontroler

PERTEMUAN KE 11. Linked List. Apa Itu Linked List?

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

BAB 4 PENGENALAN BAHASA C

Hari : Rabu Pertemuan : 4 Tanggal Praktikum : 28 November 2001 Shift : 4

Transkripsi:

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XII FILE IF Tahapan Operasi File Tahapan operasi file pada dasarnya meliputi tiga tahapan : 1. Membuka / Mengaktifkan File 2. Melaksanakan Proses File 3. Menutup File Membuka / Mengaktifkan File Sebelum file dapat diakses (dibaca atau ditulisi), mula-mula file harus diaktifkan lebih dulu. Untuk keperluan ini, fungsi yang digunakan yaitu fopen(). Bentuk deklarasinya adalah : FILE *fopen (char *namafile, char *mode); Dimana : namafile : menyatakan nama dari file yang akan diaktifkan mode : jenis operasi yang akan dilakukan terhadap file Jenis-jenis operasi adalah sebagai berikut : r : Menyatakan file hanya akan dibaca, jika file belum ada maka tidak akan berhasil. w : Menyatakan bahwa file baru diciptakan. Jika file tersebut sudah ada dalam disk, isinya yang lama akan terhapus. a : Untuk membuka file yang sudah ada untuk ditambah dengan data, jika file belum ada akan dibuat yang baru. r+ : Sama dengan r tetapi selain file dapat dibaca, file juga dapat ditulisi w+ : Sama dengan w tetapi selain file dapat ditulisi, file juga dapat dibaca by Eko Budi Setiawan, S.Kom Halaman - 1

Menutup File Apabila suatu file tidak diproses lagi, file perlu ditutup. Hal ini sangat penting terutama jika melakukan pemrosesan file yang jumlahnya lebih dari satu. Untuk menutup file, fungsi yang digunakan adalah fclose(). Bentuk deklarasinya adalah : int fclose (FILE *pf); dilakukan. Fungsi fclose() menghasilkan keluaran berupa nol jika operasi penutupan file berhasil Operasi Penyimpanan dan Pembacaan File File dapat diisi dengan data berupa karakter, dimana proses pengaksesan data karakter di file dilakukan dengan dua cara, yaitu penyimpanan dan pembacaan data. 1. Operasi Penyimpanan Karakter di File Sebuah karakter dapat disimpan dalam file dengan menggunakan fungsi fputc(). Bentuk deklarasi dari fungsi ini : int fputc(char kar, FILE *ptr_file); ptr_file adalah pointer ke FILE yang berisi keluaran dari fopen(), dan kar berupa karakter yang akan disimpan dalam file. Jika operasi puts() berjalan dengan sempurna maka keluaran fungsi akan sama dengan kar, jika tidak maka keluaran fungsi berupa EOF (-1). Hasil yang disimpan di file dengan ekstensi.txt dapat dilihat dengan notepad. 2. Operasi Pembacaan Karakter dari File Untuk melihat isi file yang telah diisi karakter, selain dapat menggunakan fasilitas notepad, dapat pula menggunakan program yang mempunyai fungsi fgetc(). Fungsi ini digunakan untuk membaca karakter disebuah file. Bentuk deklarasinya adalah sebagai berikut : int fgetc(file, FILE *ptr_file); by Eko Budi Setiawan, S.Kom Halaman - 2

File Biner dan File Teks Pada saat file dibuka, file bisa diperlakukan sebagai file biner atau file teks. File biner adalah file yang pola penyimpanan didalam disk berbentuk biner, yaitu seperti bentuk pada memori komputer. Misalnya data bertipe int selalu akan menempati ruang 2 byte, berapapun nilainya. Sedangkan file teks merupakan file yang pola penyimpanannya dalam bentuk karakter. Bilangan bertipe int bisa saja menempati 1 byte, 2 byte dll, tergantung dari nilai bilangan. Sebagai contoh, bilangan 54 akan disimpan dalam 2 byte (berupa karakter 5 dan 4), tetapi bilangin 123 memerlukan 3 byte. File seperti ini bisa dilihat dalam editor bertipe text (disimpan sebagai file dengan esktensi.txt). Penambahan yang perlu dilakukan untuk menentukan mode teks atau biner berupa : - t untuk mode teks - b untuk mode biner Contoh : rt : mode file adalah teks dan file hendak dibaca rt+ : mode file adalah teks dan file bisa dibaca dan ditulisi. Bisa juga ditulis : r+t rb : mode file adalah biner dan file hendak dibaca Operasi Penyimpanan dan Pembacaan File per Int Untuk keperluan menyimpan atau membaca data file bertipe int, C menyediakan fungsi getw() dan putw(). Bentuk deklarasinya : int putw(intnilai, FILE *ptr_file); int getw(file*ptr_file); Kegunaan : - getw() untuk membaca sebuah data bertipe int dari file - putw() untuk menyimpan data bertipe int ke file Operasi Penyimpanan dan Pembacaan data string pada File Dua fungsi dipakai dalam penyimpanan dan pembacaan data string pada file, yaitu fgets() dan fputs(). Bentuk deklarasinya int fputs(char*str, FILE *ptr_file); char fgets(char*str, intn, FILE *ptr_file); by Eko Budi Setiawan, S.Kom Halaman - 3

Kegunaan : - fputs() untuk menyimpan string ke dalam file - fgets() untuk membaca strinf dari file sampai ditemukannya karakter baris baru \n Menghapus File Sebuah file yang sudah terbentuk dapat dihapus secara manual atau melalui program yang dibuat dengan fungsi remove(). Bentuk deklarasinya : int remove (char *namafile); Jika penghapusan file berhasil, akan didapatkan output = 0. Mengganti nama File Sebuah file juga dapat diganti namanya, baik secar manual atau melalui program yang mempunyai fungsi rename(). Bentuk deklarasinya : int rename(char*namafilelama, char *namafilebaru); Jika operasi penggantian berhasil, akan diberikan output = 0. by Eko Budi Setiawan, S.Kom Halaman - 4

Kumpulan Contoh 1. Menciptakan dan mengisi file dengan data karakter dari keyboard #include<stdio.h> #include<stdlib.h> FILE *pf; char kar; //membuka file pf=fopen("coba.txt","a"); if(pf==null) printf("file tidak bisa dibuka\n"); printf("ketikkan apa saja, akhiri dengan ENTER.\n"); printf("program akan membaca perkarakter"); printf(" dan menyimpannya dalam file COBA.TXT\n\n"); //memasukkan karakter per karakter while((kar = getchar())!= '\n') fputc(kar,pf); //menutup file fclose(pf); 2. Membaca isi file dan menambah isinya #include<stdio.h> #include<stdlib.h> FILE *pd; char kar; //Buka file pd=fopen("coba.txt","r+"); if(pd==null) printf("file tidak dapat dibuka \n"); //Baca karakter per karakter sampai ketemu End Of FIle while((kar=fgetc(pd))!= EOF) fputchar(kar); while((kar=getchar())!= '\n') fputc(kar,pd); fclose(pd); //tutup file by Eko Budi Setiawan, S.Kom Halaman - 5

3. Menulis data pada file bertipe biner #include<stdio.h> #include<stdlib.h> FILE *pf; int i,data,nilai; pf=fopen("data.dat","wb"); if(pf==null) printf("file tidak bisa dibuka\n"); printf("masukkan banyaknya data\n"); scanf("%d",&data); for(i=1;i<=data;i++) printf("data yang disimpan : "); scanf("%d",&nilai); putw(nilai,pf); printf("\noke. Data sudah disimpan di file\n"); fclose(pf); 4. Membaca isi file biner menggunakan getw() #include <stdio.h> #include <stdlib.h> FILE *pf; /* ptr ke file */ int nilai, nomor = 0; /* Buka file biner untuk dibaca */ if((pf=fopen("data.dat","rb")) == NULL) printf("file gagal dibuka.\n"); printf("isi file data.dat : \n"); while(1) /* file berhasil dibuka */ nilai = getw(pf); /* Baca sebuah int dr file */ if (feof(pf)!= 0) break; /*Jika akhir file, keluar loop*/ printf("%2d. %d \n", ++nomor, nilai); //Tampilkan ke layar fclose(pf); /* Tutup file */ 5. Membaca isi file teks #include<stdio.h> #include<stdlib.h> #include<string.h> by Eko Budi Setiawan, S.Kom Halaman - 6

FILE *pf; char nama[20]; pf=fopen("coba.txt","r"); if(pf==null) printf("file gagal dibuka\n"); while (fgets(nama,6,pf)) printf("%s\n",nama); fclose(pf); 6. Mengganti nama file #include <stdio.h> #include <stdlib.h> #define PJG 65 int kode; char namafilelama[pjg], namafilebaru[pjg]; printf("nama file yang akan diganti : "); gets(namafilelama); printf("nama file yang baru : "); gets(namafilebaru); kode = rename(namafilelama, namafilebaru); if(kode == 0) printf("nama file sudah diganti\n"); printf("gagal dalam mengganti nama\n"); 7. Menghapus file #include <stdlib.h> #include <stdio.h> #include <conio.h> #define PJG 65 int kode; char namafile[pjg]; printf("nama file yang akan dihapus : "); gets(namafile); kode = remove(namafile); if(kode == 0) printf("file sudah dihapus\n"); printf("gagal dalam menghapus file\n"); by Eko Budi Setiawan, S.Kom Halaman - 7

Sistem Informasi Pelanggan PLN #include <stdio.h> #include <conio.h> #define maks 500 struct PLN char nama[21],alamat[45]; int no_pel; long int meteran_lalu,meteran_skrg,daya,beban,tot_byr,kurang; ; PLN pel[maks]; int bd=0; void tambah(); void tampil(); void urut_no(); void simpan_file(); gotoxy(30,8);printf("selamat DATANG DI..."); gotoxy(22,10);printf("pt. PERUSAHAAN LISTRIK NEGARA (PERSERO)"); gotoxy(25,12);printf("data PELANGGAN PT. PLN DISTRIBUSI"); gotoxy(30,14);printf("jawa BARAT DAN BANTEN"); gotoxy(51,24);printf("'' Tekan Sembarang Tombol ''"); int pil; FILE *f; int banyak=0; f=fopen("data.pln","rb"); if(f!=null) while((bd<maks)&&(fread(&pel[bd],sizeof(pln),1,f)==1)) bd++; banyak++; fclose(f); if(bd==maks) gotoxy(20,8);printf("data DI MEMORI PENUH,LAKUKAN BACKUP FILE\n"); gotoxy(30,8);printf("file GAGAL DI BACA..!!\n"); gotoxy(22,12);printf("terdapat %d Record, Di File Data Base PLN \n",banyak); gotoxy(26,14);printf("distribusi Jawa Barat dan Banten"); gotoxy(34,24);printf("''tekan Sembarang tombol, untuk melanjutkan''"); do gotoxy(36,6);printf("menu PILIHAN"); gotoxy(22,8);printf("=========================================="); gotoxy(24,10);printf("1. Tambah Data Pelanggan"); gotoxy(24,11);printf("2. Tampil Data Pelanggan"); gotoxy(24,12);printf("3. Pengurutan Berdasarkan No Pelanggan"); gotoxy(24,13);printf("4. Simpan Data Ke File Data Base"); gotoxy(24,14);printf("5. Keluar Program"); gotoxy(22,16);printf("=========================================="); gotoxy(38,18);printf("pilihan : ");scanf("%d",&pil); if(pil==1) tambah(); if(pil==2) tampil(); if(pil==3) urut_no(); if(pil==4) by Eko Budi Setiawan, S.Kom Halaman - 8

simpan_file(); while (pil!=5); gotoxy(25,8);printf("this Program Is Turn Off...!!!"); gotoxy(30,10);printf("hatur Nuhuun...!!!"); gotoxy(27,12);printf("tos Nganggo I'eu Program"); gotoxy(32,14);printf("press any key..."); return 0; void tambah() int pil2; if (bd<maks) awal: gotoxy(24,2);printf("pemasukan Data Pelanggan PLN ke-%d",bd+1); gotoxy(18,4);printf("============================================="); gotoxy(20,6);printf("nomor Pelanggan : ");scanf("%d",&pel[bd].no_pel); if((pel[bd].no_pel<1000) (pel[bd].no_pel>9999)) gotoxy(26,10);printf("data Yang Dimasukan Salah..."); gotoxy(29,12);printf("4 Digit ( 1000-9999 )"); goto awal; goto akhir; akhir: gotoxy(20,7);printf("nama Pelanggan : ");fflush(stdin);gets(pel[bd].nama); gotoxy(20,8);printf("alamat Pelanggan : ");fflush(stdin);gets(pel[bd].alamat); gotoxy(20,9);printf("stand Meteran Bulan Lalu : ");scanf("%li",&pel[bd].meteran_lalu); gotoxy(20,10);printf("stand Meteran Bulan Sekarang : ");scanf("%li",&pel[bd].meteran_skrg); pel[bd].kurang=pel[bd].meteran_skrg-pel[bd].meteran_lalu; daya: gotoxy(20,11);printf("besarnya Daya Yang digunakan :"); gotoxy(24,13);printf("1. 900 Watt"); gotoxy(24,14);printf("2. 1.300 Watt"); gotoxy(24,15);printf("3. 2.200 Watt"); gotoxy(24,16);printf("4. 3.300 Watt"); gotoxy(24,17);printf("5. 6.600 Watt"); gotoxy(24,18);printf("6. 13.600 Watt"); gotoxy(20,20);printf("masukan No Pilihan Daya : ");scanf("%d",&pil2); if((pil2<1) (pil2>6)) gotoxy(20,22);printf(" Pilihan Hanya 1-6...!! \n"); goto daya; goto dy; dy: if(pil2==1) pel[bd].daya=900; pel[bd].beban=28000; if(pil2==2) pel[bd].daya=1300; pel[bd].beban=30000; by Eko Budi Setiawan, S.Kom Halaman - 9

if (pil2==3) pel[bd].daya=2200; pel[bd].beban=35000; if (pil2==4) pel[bd].daya=3300; pel[bd].beban=40000; if (pil2==5) pel[bd].daya=6600; pel[bd].beban=45000; if (pil2==6) pel[bd].daya=13600; pel[bd].beban=60000; pel[bd].tot_byr=(500*(pel[bd].meteran_skrg-pel[bd].meteran_lalu)+pel[bd].beban); bd++; gotoxy(30,8);printf("data Disimpan Di Memori"); gotoxy(22,10);printf("sebelum Keluar Program Simpan Data dulu.."); gotoxy(28,13);printf("agar DATA TIDAK HILANG...!!"); gotoxy(22,10);printf("data Penuh,Penambahan Data Dibatalkan"); gotoxy(34,24);printf("''tekan sembarang tombol, untuk melanjutkan''"); void tampil() int i; if (bd>0) for(i=0;i<bd;i++) gotoxy(30,2);printf("data Pelanggan PLN"); gotoxy(10,3);printf("=============================================================" ); gotoxy(30,5);printf("pelanggan PLN Ke-%d",i+1); gotoxy(16,7);printf("nomor Pelanggan : %d",pel[i].no_pel); gotoxy(16,8);printf("nama Pelanggan : %s",pel[i].nama); gotoxy(16,9);printf("alamat Pelanggan : %s",pel[i].alamat); gotoxy(16,10);printf("daya Yang Digunakan : %li Watt",pel[i].daya); gotoxy(16,11);printf("biaya Beban : Rp. %li",pel[i].beban); gotoxy(16,12);printf("pemakaian : %li kwh",pel[i].kurang); gotoxy(16,13);printf("total Bayar Bulan Sekarang : Rp. %li",pel[i].tot_byr); i++; if (i<bd) gotoxy(31,15);printf("pelangan PLN Ke-%d",i+1); gotoxy(16,17);printf("nomor Pelanggan : %d",pel[i].no_pel); gotoxy(16,18);printf("nama Pelanggan : %s",pel[i].nama); gotoxy(16,19);printf("alamat Pelanggan : %s",pel[i].alamat); gotoxy(16,20);printf("daya Yang Digunakan : %li Watt",pel[i].daya); gotoxy(16,21);printf("biaya Beban : Rp. %li",pel[i].beban); gotoxy(16,22);printf("pemakaian : %li kwh",pel[i].kurang); gotoxy(16,23);printf("total Bayar Bulan Sekarang : Rp. %li",pel[i].tot_byr); gotoxy(34,25);printf("''tekan sembarang tombol, untuk melanjutkan''"); by Eko Budi Setiawan, S.Kom Halaman - 10

gotoxy(34,25);printf("''tekan sembarang tombol, untuk melanjutkan''"); gotoxy(22,8);printf("data Tidak Ditemukan di File Data Base"); gotoxy(32,10);printf("pt. PLN (PERSERO)"); gotoxy(25,12);printf("distribusi JAWA BARAT DAN BANTEN"); void urut_no() int i,j; PLN temp; if (bd>1) for(i=0;i<bd-1;i++) for(j=i+1;j<bd;j++) if(pel[i].no_pel>pel[j].no_pel) temp=pel[i]; pel[i]=pel[j]; pel[j]=temp; gotoxy(24,10);printf("pengurutan Berdasarkan No Pelanggan"); gotoxy(30,12);printf("telah DILAKSANAKAN..!!"); gotoxy(22,10);printf("pengurutan Data dibatalkan, DATA KURANG..!! \n"); gotoxy(34,24);printf("''tekan sembarang tombol, untuk melanjutkan''"); void simpan_file() FILE*f; int i; f=fopen("data.pln","wb"); if(f!=null) for(i=0;i<bd;i++) fwrite(&pel[i],sizeof(pln),1,f); fclose(f); gotoxy(16,8);printf("penyimpanan data selesai, File Disimpan di Data Base"); gotoxy(32,10);printf("pt. PLN (PERSERO)"); gotoxy(25,12);printf("distribusi JAWA BARAT DAN BANTEN"); gotoxy(28,8);printf("penyimpanan Data Gagal"); gotoxy(32,10);printf("pt. PLN (PERSERO)"); gotoxy(25,12);printf("distribusi JAWA BARAT DAN BANTEN"); gotoxy(34,24);printf("''tekan sembarang tombol, untuk melanjutkan''"); by Eko Budi Setiawan, S.Kom Halaman - 11