Kontrak Kuliah Algoritmadan Pemrograma
Program Studi Teknik Informatika
Defri Kurniawan, M.Kom
Data Dosen Pengampu
Nama Defri Kurniawan, M.Kom
Pendidikan Magister Teknik Informatika
Tempat tinggal Banyumanik, Semarang
No Kontak 0856 4141 7048 (WA)
Email [email protected]
Homebase Teknik Informatika (A11)
Ruang H.2.3
Deskripsi Mata Kuliah Merupakan kelanjutan dari mata kuliah prasyarat “Dasar
Pemrograman” yang membahas lebih mendalam padakonsep pemrograman fungsional (ex. Overview ParadigmaPemrograman Fungsional, Notasi Fungsional, EkspresiDasar, Ekspresi Kondisional, ADT, Tipe Bentukan, KoleksiObject, Tabel, Ekspresi Rekursif, List). Selain itukemampuan kepemimpinan (leadership) dan kemampuanbekerja sama dalam sebuah kelompok (team work) jugaakan ditanamkan melalui tugas-tugas kelompok danpresentasi-presentasi tugas terstruktur baik dalam halpenguasaan audiens, menjawab pertanyaan maupunpenyampaian materi.
Standar Kompetensi
Standar kompetensi dari mata kuliah ini adalahmahasiswa mampu membuat program dalam skalamenengah (dengan standar 3 file) dalammenyelesaikan permasalahan komputasi danotomatisasi dalam model bahasa pemrogramanterpilih. Selain itu mahasiswa mengenal cakupandunia pemrograman fungsional sertapembentukan konsep struktur data (ADT)
Strategi Perkuliahan
Menggunakan Student Center Learning (SCL).Mahasiswa akan diajak berdiskusi mengenai matalatih terkait sehingga mahasiswa dapat berpikirsecara mandiri untuk memahami materi yangdiajarkan dan menyampaikan ide / pemikirannyamelalui presentasi dan praktek
Komponen Penilaian
Tugas : 30% UTS : 35% UAS : 35%
Pembagian Teori Praktek (T: 55%, P:45%)
Aturan-aturan
TUGAS
Apabila mahasiswa terlambat dalam mengumpulkan tugasmemiliki konsekuensi sebagai berikut:
a. Terlambat dalam satu minggu dari deadline yang telahditetapkan maka nilai maksimal adalah 70
b. Apabila mahasiswa terlambat lebih dari satu minggu makanilai maksimum adalah 50
c. Apabila mahasiswa tidak mengumpulkan tugas mendapatnilai 0 dan tidak ada tugas pengganti
Aturan-aturan
TUGAS
Contoh
11Sept
18Sept
Pemberian Tugas Deadline
19Sept
Terlambat
25Sept
Nilai MAX 70
26Sept
Nilai MAX 50
Dalam seminggudari deadline (a)
Lebih dariseminggu (b)
Kontrak Kuliah – Aturan
IJIN PERKULIAHAN
Ijin tidak menghadiri perkuliahan diberikan hanya untuk:
Ijin Bukti Pendukung
Kegiatan atas nama kampus Surat resmi berkop kampus
Sakit Surat Dokter
Acara Keluarga Surat dari Orang Tua/Wali
Lelayu/Duka WA only
Aturan-aturan
KETERLAMBATAN
Bagi Mahasiswa
Mahasiswa yang datang lebih dari 40 menit dari jam jadwalperkuliahan (terlambat) maka dengan kesadaran harapmenunggu di luar
Bagi Dosen
Jika dosen tidak datang ke kelas sampai 40 menit dari jamjadwal perkuliahan, maka KELAS KOSONG
Referensi
Anany Levitin : Introduction to the Design & Analysis of Algorithm 3rd edition,2012
Michael Vine : C Programming for Absolute beginner 2nd edition, 2008
Ivor Horton : Beginning in C 5th Edition , 2013
Inggrian Liem : “Diktat Kuliah Dasar Pemrograman (Bagian PemrogramanProsedural)”, Kelompok Keahlian Rekayasa Perangkat Lunak dan Data, Ed isiApril 2007.
Silahkan siapa yang mengajukan diri sebagai ketua kelas?
TERIMA KASIH
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
REVIEW FUNGSIDefri Kurniawan
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Referensi
Michael Vine – C Programming for theAbsolute Beginner 2nd (2008)
Ivor Horton – Beginning C 5th (2013)
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
RENCANA KEGIATAN PERKULIAHAN SEMESTER
W Pokok Bahasan1 Review Fungsi2 Parameter & Tipe Kembalian Fungsi3
Sorting45
Searching67 Review 1-68 Ujian Tengah Semester
W Pokok Bahasan9
Analisa Rekuren1011 Struct & ADT1213 Pointer1415 Presentasi Proyek Akhir16 Ujian Akhir Semester
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Pengertian Fungsi
Fungsi merupakan suatu bagian dari program yang dimaksudkanuntuk mengerjakan suatu tugas tertentu dan letaknya terpisah dariprogram yang memanggilnya.
Dalam setiap program bahasa C, minimal terdapat satu fungsi yaitufungsi main().
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Keuntungan fungsi dalam program
Program akan memiliki struktur yang jelas (mempunyai readabilityyang tinggi).
Bersifat reusability (dapat digunakan kembali) sehingga akanmenghindari penulisan bagian program yang sama.
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Klasifikasi Fungsi
Dalam bahasa C fungsi dapat dibagi menjadi dua, yaitu :1. Fungsi pustaka atau fungsi yang telah tersedia dalam Bahasa C
2. Fungsi yang didefinisikan atau dibuat oleh programmer.
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi String
strcpy() strlen() strcat() strupr() strlwr()
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi String
Fungsi Operasi String (tersimpan dalam header file “string.h”) strcpy()
• Berfungsi untuk menyalin suatu string asal ke variable string tujuan.• Bentuk umum : strcpy(var_tujuan, string_asal);
strlen()• Berfungsi untuk memperoleh jumlah karakter dari suatu string.• Bentuk umum : strlen(string);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Contoh
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi String
strcat()• Digunakan untuk menambahkan string sumber ke bagian akhir dari string
tujuan.• Bentuk umum : strcat(tujuan, sumber);
strupr()• Digunakan untuk mengubah setiap huruf dari suatu string menjadi huruf
capital.• Bentuk umum : strupr(string);
strlwr()• Digunakan untuk mengubah setiap huruf dari suatu string menjadi huruf kecil
semua.• Bentuk umum : strlwr(string);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Contoh
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi String
islower() isupper() isdigit() tolower() toupper()
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi Karakter
Fungsi Operasi Karakter (tersimpan dalam header “ctype.h”) islower()
• Fungsi akan menghasilkan nilai benar(bukan nol) jika karaktermerupakan huruf kecil
• Bentuk umum: islower(char); isupper()
• Fungsi akan menghasilkan nilai benar (bukan nol) jika karaktermerupakan huruf capital
• Bentuk umum: isupper(char);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi Karakter
isdigit()• Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter
merupakan sebuah digit.• Bentuk umum : isdigit(char);
tolower()• Fungsi akan mengubah huruf capital menjadi huruf kecil.• Bentuk umum : tolower(char);
toupper()• Fungsi akan mengubah huruf kecil menjadi huruf kapital.• Bentuk umum : toupper(char);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Contoh
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi Matematik
sqrt() pow()
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Pustaka – operasi Matematik
Fungsi Operasi Matematik (tersimpan dalam header “math.h” dan“stdlib.h”) sqrt()
• Digunakan untuk menghitung akar dari sebuah bilangan.• Bentuk umum : sqrt(bilangan);
pow()• Digunakan untuk menghitung pemangkatan suatu bilangan.• Bentuk umum : pow(bilangan, pangkat);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Contoh
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Membuat Fungsi Sendiri
Sebelum digunakan (dipanggil), suatu fungsi harus dideklarasikan dandidefinisikan terlebih dahulu.
Bentuk umum pendeklarasian fungsi adalah :tipe_fungsi nama_fungsi(parameter_fungsi);
Bentuk umum pendefinisian fungsi adalah :tipe_fungsi nama_fungsi(parameter_fungsi){
statementstatement………...
}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Struktur Fungsi
tipe_fungsi nama_fungsi(parameter1, parameter2,..){
statement fungsi;}
Contoh:
int tambah(int x, int y){
return(x+y);}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Prototype Fungsi
Bagaimana fungsi menerima input, bagaimana fungsi melakukanreturn dan nilai apa yang dikembalikan
Prototype = pendeklarasian fungsitipe_fungsi nama_fungsi(parameter_fungsi);
Contoh:int jumlah(int a, int b);
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Contoh Penggunaan Fungsi#include <stdio.h>#include <stdlib.h>
int jumlah(int a, int b); //prototipe fungsiint a,b,c;main(){
printf("masukkan a: ");scanf("%d",&a);printf("masukkan b: ");scanf("%d",&b); //program utama
c=jumlah(a,b);printf(“Hasil Penjumlahan= %d",c);
}
int jumlah(int x, int y){ //fungsireturn(x+y);}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Tampilan Program
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Parameter
Parameter Formal adalah variabel yang ada pada daftar parameterdalam definisi fungsi.
Parameter Aktual adalah variabel (parameter) yang dipakai dalampemanggilan fungsi.
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Parameter Formal
Variable yang ada pada daftar parameter dalam definisi fungsi
int jumlah(int x, int y){return (x+y);
}
Parameter Formal
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Parameter Aktual
Parameter yang dipakai dalam pemanggilan fungsi
main(){. . .. . .c=jumlah(a,b);. . .
}
Parameter Aktual
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Latihan
Buatlah fungsi prototype:• Menghitung luas balok• Menghitung volume balok
Buatlah fungsi definisi berdasarkan fungsi prototype tersebut
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Variable
Variable dapat dikategorikan menjadi 3 :• Variable global
Variable yang dideklarasikan di luar fungsi• Variable local
Variable yang dideklarasikan dalam fungsi• Variable Static
Variable yang nilainya tetap dipertahankan walaupun prosesnyatelah keluar dari bloknya
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Variable Lokal dan Global#include <stdio.h>
#include <stdlib.h>
/*variabel global*/
float proses(float,float,float);
float p,l,t,volumebalok;
main(){
printf("masukkan panjang : ");
scanf("%f",&p);
printf("masukkan lebar : ");
scanf("%f",&l);
printf("masukkan tinggi : ");
scanf("%f",&t);
volumebalok=proses(p,l,t);
printf("volume: %.2f", volumebalok);
}
float proses(float x,float y,float z)
{
/*variabel lokal*/
float v;
v= x * y * z ;
return(v);
}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Variable Static
#include <stdio.h>#include <stdlib.h>
long int faktorial(int n);main(){
int bil,i;long int fakto;printf("Masukkan bilangan: ");scanf("%d",&bil);for (i=1;i<=bil;i++){
fakto=faktorial(i);}
printf("Faktorial %d =%d",bil,fakto);}
long int faktorial(int n)
{
static long int fakto=1; //variabelstatic
fakto=fakto*n;
return (fakto);
}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Rekursif
Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri Contoh :
long int factorial(int N){ //definisi fungsiif(N==0)return(1);elsereturn(N*factorial(N-1)); //memanggil diri sendiri
}
Tim Algoritma Pemrograman TI – S1Universitas Dian Nuswantoro
Fungsi Rekursif
factorial (4)
4 * factorial (4-1)
4* 3 * factorial (3-1)
4* 3 * 2 * factorial (2-1)
return
return
return
4* 3 * 2 * 1* factorial (1-1)N==0 → return 14* 3 * 2 * 1* 1
Top Related