Minggu, 07 Juni 2015

Download Structur Data

Data Structur Bahasa C : Download Direct

Code C : Single Link List

#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <string.h>
#include <time.h>

struct dtnilai{
  char judul[20];
  char id[10];
  struct dtnilai *next;
};

struct dtnilai *ujung;
//////////////////////////////////INPUT DATA///////////////////////////////////
int input_data(){
  struct dtnilai *tampung, *awal;
  int j=0;char jawab[2];

  while (1){
    awal=(struct dtnilai*)malloc(sizeof(struct dtnilai));
    fflush(stdin);
    printf("Judul Buku   :");gets(awal->judul);
    printf("ID Buku      :");gets(awal->id);
    awal->next=NULL;
    if(j==0){
      ujung=awal;
      tampung=ujung;
    }else{
      tampung->next=awal;
      tampung=tampung->next;
    }
    printf("Ada data lagi (y/t) :");scanf("%s",&jawab);
    if((strcmp(jawab,"Y")==0)||(strcmp(jawab,"y")==0)){
      j++;continue;
    }else if((strcmp(jawab,"T")==0)||(strcmp(jawab,"t")==0))
    break;
  }
}
//////////////////////////////////////////TAMPIL LIST/////////////////////////////
int tampil_list(){
  struct dtnilai *tampil,*awal;

  printf("Data Buku yang ada : \n");
  printf("Judul Buku\t\tID Buku\n");

  tampil=ujung;

  while(tampil!=NULL){
    printf("%s\t\t%s\n",tampil->judul, tampil->id);
    tampil=tampil->next;
  }
  return 0;
}
///////////////////////////////////////HAPUS AKHIR/////////////////////////////
int hapus_akhir(){
  struct dtnilai *hapus, *sblhapus;
  hapus=ujung;

  while(hapus->next!=NULL){
    sblhapus=hapus;
    hapus=hapus->next;
  }
  free(hapus);
  sblhapus->next=NULL;
}
////////////////////////////////////SISIP AWAL//////////////////////////////////
int sisip_awal(){
  struct dtnilai *tampung,*awal;
  char jawab[2];
  int j=0;
  tampung=ujung;

  while (1){
    awal=(struct dtnilai*)malloc(sizeof(struct dtnilai));
    fflush(stdin);
    printf("Judul Buku   :");gets(awal->judul);
    printf("ID Buku      :");gets(awal->id);
    awal->next=tampung;
   
    if(j==0||j!=0){
      ujung=awal;
      tampung=ujung;
    }
    printf("Ada data lagi (y/t) :");scanf("%s",&jawab);
    if((strcmp(jawab,"Y")==0)||(strcmp(jawab,"y")==0)){
      j++;continue;
    }else if((strcmp(jawab,"T")==0)||(strcmp(jawab,"t")==0))
    break;
  }
}
////////////////////////////////////////////////HAPUS LIST TERDEPAN//////////////////////////////////////
int hapus_awal(){
  struct dtnilai *hapus, *stlhapus;
  hapus=ujung;
  stlhapus=hapus->next;
  ujung=stlhapus;
  free(hapus);
}
///////////////////////////////////////////////HAPUS ELEMEN KE-N/////////////////////////////////////////
int hapus_n(){
  struct dtnilai *hapus, *sblhapus;
  int cari;;
  fflush(stdin);
  printf("Data yang akan dihapus ? (data ke-) :");scanf("%d",&cari);
  hapus=ujung;
  for(int i=1;i<cari;i++){
    sblhapus=hapus;
    hapus=hapus->next;
  }
  sblhapus->next=hapus->next;
  free(hapus);
}
////////////////////////////////////////////////BADAN PROGRAM////////////////////////////////////////////
int main(){
  int a;
  char b[2];
  ulang :
    system("cls");
  puts("--------------------------------------------------------------------------------");
  puts("                                 STRUKTUR DATA                                 ");
  puts("                        RIZKI TAUFIK ULIL A (2210131040)                       "); 
  puts("                            1 D4 TEKNIK KOMPUTER                               ");
  puts("                  POLITEKNIK ELEKTRONIKA NEGERI SURABAYA - 2014                ");
  puts("================================================================================");
  puts("                                     MENU                                       ");
  puts(" (1) input data  (2) hapus akhir  (3) sisip awal  (4) hapus awal  (5) hapus ke-n");
  puts(" (6) tampil data (7) exit");
  puts("================================================================================");
  printf("Pilih menu :");scanf("%d",&a);
  switch (a) {
    case 1  :input_data();puts("");break;
    case 2  :tampil_list();puts("");goto hapus;break;
    case 3  :tampil_list();puts("");sisip_awal();puts("");break;
    case 4  :tampil_list();puts("");hapus_awal();puts("");break;
    case 5  :tampil_list();puts("");hapus_n();puts("");break;
    case 6  :goto tampil;break;
    case 7  :goto exit;break;
    default :break;
  }
  goto ulang;
  hapus :
  puts("Apakah ingin menghapus data akhir ? (y/t)");fflush(stdin);scanf("%s",&b);
  if((strcmp(b,"Y")==0)||(strcmp(b,"y")==0)){
      hapus_akhir();
      goto tampil;
    }
  tampil :
  tampil_list();
  puts("Apakah ingin mengolah data ? (y/t)");fflush(stdin);scanf("%s",&b);
  if((strcmp(b,"Y")==0)||(strcmp(b,"y")==0)){
      goto ulang;
    }
  exit:
  puts("                       Anda akan keluar dari program ");
  puts("                 Silakan pencet tombol enter pada keyboard");
  getch();
  return 0;

}


Code C : Single Link List

#include <stdio.h>#include <conio.h>#include <malloc.h>#include <string.h>#include <time.h>struct dtnilai{  char judul[20];  char id[10];  struct dtnilai *next;};struct dtnilai *ujung;//////////////////////////////////INPUT DATA///////////////////////////////////int input_data(){  struct dtnilai *tampung, *awal;  int j=0;char jawab[2];   while (1){    awal=(struct dtnilai*)malloc(sizeof(struct dtnilai));    fflush(stdin);    printf("Judul Buku   :");gets(awal->judul);    printf("ID Buku      :");gets(awal->id);    awal->next=NULL;    if(j==0){      ujung=awal;      tampung=ujung;    }else{      tampung->next=awal;      tampung=tampung->next;    }    printf("Ada data lagi (y/t) :");scanf("%s",&jawab);    if((strcmp(jawab,"Y")==0)||(strcmp(jawab,"y")==0)){      j++;continue;    }else if((strcmp(jawab,"T")==0)||(strcmp(jawab,"t")==0))    break;  }}//////////////////////////////////////////TAMPIL LIST/////////////////////////////int tampil_list(){  struct dtnilai *tampil,*awal;   printf("Data Buku yang ada : \n");  printf("Judul Buku\t\tID Buku\n");   tampil=ujung;   while(tampil!=NULL){    printf("%s\t\t%s\n",tampil->judul, tampil->id);    tampil=tampil->next;  }  return 0;}///////////////////////////////////////HAPUS AKHIR/////////////////////////////int hapus_akhir(){  struct dtnilai *hapus, *sblhapus;  hapus=ujung;   while(hapus->next!=NULL){    sblhapus=hapus;    hapus=hapus->next;  }  free(hapus);  sblhapus->next=NULL;}////////////////////////////////////SISIP AWAL//////////////////////////////////int sisip_awal(){  struct dtnilai *tampung,*awal;  char jawab[2];  int j=0;  tampung=ujung;   while (1){    awal=(struct dtnilai*)malloc(sizeof(struct dtnilai));    fflush(stdin);    printf("Judul Buku   :");gets(awal->judul);    printf("ID Buku      :");gets(awal->id);    awal->next=tampung;       if(j==0||j!=0){      ujung=awal;      tampung=ujung;    }    printf("Ada data lagi (y/t) :");scanf("%s",&jawab);    if((strcmp(jawab,"Y")==0)||(strcmp(jawab,"y")==0)){      j++;continue;    }else if((strcmp(jawab,"T")==0)||(strcmp(jawab,"t")==0))    break;  }}////////////////////////////////////////////////HAPUS LIST TERDEPAN//////////////////////////////////////int hapus_awal(){  struct dtnilai *hapus, *stlhapus;  hapus=ujung;  stlhapus=hapus->next;  ujung=stlhapus;  free(hapus);}///////////////////////////////////////////////HAPUS ELEMEN KE-N/////////////////////////////////////////int hapus_n(){  struct dtnilai *hapus, *sblhapus;  int cari;;  fflush(stdin);  printf("Data yang akan dihapus ? (data ke-) :");scanf("%d",&cari);  hapus=ujung;  for(int i=1;i<cari;i++){    sblhapus=hapus;    hapus=hapus->next;  }  sblhapus->next=hapus->next;  free(hapus);}////////////////////////////////////////////////BADAN PROGRAM////////////////////////////////////////////int main(){  int a;  char b[2];  ulang :    system("cls");  puts("--------------------------------------------------------------------------------");  puts("                                 STRUKTUR DATA                                 ");  puts("                        RIZKI TAUFIK ULIL A (2210131040)                       ");   puts("                            1 D4 TEKNIK KOMPUTER                               ");  puts("                  POLITEKNIK ELEKTRONIKA NEGERI SURABAYA - 2014                ");  puts("================================================================================");  puts("                                     MENU                                       ");  puts(" (1) input data  (2) hapus akhir  (3) sisip awal  (4) hapus awal  (5) hapus ke-n");  puts(" (6) tampil data (7) exit");  puts("================================================================================");  printf("Pilih menu :");scanf("%d",&a);  switch (a) {    case 1  :input_data();puts("");break;    case 2  :tampil_list();puts("");goto hapus;break;    case 3  :tampil_list();puts("");sisip_awal();puts("");break;    case 4  :tampil_list();puts("");hapus_awal();puts("");break;    case 5  :tampil_list();puts("");hapus_n();puts("");break;    case 6  :goto tampil;break;    case 7  :goto exit;break;    default :break;  }  goto ulang;  hapus :  puts("Apakah ingin menghapus data akhir ? (y/t)");fflush(stdin);scanf("%s",&b);  if((strcmp(b,"Y")==0)||(strcmp(b,"y")==0)){      hapus_akhir();      goto tampil;    }  tampil :  tampil_list();  puts("Apakah ingin mengolah data ? (y/t)");fflush(stdin);scanf("%s",&b);  if((strcmp(b,"Y")==0)||(strcmp(b,"y")==0)){      goto ulang;    }  exit:  puts("                       Anda akan keluar dari program ");  puts("                 Silakan pencet tombol enter pada keyboard");  getch();  return 0;}

Me

Foto saya
I'm 18 year old I'm ugly I'm lazy I do what I want I'm poor I want to learn and I want make money