Kamis, 01 November 2018

Minggu, 28 Oktober 2018

Operasi File Pada Bahasa C Beserta Contohnya


Terdapat 3 mode utama pada file yaitu r (read), w (write), dan a (append). Operasi utama pada file diantaranya membaca, menutup, menghapus, dan mengubah (truncate).
Berikut struktur dan cara mendeklarasikan file :

FILE *fp; //nama variabel file fp
fp = fopen("data.txt", w); //membuka file fp mode w

       statement;

fclose(fp); //menutup file
Mode pada file :

Mode
Fungsi
r
Membaca file ( file harus sudah ada )
w
Menulis file ( file yang sudah ada akan dihapus )
a
Membuka file yang sudah ada dan pada prosesnya dilakukan penambahan saat menulis ( jika file belum ada, otomatis akan dibuat )
r+
Membaca file, tetapi juga memiliki fungsi lain yaitu dapat menulis
w+
Menulis file tetapi juga dapat membaca (file yang sudah ada akan dihapus)



class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-yfti-cnfc: 4; text-align: center;"> a+
Membuka file yang sudah ada dan prosesnya dilakukan penambahan saat menulis dan dapat membaca file

Membuat file :

Untuk membuat sebuah file yang kita perlukan hanyalah menggunakan fungsi FILE yang dilanjutkan pointer nama variabel file tersebut, FILE *nama variabel;. contohnya yaitu :
FILE *fp;

Membuka file :

Untuk membuka sebuah file dibutuhkan sebuah fungsi fopen, directory serta nama file dan mode file,  nama variabel file = fopen("nama file", "mode file");. Contohnya :
fp = fopen("data.txt", "r");

Menulis data ke file :

Terdapat banyak fungsi untuk menulis sebuah file diantaranya ada fungsi fputs ada fprintf. Untuk menggunakan fputs deklarasinya yaitu fputs(namavaariabel,namafile);. Sedangkan untuk menggunakan fprintf deklarasinya yaitu fprintf(namafile, "kontanta char", nama variabel);.
Contohnya :
fputs(data,fp);
fprintf(fp, "%s", data);

Contoh program : 

#include <stdio.h>

int main()
{
    char data[50];
    int i=0;
    FILE *fp;

    fp=fopen("data.txt", "w");

    for(i=0; i<5; i++)
    {
        printf("Masukkan data ke-%d : ", i+1); fflush(stdin); gets(data);
        fprintf(fp, "%s\n", data);
    }
    fclose(fp);

    printf("\n\nData berhasil ditulis");
    return 0;
}
Menulis File

Menulis File 1
Membaca data dari file :

Jika kita bisa menulis tentu saja kita juga perlu membaca, sama halnya menulis ada beberapa fungsi untuk membaca diantaranya adalah fgets yang hanya bisa membaca string dan fscanf bisa membaca string maupun bilangan. Untuk mendeklarasikan fgets yaitu fgets(namavariabel, jumlahstring, namafile);, sedangkan untuk fscanf yaitu fscanf(namafile, "konstanta char", &nama variabel);.

Contohnya :

fgets(data, 50, fp);
fscanf(fp, "%s", &data);

Contoh Programnya :

#include <stdio.h>

int main()
{
    char data[50];
    int i=1;
    FILE *fp;

    fp=fopen("data.txt", "r");

    while(fgets(data,50,fp)!=NULL) //membaca dan mengulang sampai data habis
    {
        printf("Data ke-%d : %s", i, data);
        i++;
    }
    fclose(fp);

    printf("\n\nData berhasil dibaca");
    return 0;
}
Membaca file

Menutup file :

Untuk menutup file kita hanya perlu fungsi fclose(namavariabel), contohnya : 
fclose(fp);




Input dan Output File:


Input dan Output File pada Bahasa Pemrograman C
Bahasa C menyediakan akses pada fungsi tingkat tinggi serta tingkat rendah untuk menangani file di perangkat penyimpanan kita. Seorang programmer bahasa C harus bisa membuka, menutup, menulis serta membaca sebuah file text atau biner untuk media penyimpanan. Nah, pada pembahasan kali ini kita akan belajar cara memanajemen file pada bahasa pemrograman C.

A. Membuka dan Menutup File

 

1. Membuka File

Untuk membuka file yang sudah ada kita dapat menggunakan fungsi fopen(). Fungsi ini akan menginisialisasi objek dari tipe FILE yang berisi semua informasi yang diperlukan untuk mengontrol berkas / file.

Format Penulisan (pendeklarasian variabel):
FILE *nama_variabel;

Format Penulisan (membuka file):
fopen("lokasi_file/nama_file", "jenis_operasi_file");

Jenis Operasi File:
Jenis Operasi Deskripsi
r Hanya membaca file text.
w Membuat file text baru. Jika file sudah ada, maka isi file tersebut akan dikosongkan.
a Menambahkan teks pada file text. Jika file tidak ada, maka file yang baru akan dibuat.
r+ Membaca dan menulis teks pada file text.
w+ Membaca dan menulis teks pada file text. Jika file sudah ada, maka file tersebut akan di replace. Sedangkan jika file tidak ada, maka file baru akan dibuat.
a+ Membaca dan menambahkan teks pada file text. Jika file tidak ada, maka file baru akan dibuat.
rb Hanya membaca file biner.
wb Membuat file biner baru. Jika file sudah ada, maka isi file tersebut akan dikosongkan.
ab Menambahkan teks pada file biner. Jika file tidak ada, maka file yang baru akan dibuat.
rb+ atau r+b Membaca dan menulis teks pada file biner.
wb+ atau w+b Membaca dan menulis teks pada file biner. Jika file sudah ada, maka file tersebut akan di replace. Sedangkan jika file tidak ada, maka file baru akan dibuat.
ab+ atau a+b Membaca dan menambahkan teks pada file biner. Jika file tidak ada, maka file baru akan dibuat.

2. Menutup File

Untuk menutup file kita dapat menggunakan fungsi fclose(). Fungsi ini digunakan untuk menutup file apabila file sudah tidak diproses lagi. Karena adanya keterbatasan jumlah file yang dapat dibuka secara serentak, maka file harus ditutup.

Format Penulisan:
fclose(nama_variabel_file);

Contoh Penulisan :
#include <stdio.h>

main() {
   FILE *file;

   file = fopen("file.txt", "r");
   if(file == NULL){
       printf("File tidak ditemukan!");
   }else{
       printf("File tersedia!");
   }
   fclose(file);
   getch();
}

Output :
Membuka dan menutup file dengan fungsi fopen() dan fclose()
Gambar 1. Membuka dan menutup file dengan fungsi fopen() dan fclose()


B. Menulis File

Untuk menulis file kita dapat menggunakan fungsi fputc(), fputs() dan fprintf(). Fungsi fputc() digunakan untuk menulis nilai karakter (char), sedangkan fungsi fputs() dan fprintf() digunakan untuk menulis sebuah string.

Format Penulisan fputc():
fputc('karakter', nama_variabel_file);

Format Penulisan fputs():
fputs("string", nama_variabel_file);

Format Penulisan fprintf():
fprintf(nama_variabel_file, "string");

Contoh Penulisan :
#include <stdio.h>

main() {
   FILE *file;

   file = fopen("file.txt", "w+");
   fputc('Ini adalah karakter', file);
   fputs("\nstring pada fungsi fputs()\n", file);
   fprintf(file, "string pada fungsi fprintf()\n");
   fclose(file);
   printf("File berhasil dibuat & text berhasil dimasukan kedalam file.");
   getch();
}

Output :
Menulis file dengan fungsi fputc(), fputs() dan fprintf()
Gambar 2. Menulis file dengan fungsi fputc(), fputs() dan fprintf()


C. Membaca File

Untuk membaca file kita bisa menggunakan fungsi fgetc(), fgets() dan fscanf(). Fungsi fgetc() digunakan untuk membaca karakter pada file, sedangkan fungsi fgets() dan fscanf() digunakan untuk membaca string pada file. Pada fungsi fgets() hanya dapat membaca string pada file sampai ditemukannya baris baru (\n) atau sampai jumlah maksimal karakter yang sudah ditentukan, sedangkan pada fungsi fscanf() hanya membaca string sampai ditemukannya karakter spasi yang pertama.

Format Penulisan fgetc():
fgetc(nama_variabel_file);

Format Penulisan fgets():
fgets(nama_variabel, jml_karakter, nama_variabel_file);

Format Penulisan fscanf():
fscanf(nama_variabel_file, "string_kontrol", nama_variabel_file);

Contoh Penulisan :
#include <stdio.h>

main() {
   FILE *file;
   char isi[255], karakter;

   file = fopen("file.txt", "r");
   if(file == NULL){
    printf("File tidak tersedia!");
   }else{
    karakter = fgetc(file);
    printf("Fungsi fgetc(): %c\n", karakter);

    fgets(isi, 255, file);
    printf("Fungsi fgets(): %s\n", isi);

    fscanf(file, "%s", isi);
    printf("Fungsi fscanf(): %s\n", isi);
   }
   fclose(file);

   getch();
}

Output :
Membaca file dengan fungsi fgetc(), fgets() dan fscanf()
Gambar 3. Membaca file dengan fungsi fgetc(), fgets() dan fscanf()


D. Membaca dan Menulis File Biner

Untuk membaca file biner kita bisa menggunakan fungsi fread(), sedangkan untuk menulis file biner menggunakan fungsi fwrite().

Format Penulisan fread():
fread(alamat_memori, ukuran_bytes, ukuran_blok, nama_variabel_file);

Format Penulisan fwrite():
fwrite(alamat_memori, ukuran_bytes, ukuran_blok, nama_variabel_file);

Contoh Penulisan fread():
#include<stdio.h>

struct web
{
    char nama[50];
};

int main()
{
    FILE *file;
    struct web nama_web;

    file=fopen("file.bin","rb");
    if(!file)
    {
        printf("File tidak ditemukan!");
    }

    fread(&nama_web,sizeof(struct web),1,file);
    printf("%s\n",nama_web.nama);
    fclose(file);
    getch();
}

Contoh Penulisan fwrite():
#include<stdio.h>

struct web
{
    char nama[50];
};

int main()
{
    FILE *file;
    struct web nama_web;

    file=fopen("file.bin","wb");
    if (!file)
    {
        printf("Error!");
    }

    strcpy(nama_web.nama, "Pointopoin");
    fwrite(&nama_web, sizeof(struct web), 1, file);
    fclose(file);
    printf("File berhasil dibuat & data berhasil dimasukan kedalam file!");
    getch();
}

Output fread():
Membaca file biner menggunakan fungsi fread()
Gambar 4. Membaca file biner menggunakan fungsi fread()

Output fwrite():
Menulis file biner menggunakan fungsi fwrite()
Gambar 5. Menulis file biner menggunakan fungsi fwrite()

Minggu, 07 Oktober 2018

Program Matriks Dengan Bahasa C

 1. Program Matriks Ordo 4x5

 

Source Code:


Output: 

 




 2. Program Untuk Penjumlahan dan Pengurangan Matriks Ordo 2x3

 

Source Code:



Output: 

 


Sabtu, 29 September 2018

Program Pengulangan Dengan Bahasa C dan C++

Source Code:


 

Output: 


Tampilan Utama



Jika kita masukkan angka 1, maka akan tampil seperti dibawah ini:


Pada perintah "Apakah Anda Ingin Mengulang" kita bisa kembali ke tampilan menu utama jika kita masukkan huruf Y.


Menu utama



Jika kita masukkan angka 2, maka akan tampil seperti dibawah ini:


Jika kita masukkan angka 3, maka akan tampil seperti dibawah ini:

Jika kita masukkan angka 4, maka akan tampil seperti dibawah ini:


Jika kita masukkan angka 5, maka akan tampil menu berikut:

Kita memasukkan Huruf S atau K maka akan tampil SISTEM KOMPUTER seperti dibawah ini:

Jika kita memasukkan Huruf selain S atau K maka tampilan akan seperti ini:




NOTE: Jika di menu utama kita masukkan angka selain 1-5, maka tampilan akan seperti berikut: