Pemrograman
Dasar
Tipe Array:
Array 1 Dimensi
• tipe nama_array[ukuran];
• Contoh
• int A[100],B[100];
Pemrograman Contoh 1.1.
Dasar
• 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.
Pemrograman Contoh 1.2. Memasukkan n buah data
Dasar
• => Start
Input
Bykdata
i=1
tidak
i<=bykdata
ya
Stop
Input
A[i]
i=i+1
Contoh 1.2. Memasukkan data
Pemrograman
Dasar 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_HAN
DLE), pos);
• }
• main()
• {
• int bykdata,i;
• float a[100];
• printf("Masukkan Banyak Data:");
• scanf("%d",&bykdata);
Pemrograman Lanjutan
Dasar
• for(i=0;i<bykdata;i++)
• {
• gotoxy(3,2+i); printf(“Data ke %d:“,i+1);
• scanf("%f",&a[i]);
• }
• }
Contoh 1.3. Mencari rata-rata data
Pemrograman
Dasar sebanyak n buah
• Masukkan Banyak Data: 4
Input bykdata
• Data ke 1: 5 disimpan dalam A For i=1 to bykdata do
• Data ke 2: 6 input A[i]
• Data ke 3: 7 Jum=0
Next i
• Data ke 4: 8 Jum=Jum+A[1]
Jum=0
• Jum = 0 Jum=Jum+A[2]
For i=1 to bykdata do
• Jum = Jum+ 5 =0+5 Jum=Jum+A[3]
Jum=Jum+A[i]
• Jum = Jum+ 6 = (0+5) +6 Jum=Jum+A[4] Next i
• Jum= Jum +7 = (0+5+6) +7 Rata=Jum/bykdata
• Jum = Jum +8 =(0+5+6+7) +8 = 26 Cetak Rata
• Rata=Jum /bykdata= 26/4
Pemrograman Flowchart
Dasar
A
Start
tidak
Input i<=bykdata
Bykdata
ya Rata=jum/bykdata
i=1 Jum=jum+A[i]
Cetak
tidak i=i+1 Rata
i<=bykdata
ya Jum=0, i=1 Stop
Input
A[i]
A
i=i+1
Pemrograman Lanjutan
Dasar
• #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);
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);
• }
Pemrograman Mencari Nilai Maksimum
Dasar
A[5]
A[1]
A[3]
A[2]
A[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
Pemrograman Lanjutan
Dasar
• #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);
•
Pemrograman Lanjutan
Dasar
• 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);
• }
Contoh 1.5. Memasukkan data siswa (nama, nilai)
Pemrograman dan menghitung rata-rata nilainya. Jika nama diisi
Dasar 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;
• 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);
• }
Pemrograman Latihan Soal
Dasar
• 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)
Pemrograman Lanjutan
Dasar
• 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
Pemrograman Norm Vektor dan Jarak Dua Vektor
Dasar
Norm Vektor
Norma Euclidis (atau panjang Euclidis) vektor u=(u1, u2,..., un) pada Rn didefinisikan
oleh
1
u (u.u ) u12 u 22 ... u n2
2
===================================
Contoh
Diketahui vektor u=(-1,3,5,7) dan v=(5,-4,7,0) pada R4
Carilah norma u dan d(u,v)
1
u (u.u ) (1) 2 (3) 2 (5) 2 (7) 2 84
2
• #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]);
• }
•
Pemrograman Lanjutan
Dasar
• 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]);
• }
• }
Pemrograman Latihan ()
Dasar
Blog: http://syaifulmath.lecture.ub.ac.id/
E-mail: syaifulanam2000@yahoo.com
facebook: https://www.facebook.com/shaifuru.anamu
facebook page: https://www.facebook.com/syaifulanam.math.ub?ref=hl
Instagram: https://instagram.com/shaifuru/