Entri Populer

tugas Untuk mata kuliah RISTI

untuk tugas matkul risti Diurutkan dari yang paling bawah
dan di sana sudah ada absensi dan nomer soal yang akan dikerjakan oleh masing - masing mahasiswa

Jumat, 14 Mei 2010

source code linked list

#include
#include
#include
#include

struct praktek
{
    char nama[30];
    char id[15];
    char kelas[50];
    double modul;
    double jadwal;
};
praktek datakwn[10];
//=================================================
//fungsi untuk menambah data baru
//=================================================
void tambah(int &n)
{
    FILE *pf;
    pf=fopen("modul8.txt","a");

    int a=0;
    char kode_cari[15];

    fflush(stdin);
    printf("=======================================\n");
    printf("        PENGISIAN DATA PRAKTIKUM       \n");
    printf("=======================================\n");
    printf("Masukkan Nomor ID    = ");gets(kode_cari);
    for(int i=0;i
    {
        if(strcmp(datakwn[i].id,kode_cari)==0)
        {
            a=1;
        }
    }
    strcpy(datakwn[n].id,kode_cari);
    if(a==0)
    {
        printf("Masukkan Nama Siswa       = ");gets(datakwn[n].nama);
        printf("Masukkan Kelas            = ");gets(datakwn[n].kelas);       
        printf("Masukkan Modul dikerjakan = ");scanf("%ld",&datakwn[n].modul);
        printf("Masukkan Jadwal (27042009)= ");scanf("%ld",&datakwn[n].jadwal);
        printf("\ndata ke-%d sudah tersimpan \n",n+1);
        fprintf(pf,"\nMasukkan Nama Siswa       = %s",datakwn[n].nama);
        fprintf(pf,"\nMasukkan Kelas            = %s",datakwn[n].kelas);       
        fprintf(pf,"\nMasukkan Modul dikerjakan    = %ld",&datakwn[n].modul);
        fprintf(pf,"\nMasukkan Jadwal(27042009)    = %ld",&datakwn[n].jadwal);
        fprintf(pf,"\ndata ke-%d sudah tersimpan \n",n+1);
    }
    else
    {
        puts("data tidak valid[kembar]");
        datakwn[n].id[0]=NULL;
        n--;
    }
    n++;
    puts("ENTER");
    getch();
    fclose(pf);
}
//=================================================
//fungsi untuk menampilkan data
//=================================================
void display(int &n)
{
    FILE *pf;
    pf=fopen("modul8.txt","a");

    if(n==0)
    {
        puts("ERROR : percetakan data gagal");
        fprintf(pf,"\nERROR : pencetakan data gagal");
    }
    else
    {
        printf("=================================\n");
        printf("    PENCETAKAN SEMUA DATA         \n");
        printf("=================================\n");
        fprintf(pf,"\n=================================\n");
        fprintf(pf,"\n    PENCETAKAN SEMUA DATA         \n");
        fprintf(pf,"\n=================================\n");
        for(int i=0;i
        {
            printf("\tdata ke %d\n",i+1);
            printf("Nomor ID                = %s\n",datakwn[i].id);
            printf("Nama Siswa              = %s\n",datakwn[i].nama);
            printf("Kelas                   = %s\n",datakwn[i].kelas);
            printf("Modul                    = %ld\n",datakwn[i].modul);
            printf("Jadwal                    = %ld\n",datakwn[i].jadwal);
            fprintf(pf,"\n\tdata ke %d\n",i+1);
            fprintf(pf,"\nNomor ID                = %s\n",datakwn[i].id);
            fprintf(pf,"\nNama Siswa            = %s\n",datakwn[i].nama);
            fprintf(pf,"\nKelas                 = %s\n",datakwn[i].kelas);
            fprintf(pf,"\nModul                 = %ld\n",datakwn[i].modul);
            fprintf(pf,"\nJadwal                 = %ld\n",datakwn[i].jadwal);
        }
    }
    puts("ENTER");
    getch();
    fclose(pf);
}
//=================================================
//fungsi untuk menghapus data baru
//=================================================
void hapus(int &n)
{
    FILE *pf;
    pf=fopen("modul8.txt","a");

    char kode_cari[15];
    if(n==0)
    {
        puts("ERROR : penghapusan gagal");
        fprintf(pf,"\nERROR : pencetakan data gagal");

    }
    else
    {
        {
        printf("=================================\n");
        printf("    PENGHAPUSAN DATA         \n");
        printf("=================================\n");
        fprintf(pf,"\n=================================\n");
        fprintf(pf,"\n        PENGHAPUSAN DATA                \n");
        fprintf(pf,"\n=================================\n");
        for(int i=0;i
            printf("Nomor ID : %s        |",datakwn[i].id);
        }

    fflush(stdin);
    puts(" ");
    printf("Masukkan ID yang akan dihapus :");
    gets(kode_cari);
    fprintf(pf,"\nMasukkan ID yang akan dihapus :%s",kode_cari);
    for(int i=0;i
    {
        if(strcmp(datakwn[i].id,kode_cari)==0)
        {
            printf("\n");
            printf(">>>data ditemukan<<<");
            printf("\n\n");
            printf("data ke-%d terhapus \n",i+1);
            datakwn[i].id[i]=NULL;
            datakwn[i].nama[i]=NULL;
            datakwn[i].kelas[i]=NULL;
            datakwn[i].modul=NULL;
            datakwn[i].jadwal=NULL;
            for(int k=i;k
            {
                strcpy(datakwn[k].id,datakwn[k+1].id);
                strcpy(datakwn[k].nama,datakwn[k+1].nama);
                strcpy(datakwn[k].kelas,datakwn[k+1].kelas);
                datakwn[k].modul=datakwn[k+1].modul;
                datakwn[k].jadwal=datakwn[k+1].jadwal;
            }
            n--;
        }
    }
    }
    puts(" ");
    puts("ENTER");
    getch();
    fclose(pf);
}
//=================================================
//fungsi untuk mengubah data
//=================================================
void update (int &n)
{
    FILE *pf;
    pf=fopen("modul8.txt","a");

    int b=0;
    char kode_cari[15],uid[15],unama[30],ukelas[50],cari[15];
    double umodul,ujadwal;
    if(n==0)
    {
        puts("ERROR : pengubahan gagal");
        fprintf(pf,"\nERROR : pencetakan data gagal");
    }
    else
    {
        {
        printf("=====================================\n");
        printf("        PENGUBAHAN DATA                 \n");
        printf("=====================================\n");
        fprintf(pf,"\n=================================\n");
        fprintf(pf,"\n        PENGUBAHAN DATA                \n");
        fprintf(pf,"\n=================================\n");
        for(int i=0;i
            printf("Nomor ID = %s    |",datakwn[i].id);
        }

    fflush(stdin);
    puts(" ");
    printf("Masukkan ID yang akan diubah :");
    gets(cari);
    fprintf(pf,"\nMasukkan ID yang akan diubah :%s",cari);

    for(int i=0;i
    {
        if(strcmp(datakwn[i].id,cari)==0)
        {
            printf("\n");
            printf(">>>data ditemukan<<<");
            printf("\n\n");
            datakwn[i].id[i]=NULL;
            datakwn[i].nama[i]=NULL;
            datakwn[i].kelas[i]=NULL;
            fflush(stdin);
            printf("Masukkan Nomor ID   =");gets(kode_cari);
            fprintf(pf,"\nMasukkan Nomor ID    =%s",&kode_cari);
                for(int j=0;j
                {
                    if(strcmp(datakwn[j].id,kode_cari)==0)
                    {
                        b=0;
                    }
                }
                strcpy(uid,kode_cari);
                if(b==0)
                {
                    printf("Masukkan Nama Siswa            =");gets(unama);
                    printf("Masukkan Kelas               =");gets(ukelas);
                    printf("Masukkan Modul dikerjakan    =");scanf("%ld",&umodul);
                    printf("Masukkan Jadwal (27042009)    =");scanf("%ld",&ujadwal);
                    printf("data ke %d terubah \n",i+1);
                    fprintf(pf,"\nMasukkan Nama Siswa    =%s",&unama);
                    fprintf(pf,"\nMasukkan Kelas    =%s",&ukelas);
                    fprintf(pf,"\nMasukkan Modul dikerjakan    =%ld",&umodul);
                    fprintf(pf,"\nMasukkan Jadwal (27042009)    =%ld",&ujadwal);
                    fprintf(pf,"\ndata ke %d terubah \n",i+1);
                    strcpy(datakwn[i].id,uid);
                    strcpy(datakwn[i].nama,unama);
                    strcpy(datakwn[i].kelas,ukelas);
                    datakwn[i].modul=umodul;
                    datakwn[i].jadwal=ujadwal;
                }
                else
                {
                    puts("data tidak valid [kembar]");
                    datakwn[n].id[0]=NULL;
                }
        }
    }
    }
    puts(" ");
    puts("ENTER");
    getch();
    fclose(pf);
}
//=================================================
//fungsi utama
//=================================================
void main(void)
{
    FILE *pf;
    pf=fopen("modul8.txt","a");

    int pilihan,n=0;
    do
    {
        printf("=============================================\n");
        printf("\tData Praktikum\n");
        printf("=============================================\n");
        printf("1. input data\n");
        printf("2. output data\n");
        printf("3. hapus data\n");
        printf("4. ubah data\n");
        printf("5. exit\n");
        printf("\nmasukkan pilihan anda [1-5] : ");scanf("%d",&pilihan);
        fprintf(pf,"\nMasukkan pilihan anda [1-5] : %d",&pilihan);
        switch(pilihan)
        {
            case 1:
                system("cls");
                tambah(n);
                break;
            case 2:
                system("cls");
                display(n);
                break;
            case 3:
                system("cls");
                hapus(n);
                break;
            case 4:
                system("cls");
                update(n);
                break;
            case 5:
                system("cls");
                printf("program selesai\n");
                printf("seluruh data akan dihapus dari layar monitor\n");
                fprintf(pf,"\nprogram selesai\n");
                fprintf(pf,"\nseluruh data akan dihapus dari layar monitor\n");
                break;
            default:
                system("cls");
                printf("nomor pilihan tersebut tidak tersedia !!!\n");
                fprintf(pf,"\nnomor pilihan tersebut tidak tersedia !!!\n");
                puts("ENTER");
                getch();
        }
        printf("\n");
    }
    while(pilihan !=5);
        fclose(pf);
}


Tidak ada komentar:

Posting Komentar