Bab 1 Array 1 Dimensi

27

Click here to load reader

description

this is a power point of array description, hope you like it.

Transcript of Bab 1 Array 1 Dimensi

Page 1: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Copy Right @Syaiful Anam Matematika UB

Pemrograman Dasar

Tipe Array: 1 Dimensi

Syaiful Anam, S.Si, MT, Ph.DZuraidah Fitriah, S.Si, M.Si

Program Studi Matematika UB

Page 2: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Array

• Array adalah deretan variable yang berjenis sama dan mempunyai nama sama.

• Pada C, array mempunyai lokasi bersebelahan. Alamat terkecil menunjuk ke elemen pertama dan alamat terbesar menunjuk ke elemen terakhir.

• Sebuah elemen pada array diakses melalui indexnya.

• String merupakan array dari karakter.

Page 3: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Bentuk Umum deklarasi array :

• tipe nama_array[ukuran];

• ukuran : menyatakan banyaknya elemen pada array.

• tipe : menyatakan tipe dasar array.

• Contoh• int A[100],B[100];

Page 4: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.1.

• int A[10];• Hal ini menyatakan array A mempunyai 10 elemen, yaitu:

•A[0]•A[1]•.•A[9]•Untuk array 1 dimensi, rumus ukuran total array dalam

satuan byte adalah :• byte total = ukuran tipe dasar x banyak elemen• Pada contoh diatas :• byte total=2 * 10 = 20 byte• Variable bertipe int memerlukan tempat sebesar 2 byte.

Page 5: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.2. Memasukkan n buah data

• Masukkan Banyak Data: 4

• Data ke 1: 5• Data ke 2: 6• Data ke 3: 7• Data ke 4: 8

Page 6: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Flowchart

• =>

InputBykdata

Start

i=1

i<=bykdata

InputA[i]

i=i+1

yaStop

tidak

Page 7: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.2. Memasukkan data sebanyak n buah

• #include <stdio.h>• #include <conio.h>• #include <windows.h>• void gotoxy(short x, short y) {• COORD pos = {x, y};• SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),

pos);• }• main()• {• int bykdata,i;• float a[100];• printf("Masukkan Banyak Data:");• scanf("%d",&bykdata);

Page 8: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• for(i=0;i<bykdata;i++)• {• gotoxy(3,2+i); printf(“Data ke %d:“,i+1);• scanf("%f",&a[i]);• }• }

Page 9: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.3. Mencari rata-rata data sebanyak n buah

• Masukkan Banyak Data: 4

• Data ke 1: 5• Data ke 2: 6• Data ke 3: 7• Data ke 4: 8• Jum = 0• Jum = Jum+ 5 =0+5• Jum = Jum+ 6 = (0+5) +6• Jum= Jum +7 = (0+5+6) +7• Jum = Jum +8 =(0+5+6+7) +8 = 26• Rata=Jum /bykdata= 26/4

Page 10: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• #include <stdio.h>• #include <conio.h>• #include <windows.h>• void gotoxy(short x, short y) {• COORD pos = {x, y};• SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);• }• main()• {• int bykdata,i;• float a[100],jum,rata;• printf("Masukkan Banyak Data:");• scanf("%d",&bykdata);

Page 11: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• for(i=0;i<bykdata;i++)• {• gotoxy(3,2+i); printf("Data ke %d:",i+1);• scanf("%f",&a[i]);• }• • jum=0;• for(i=0;i<bykdata;i++)• jum=jum+a[i];• • rata=jum/bykdata;• printf("Rata-ratanya adalah %5.2f",rata);

• }

Page 12: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.4. Mencari nilai maksimum sebanyak n buah

• Masukkan Banyak Data: 4

• Data ke 1: 5• Data ke 2: 6• Data ke 3: 7• Data ke 4: 3• Maks=data ke 1 = 5• Apakah Maks < Data ke 2 ? Jika ya maka ganti Maks dengan data ke 2 (

Maks= Data ke 2=6). Jika tidak nilainya tidak diganti.• Apakah Maks < Data ke 3 ? Ya maka ganti Maks dengan data ke 3

( Maks= Data ke 3=7)• Apakah Maks < Data ke 2 ? Tidak sehingga nilai Maks tetap 7

Page 13: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• #include <stdio.h>• #include <conio.h>• #include <windows.h>• void gotoxy(short x, short y) {• COORD pos = {x, y};• SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);• }• main()• {• int bykdata,i;• float a[100],maks;• printf("Masukkan Banyak Data:");• scanf("%d",&bykdata);•

Page 14: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• for(i=0;i<bykdata;i++)• {• gotoxy(3,2+i); printf("Data ke %d:",i+1);• scanf("%f",&a[i]);• }• • maks=a[0];• for(i=1;i<bykdata;i++)• if (maks<a[i])• maks=a[i];• • printf("Nilai maksimum dari data adalah %5.2f",maks);

• }

Page 15: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.5. Memasukkan data siswa (nama, nilai) dan menghitung rata-rata nilainya. Jika nama diisi

dengan X maka pengisian data selesai

• #include <conio.h>• #include <stdio.h>• #include <stdlib.h>• main()• {• char nama[25][20],strinput[10];• float jumnilai=0,rata,nilai[25];• int jumsis,i=0;

• printf("\n Nama siswa (X=selesai) :");• gets(nama[i]);

Page 16: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• while(nama[i][0]!='X')• {• printf("\n Nilai Ujian : ");• gets(strinput);• nilai[i]=atof(strinput);• jumnilai += nilai[i];• i +=1;• printf("\n Nama siswa (X=selesai) :");• gets(nama[i]);• }• jumsis=i;• rata=jumnilai/jumsis;• printf("\n Rata-rata nilai : %6.2f",rata);• }

Page 17: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Latihan Soal

1.) Buatlah flowchart dan program untuk mencari data terkecil dari n data yang dimasukkan!

2.) Buatlah pseudocode dan program untuk mencari range dari n data yang dimasukkan!

3) Buatlah pseudocode dan program untuk mencari standar deviasi dari n data yang dimasukkan!

Page 18: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Operasi Vektor

• Jika n adalah sebuah bilangan bulat positif, maka tuple n terorde (ordered-n-tuple) adalah sebuah urutan bilangan riil (a1, a2,..., an). Himpunan semua tuple n terorde dinamakan ruang-n dan dinyatakan dengan Rn.

• • Bila n=2 atau 3, maka biasanya digunakan istilah

pasangan terode atau triple terorde dan bukannya tuple-2-terorde atau tuple-3-terorde. Untuk n=1 cukup ditulis R bukan R1.

Page 19: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Operasi Vektor

• Penjumlahan vektor• Dua vektor u=(u1, u2,..., un) dan v=(v1, v2,..., vn) pada Rn dinamakan

sama jika• u1=v1, u2=v2,...,un=vn

• Jumlah u+v didefinisikan oleh• u+v=(u1+ v1, u2+ v2,..., un+ vn)• dan jika k adalah sebarang skalar, maka perkalian skalar ku

didefinisikan oleh• ku=(ku1, ku2,..., kun)• Contoh • Penjumlahan dari vektor u=(-1,3,5,7) dan v=(5,-4,7,0) pada R4

adalah u+v =(4,-1,12,7)

Page 20: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan

• Dot product• Jika u=(u1, u2,..., un) dan v=(v1, v2,..., vn) adalah sebarang

vektor pada Rn, maka dot product u dan v yaitu u.v didefinisikan dengan

• u.v=u1 v1+ u2 v2+...+ un vn

• • Contoh • Dot product dari vektor u=(-1,3,5,7) dan v=(5,-4,7,0)

pada R4 adalah u.v =(-1) 5 + 3 (-4) +5 (7) +7 (0) =18

Page 21: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Norm Vektor dan Jarak Dua Vektor

Norm Vektor Norma Euclidis (atau panjang Euclidis) vektor u=(u1, u2,..., un) pada Rn didefinisikan oleh

222

21

21

...).( nuuuuuu

Jarak dua buah vektor Jarak Eulidis di antara titik u=(u1, u2,..., un) dan v=(v1, v2,..., vn) pada Rn didefinsikan oleh

2222

211 )(...)()(),( nn vuvuvuvuvud

Page 22: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh

=======================================

Contoh Diketahui vektor u=(-1,3,5,7) dan v=(5,-4,7,0) pada R4 Carilah norma u dan d(u,v)

84)7()5()3()1().( 222221

uuu

90)07()75())4(3()51(),( 2222 vuvud

Page 23: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Contoh 1.6 Penjumlahan Vektor

• #include <stdio.h>• #include <conio.h>• #include <windows.h>• void gotoxy(short x, short y) {• COORD pos = {x, y};• SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);• }• main()• {• int dim,i;• float a[100],b[100],c[100];• printf("Masukkan Dimensi Vektor:");• scanf("%d",&dim);• printf("\nVektor A: \n");• for(i=0;i<dim;i++)• {• gotoxy(3,3+i);scanf("%f",&a[i]);• }•

Page 24: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Lanjutan• printf("Vektor B: \n");• for(i=0;i<dim;i++)• {• gotoxy(3,4+i+dim);scanf("%f",&b[i]);• }• printf("Vektor A+B: \n");• for(i=0;i<dim;i++)• { • c[i]=a[i]+b[i];• gotoxy(3,5+i+2*dim);printf("%5.2f",c[i]);• }• }

Page 25: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Latihan ()

• Buatlah psudocode , flowchart dan program untuk operasi irisan dua himpunan dimasukkan!

• Buatlah psudocode , flowchart dan program untuk menggabungkan dua himpunan dimasukkan!

• Buatlah psudocode , flowchart dan program untuk mengurutkan n data yang dimasukkan !

• Buatlah psudocode , flowchart dan program untuk menggurutkan n data yang dimasukkan !

• Buatlah psudocode , flowchart dan program untuk mencari median dari n data yang dimasukkan !

• Buatlah psudocode , flowchart dan program untuk mencari modus dari n data yang dimasukkan !

Page 26: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Pemrograman Dasar

Latihan

• Buatlah psudocode , flowchart dan program untuk mencari norm dari suatu vektor

• Buatlah psudocode , flowchart dan program untuk mencari jarak antara dua vektor

Page 27: Bab 1 Array 1 Dimensi

Pemrograman Dasar

Blog: http://syaifulmath.lecture.ub.ac.id/E-mail: [email protected]

facebook: https://www.facebook.com/shaifuru.anamufacebook page: https://www.facebook.com/syaifulanam.math.ub?ref=hl

Instagram: https://instagram.com/shaifuru/