Monday, April 9, 2012

Contoh Array Pada C

 
Program 1 :
Code :
#include "stdio.h"
#include "conio.h"
                int main(){
                int a[5];
                    printf("Input 5 buah angka (pisah dengan spasi) : ");
                    scanf("%d %d %d %d %d",&a[1],&a[2],&a[3],&a[4],&a[5]);
                    printf ("\ntotal = %d",a[1]+a[2]+a[3]+a[4]+a[5]);
                getch();
                return 0;
}



Program 2 :
#include <stdio.h>
#include <conio.h>
int main()
{
  int i;
  int array[7]; // array sebagai variabel
  int N;
 
  N = 7;
  printf("Isi dan cetak array dengan indeks 1 s/d 7\n");
  // mengisi nilai Array dengan perulangan
  for (i=1; i<=N; i++)
    {
      array[i] = i; // mengacu kepada i, i <= 7
    }
 
  // menampilkan nilai Array
  for (i=1; i<=N; i++)
    {
      printf("i = %d, array[i] = %d\n", i, array[i]);
    }
    getch();
}


Program 3 :
// program array
// program untuk membaca array, mencetak array dan menghitung nilai rata-ratanya

#include <stdio.h>
#include <conio.h>
#define Nmaks 100 // ukuran maksimum array
typedef int arrayInt[Nmaks]; // array sebagai tipe bentukan dengan konstanta

// prototype
void bacaArray(arrayInt A, int n);
void tulisArray(arrayInt A, int n);
void hitungArray(arrayInt A, int n, float *u);

main()
{
  arrayInt A;
  int k;
  int n;
  float u;

  printf("Jumlah data array : ");
  scanf("%d", &n);
 
  printf("Baca data :\n");
  bacaArray(A,n);
 
  printf("Tulis data :\n");
  tulisArray(A,n);

  hitungArray(A,n,&u);
  printf("Rata-rata data = %.2f\n", u);
}

void bacaArray(arrayInt A, int n)
{
  int i; // pencatat indeks larik

  for(i=0; i<n; i++)
    {
      printf("Nilai A[%d] : ", i);
      scanf("%d", &A[i]);
    }
}

void tulisArray(arrayInt A, int n)
{
  int i;
 
  for (i=0; i<n; i++)
    printf("A[%d] = %d\n", i, A[i]);
}

void hitungArray(arrayInt A, int n, float *u)
{
  int i;
  float jumlah;
 
  i = 1;
  jumlah = 0;
  for(i=0; i<n; i++)
    jumlah = jumlah + A[i];

  *u = jumlah/n;
  getch();
}


Program 4 :
// program array dengan struct
// program untuk membaca array, mencetak array dan menghitung nilai rata-ratanya menggunakan struct
// struct = tipe data bentukan

#include <stdio.h>
#include <conio.h>
#define Nmaks 1000 // ukuran maksimum array
struct Nilai
{
  char nama[100];
  float mat;
  float b_ind;
  float b_ing;
  float rerata;
};

typedef struct Nilai un[Nmaks];  // array sebagai tipe bentukan dengan struct

void bacaNilai(un A, int n);
void tulisNilai(un A, int n);
void totalNilai(un A, int n);

main()
{
  un A;
  int i, n;
  float u;

  printf("Jumlah Data Penilaian : ");
  scanf("%d", &n);
 
  bacaNilai(A, n);
  tulisNilai(A, n);
  totalNilai(A, n);
}

void bacaNilai(un A, int n)
{
  int i;

  for (i=0; i<n; i++)
    {
      printf("Nama : ");
      scanf("%s", &A[i].nama);
      printf("Nilai Matematika : ");
      scanf("%f", &A[i].mat);
      printf("Nilai Bahasa Indonesia : ");
      scanf("%f", &A[i].b_ind);
      printf("Nilai Bahasa Inggris : ");
      scanf("%f", &A[i].b_ing);
    }
}

void tulisNilai(un A, int n)
{
  int i;

  for (i=0; i<n; i++)
    {
      printf("Nama : %s\n", A[i].nama);
      printf("Nilai Matematika : %.2f\n", A[i].mat);
      printf("Nilai Bahasa Indonesia : %.2f\n", A[i].b_ind);
      printf("Nilai Bahasa Inggris : %.2f\n", A[i].b_ing);
    }
}

void totalNilai(un A, int n)
// tidak diperlukan lagi variabel keluaran karena rerata sudah tercakup pada struct
{
  int i;
 
  for (i=0; i<n; i++)
    {
      A[i].rerata = (A[i].mat + A[i].b_ind + A[i].b_ing) / 3;
      printf("Nama : %s\n", A[i].nama);
      printf("Nilai Rata-Rata : %.2f\n", A[i].rerata);
    }
    getch();
}

Program 5 :
// program penilaian siswa
#include <stdio.h>
#include <conio.h>
#define SISWA 4
#define MAPEL 4

// prototype fungsi
void cetakArray(const int nilai[][MAPEL], int siswa, int test);
int nilaiMinimum(const int nilai[][MAPEL], int siswa, int test);
int nilaiMaksimum(const int nilai[][MAPEL], int siswa, int test);
double rerata(const int aturNilai[], int test);

int main()
{
  int i;

  // inisial nilai siswa untuk empat siswa (baris) dan empat mata pelajaran (kolom)
  const int nilaiSiswa[SISWA][MAPEL] =
    {
      {77, 68, 86, 73},
      {96, 87, 89, 78},
      {70, 90, 86, 81},
      {80, 91, 98, 87}
    };

  printf("Daftar Penilaian Siswa \n");
  cetakArray(nilaiSiswa, SISWA, MAPEL);
  printf("\n\nNilai terendah : %d\n", nilaiMinimum(nilaiSiswa, SISWA, MAPEL));
  printf("Nilai tertinggi : %d\n", nilaiMaksimum(nilaiSiswa, SISWA, MAPEL));

  // perulangan untuk menampilkan nilai rerata tiap siswa
  for(i = 0; i < SISWA; i++)
    {
      printf("Nilai rata-rata siswa ke %d adalah %.2f\n",
                     i, rerata(nilaiSiswa[i], MAPEL));
    }

  return 0;
}

// realisasi
void cetakArray(const int nilai[][MAPEL], int siswa, int test)
{
  // variabel lokal
  int i;
  int j;

  printf("                [A]  [B]  [C]  [D]");
  // perulangan baris
  for (i = 0; i < siswa; i++)
    {
      // perulangan kolom
      printf("\nNilai Siswa [%d] ", i);
      for (j = 0; j < test; j++)
                {
                  printf("%-5d", nilai[i][j]);
                }
    }
}

int nilaiMinimum(const int nilai[][MAPEL], int siswa, int test)
{
  // variabel lokal
  int i;
  int j;
  int nilaiTerendah = 100; // deklarasi variabel dan nilai terendah sementara

  // perulangan baris
  for (i = 0; i < siswa; i++)
    {
      // perulangan kolom
      for (j = 0; j < test; j++)
                {
                  if (nilai[i][j] < nilaiTerendah)
                    {
                      nilaiTerendah = nilai[i][j];
                    }
                }
    }
 
  return nilaiTerendah;
}

int nilaiMaksimum(const int nilai[][MAPEL], int siswa, int test)
{
  // variabel lokal
  int i;
  int j;
  int nilaiTertinggi;

  nilaiTertinggi = 0; // nilai tertinggi sementara
  // perulangan baris
  for (i = 0; i < siswa; i++)
    {
      // perulangan kolom
      for (j = 0; j < test; j++)
                {
                  if (nilai[i][j] > nilaiTertinggi)
                    {
                      nilaiTertinggi = nilai[i][j];
                    }
                }
    }
  return nilaiTertinggi;
}

double rerata(const int aturNilai[], int test)
{
  // variabel lokal
  int i;
  int total;

  total = 0; // total nilai sementara
  // perulangan untuk menghitung nilai rerata tiap siswa
  for (i = 0; i < test; i++)
    {
      total = total + aturNilai[i];
    }

  return (double) total / test;
  getch();
}

Program 6 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
  int i;
  int x[7]; // x merupakan array statis
  int *y; // deklarasi array dinamis dengan pointer

  // inisial x[i] dengan nilai 0
  for (i = 0; i < 7; i++)
    x[i] = 0;
  // endfor

  // mengisi kembali x[i] dengan input dari pengguna
  for (i = 0; i < 7; i++)
    {
      printf ("Masukkan nilai i : ");
      scanf ("%d", &x[i]);
    }
 
  printf("_________________\n");
  printf("array statis : \n");

  // penulisan x[i] dengan perulangan
  for (i = 0; i < 7; i++)
    printf ("i ke %d,\tx[i] = %d\n", i, x[i]);
  // endfor
  y = (int *)malloc(7*sizeof(int)); // mengalokasikan memori 28 byte untuk y[7]
  printf("_________________\n");
  printf("array dinamis : \n");
  // pengisian y[i] dengan perulangan
  for (i = 0; i < 7; i++)
    y[i] = x[i];

  // penulisan y[i] dengan perulangan
  for (i = 0; i < 7; i++)
    printf ("i ke %d,\ty[i] =  %d\n", i, y[i]);
  free (y); // free memory
}

Program 7 :
/* Program jumlah dua himpunan */
#include <stdio.h>
#include <conio.h>
main (){
    float himpa[100],himpb[100];
    int n,a,himpc[100];
        printf ("masukkan jumlah elemen : ");
        scanf  ("%d",&n);
        for (a=1;a<=n;a++){
            printf ("masukkan himpunan A[%d] : ",a);
            scanf  ("%f", &himpa[a]);
            printf ("masukkan himpunan B[%d] : ",a);
            scanf  ("%f", &himpb[a]);
            }
         printf ("jumlah kedua himpunan : { ");
         for (a=1;a<=n;a++){
             himpc[a]=himpa[a]+himpb[a];
             printf ("%d ", himpc[a]);}
             printf (" }");
            getch();
            return 0;
    }


Program 8 :
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main() {
    int n,i;
    float x[1000], total=0, rata, rata_2=0, sd;

/*masukkan jumal dari data */
printf ("jumlah data (maksimum 1000 buah) : ");
scanf("%d",&n);
printf("\n");
for (i=0;i<n;i++){
    printf("nilai data ke %d ? ",i+1);
    scanf("%f", &x[i]);
    total = total + x[i];
}
rata = total /n;
for (i=0;i<n;i++)
{rata_2+=((x[i]-rata)*(x[i]-rata));}
    sd= sqrt(rata_2/n);
   
    printf("\n");
    printf("jumlah data = %d\n",n);
    printf("total nilai = %f\n",total);
    printf("rata-rata nilai = %f\n",rata);
    printf("deviasi standart = %f\n",sd);
    getch();
}

Program 9 :
#include <stdio.h>
#include <conio.h>
main()
{
      int i,j;
      float x[3][4] ={
            1.00, 2.00, 3.00, 4.00,
            5.00, 6.00, 7.00, 8.00,
            9.00, 10.0, 11.0, 12.0,};
            for (i=0;i<3;i++){
                for (j=0;j<4;j++){
                    printf ("%8.2f",x[i][j]);
 }                  printf("\n");
                    printf ("\n");}
                    getch();
            }

Program 10 :
#include <stdio.h>
#include <conio.h>
main()
{
      int i,j;
      char hari[7][10] = {
           "minggu",
           "senin",
           "selasa",
           "rabu",
           "kamis",
           "jum'at",
           "sabtu"};
        for (i=0;i<7;i++){
                for (j=0;j<4;j++){
                    printf ("%c",hari[i][j]);
                    }
                    printf("\n");
                    }
                    getch();
                    }  

Program 11 :
#include <stdio.h>
#include <conio.h>
main()
{
      int i,j;
      char hari[7][10] = {
           "minggu",
           "senin",
           "selasa",
           "rabu",
           "kamis",
           "jum'at",
           "sabtu"};
        for (i=0;i<7;i++){
                    printf ("%s",hari[i]);
                    printf("\n");
                    }
                    getch();
                    } 

Program 12 :
#include <stdio.h>
#include <conio.h>
main()
{
      int i,j;
      char  nama[5][3][15] = {
           "adi","budi","usro",
           "aan","nana","idham",
           "mbie","endru","erbi",
           "koko","sule","dadang",
           "karun","kirun","kurin"};
        for (i=0;i<5;i++){
            printf ("Nama nama di kelas %1d adalah :\n",i+1);
                for (j=0;j<3;j++){
                    printf ("%s\n",nama[i][j]);
                    }
                    printf("\n");
                    }
                    getch();
                    }  


 Program 13 :
/*Program :array1.cpp*/
#include <stdio.h>
#include <conio.h>
#define SIZE 12
main()
{
  int a[SIZE]={1, 3, 5, 4, 7, 2, 99, 16, 45, 67, 89, 45};
  int indeks, total =0;
  for(indeks=0; indeks<=SIZE-1; indeks++)
    total += a[indeks];
  printf("\nTotal setiap elemen array adalah %d",total);
  getch();
  return 0;
}

Program 14 :
#include <stdio.h>
#include <conio.h>
int main()
{
  int square[100];
  int i; /*loop index*/;
  int k; /*the integer*/

  /*calculate the squares */
  for (i=0; i<10; i++)
  {
    k= i+1;
    square[i]=k*k;
    printf("\nPangkat dari %d adalah %d ", k, square[i]);
  }
  getch();
  return 0;
}

Program 15 :
#include <stdio.h>
#include <conio.h>
void printArray(int[][3]);
main()
{
  int matrik1[2][3] = {{1, 2, 3},{4, 5, 6}};
  int matrik2[2][3] = {1, 2, 3, 4, 5};
  int matrik3[2][3] = {{1, 2},{4}};
  printArray (matrik1);
  printArray (matrik2);
  printArray (matrik3);
  return 0;
}

void printArray (int a[][3])
{
  int i,j;
  for (i=0; i<=1; i++)
  {
    for (j=0; j<=2; j++)
    printf("%d",a[i][j]);;
    printf("\n");
  }
  getch();
}


Program 16 :
#include <stdio.h>
#include <conio.h>
main()
{
                int y;
                int hitung=0;
                int x[0];
                for(y=0;y<5;y++)
                {
                                hitung+=y;
                                x[y]=hitung;
                                printf("%3d - %3d\n",y,x[y]);
                }
                  getch();
}


Program 17 :
#include <stdio.h>
#include <conio.h>
main()
{
                int x[3][5];
                int y,z;
                int hitung=0;
                for(y=0;y<3;y++)


                {
                                printf("y = %d\n",y);
                                for(z=0;z<5;z++)
                                {
                                                hitung+=z;
                                                x[y][z] = hitung;
                                                printf("%\t%3d - %3d\n",z,x[y][z]);
                                }
                }
                                  getch();
}

Program 18 :
#include<stdio.h>
#include <conio.h>
main()

{

     int a[15],i,n;

     printf("masukkan jumlah array : ");

     scanf("%d",&n);

     printf("masukkan data :\n");

     for(i=1;i<=n;i++)

          scanf("%d",&a[i]);

     getchar();

     printf("kode tersebut dikonversi akan menjadi :\n");

     for(i=1;i<=n;i++)

          printf("%c",a[i]);

     getchar();
 getch();
     return 0;

}

Program 19 :
#include<stdio.h>
main(){int A[100] [100];int m,n,i,j;
/* ------menentukan banyaknya baris & kolom matriks ------*/
printf("Matriks berordo m x n \n");
printf("--------------------- \n\n");
printf("Masukkan banyaknya baris (m) : ");
scanf("%d", &m);
printf("Masukkan banyaknya kolom (n) : ");
scanf("%d", &n);printf("\n");
/* ------input elemen matriks ------*/
for(i=0;i<m;i++){for(j=0;j<n;j++){printf("Elemen matriks A[%d,%d] : ",i+1,j+1);
scanf("%d",&A[i][j]);}}
/* ------menampilkan elemen matriks ------*/printf("\n");
printf("Matriks A = \n\n");for(i=0;i<m;i++){for(j=0;j<n;j++)
{printf("%3d",A[i][j]);}printf("\n");}}


Program 20
#include "stdio.h"
char nm[100][100],lagi[1];
int i=1,j;

main(){
 /*untuk memasukkan nama*/
 do{

  printf("Masukkan nama : "); scanf("%s",&nm[i]); /*memasukkan nama*/
  i++;
  printf("\n\nInput lagi [Y/T] : ");scanf("%s",&lagi); /*lagi atau tidak*/
 }while((strcmp(lagi,"Y")==0) || (strcmp(lagi,"y")==0)); /*kondisi untuk melakukan perulangan*/

 /*untuk mencetak nilai*/
 printf("\n\n");
 for(j=1;j<=i-1;j++){
  printf("Nama %d : %s\n",j,nm[j]);
 }

 getche(); /*eksekusi program*/
}