Sunday, April 15, 2012

Program Penampung Nilai Mahasiswa (。◕‿◕。)


Algoritma
1.      Memulai program.
2.      Inputkan menu pilihan.
Antara lain: 1. Membuat data
                   2. Membuka data
                   3. Exit
3.      Jika memilih menu pilihan nomer satu, akan ada pilihan inputan nim, atau ketik 0 untuk kembali ke menu.
4.      Jika nim sudah di masukkan, akan ada inputan nama.
5.      Jika nama sudah di masukkan, selanjutnya akan ada inputan nilai pertama.
6.      Jika nilai pertama sudah di masukkan, akan ada inputan nilai kedua.
7.      Jika nilai kedua sudah di masukkan, akan ada inputan nilai ketiga.
8.      Jika nilai ketiga sudah di masukkan, akan ada inputan nilai keempat.
9.      Jika nilai keempat sudah di masukkan, akan kembali ke menu utama, yaitu akan ada pilihan inputan nim, atau ketik 0 untuk kembali ke menu.
10.   Jika angka 0 yang di inputkan, maka menu pilihan akan muncul lagi.
11.  Jika memilih menu pilihan nomer dua, cetak data nilai mahasiswa.
12.  Selesai

Listing Program 

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

#define EoF 0

FILE *F;
            typedef struct{
                        int NIM;
                        char Nama[20];
                        char Nilai1[10];
                        char Nilai2[10];
                        char Nilai3[10];
                        char Nilai4[10];
            } Mhs;
                        Mhs dataMhs;

void buatData(int N) {
            F=fopen("TEST.DAT","w");
                        if(F==NULL) {
                                    printf("FILE TEST.DAT tidak dapat dibuat!");
                        exit(1);
            }
else {
                        printf("\n");
                        printf("Masukan NIM (atau ketik 0 untuk kembali ke Menu): ");
                        scanf("%d",&dataMhs.NIM);

            while (dataMhs.NIM!=EoF) {
                        printf("Masukan Nama : ");
                        scanf("%s",dataMhs.Nama);
                        printf("Masukan Nilai-1 : ");
                        scanf("%s",dataMhs.Nilai1);
                        printf("Masukan Nilai-2 : ");
                        scanf("%s",dataMhs.Nilai2);
                        printf("Masukan Nilai-3 : ");
                        scanf("%s",dataMhs.Nilai3);
                        printf("Masukan Nilai-4 : ");
                        scanf("%s",dataMhs.Nilai4);
                        fwrite(&dataMhs,sizeof(dataMhs),1,F);printf("\n");
                        printf("Masukan NIM (atau ketik 0 untuk kembali ke Menu): ");
                        scanf("%d",&dataMhs.NIM);
            }

                        strcpy(dataMhs.Nama,"XXX");
                        fwrite(&dataMhs,sizeof(dataMhs),1,F);
            }
                        fclose(F);
}

void bukaData(int N){
                        F=fopen("TEST.DAT","r");
                        if(F==NULL){
                        printf("file TEST.DAT tidak dapat dibuka !");
            exit(1);
            }
            else {
                        fread(&dataMhs,sizeof(dataMhs),1,F);
                        if (dataMhs.NIM==EoF) printf("data kosong!");
            else {
printf(" NIM      NAMA        NILAI-1     NILAI-2     NILAI-3      NILAI-4\n");
printf("==================================================================\n");
                        while(dataMhs.NIM!=EoF){
                        printf("  %d",dataMhs.NIM);
                        printf("  %5s",dataMhs.Nama);
                        printf("  %15s",dataMhs.Nilai1);
                        printf("  %9s",dataMhs.Nilai2);
                         printf("  %9s",dataMhs.Nilai3);
                        printf("  %9s\n",dataMhs.Nilai4);
                        fread(&dataMhs,sizeof(dataMhs),1,F);
                        }
            }
}

}

main(){
                        int N = 5;
                        int pil = 1;
                        while(pil!=3) {
                        printf("\nProgram Penampungan Nilai Mahasiswa"); printf("\n");
                        printf("   =========== MENU ===========          \n");
                        printf("         1. Membuat Data\n");
                        printf("         2. Membuka Data\n");
                        printf("         3. Exit\n");
                        printf("   ============================         \n");printf("\n");
                        printf("Masukan menu pilihan Anda (1-3): ");
                        scanf("%d",&pil);
            switch(pil) {
case 1 : buatData(N); break;
case 2 : bukaData(N);break;

                        }
            }
}
  
Tampilan Program
  
 Selamat Mencoba !!

0 comments:

Post a Comment