| 0 komentar ]

BAB III
TUGAS PENDAHULUAN

1.      Sebutkan dan jelaskan keuntungan-keuntungan penggunaan record!
ð  Keuntungan penggunaan record :
Record merupakan item data yang masing-masing dapat mempunyai tipe data berbeda-beda yang dapat dikumpulkan. Masing-masing item data disebut dengan field. Jadi record terdiri dari kumpulan field yang dapat berbeda tipe.
2.      Kapankan sebaiknya record digunakan? Jelaskan!
ð  Saat memiliki beberapa data dengan tipe data yang berbeda dan ingin mengumpulkan serta menyimpan data tersebut menjadi satu kumpulan.
3.      Buatlah algoritma untuk mengurutkan data berdasarkan nomor mahasiswa (NPM) dengan urutan dari yang terkecil ke yang terbesar serta mempunyai kemampuan untuk menampilkan jumlah total mahasiswa sesuai dengan kriteria yang dimasukkan oleh user.
Misalnya: user ingin mengetahui jumlah mahasiswa yang mempunyai nilai A untuk mata kuliah X, maka algoritma akan menampilkan jumlah mahasiswa yang mempunyai nilai A untuk mata kuliah X .
Masukan    : jumlahmahasiswa.
Selanjutnyamemasukkan record data mahasiswa. Data (field) setiapmahasiswaadalah NPM (NomorPokokMahasiswa), namamahasiswa, matakuliah yang diambil, dannilaimatakuliahtersebut
Keluaran    : hasilpengurutan data berdasarkan NPM
Hasil ditampilan dalam bentuk tabel seperti di bawah ini :

NPM
Nama
Kode
Nilai







Readmore »»
| 0 komentar ]

BAB III
TUGAS PENDAHULUAN

1.      Sebutkan dan jelaskan keuntungan-keuntungan penggunaan larik dan matriks!
Jawaban:
·      Keuntungan Penggunaan Larik :
a. Larik dapat menyimpan sejumlah data yang bertipe sama, dan data    tersebut akan di simpan sementara, untuk selanjutnya data tersebut kita proses. Selama pelaksanaan program, larik tetap menyimpan nilai. Hal ini bermanfaat bila ingin menggunakan nilai-nilai di dalam larik tersebut     untuk diproses lebih lanjut di bagian lain dalam algoritma.
b. Dapat menghindari penggunaan nama-nama peubah yang banyak.
c. Instruksi pembacaan/penulisan seluruh elemen larik cukup ditulis satu kali saja di dalam sebuah konstruksi pengulangan
·      Keuntungan Penggunaan Matriks :
a. Jumlah elemennya sudah dideklarasikan terlebih dahulu dan tidak dapat diubah selama pelaksanaan program
b.  Penyimpanan dan pemprosesan data secara beruntun atau berurutan

2.         Kapankan sebaiknya larik dan matriks digunakan? Jelaskan!
Jawaban:
Jika kita memiliki data dalam jumlah banyak dan ingin menyimpan serta menggunakan data tersebut selama pelaksanaan program.
3.        Buat algoritma untuk menentukan bilangan tertinggi dan terendah dari sejumlah bilangan bulat yang dimasukkan melalui piranti masukan.
Contoh:
Jumlah bilangan yang dimasukkan: 4
Bilangan ke-1: 4
Bilangan ke-2: 11
Bilangan ke-3: 45
Bilangan ke-4: 0
Bilangan tertinggi : 45
Bilangan terendah : 0
·         Jawaban:
Algoritma_mencari_bilangan_terbesar_dan_terkecil
{algoritma untuk menentukan bilangan tertinggi dan terendah dari sejumlah bilangan bulat yang dimasukkan melalui piranti masukan }

DEKLARASI
a, b, n, min, max; integer
DESKRIPSI:
Read (min max)

write"banyak bilangan yang ingin dimasukkan : ");
write ("masukkan bilangan pertama : ");
a¬1;
min¬b;
max¬b;
do
{
write ("masukkan bilangan selanjutnya : ");
if(max<b)
max¬b;
if(min>b)
min¬b;
a++;
}
while(a<=n-1);
write ("---------------------------------------------\n");
write "bilangan tertinggi  : %d\n",max);
write "bilangan terendah : %d\n",min);
end

4.        Buat algoritma untuk menghitung hasil perkalian antara dua buah matriks
Masukan : nilai-nilai dalam dua buah matriks
Keluaran :hasilperkalianduabuahmatriks


Agoritma perkalian_matriks
{algoritmauntukmenghitunghasilperkalianantaraduabuahmatriks}

DEKLARASI
int i,j,k, nilai_i, nilai_j, nilai_k;
int matrik_A[10][10], matrik_B[10][10], matrik_C[10][10];
DESKRIPSI
write("Masukkan Jumlah Baris dan Kolom matrik: \n");
write ("Jml Baris Matriks A : ")
write ("Jml Kolom Matriks A : ")
write ("Jml Baris Matriks B : ")
write ("Jml Kolom Matriks B : ")
write ("\n");
write ("—————————\n");
write ("Input Nilai Matrik A\n");
write ("—————————\n");
for(i=0;i<nilai_i;i++)
{
for(j=0;j<nilai_j;j++)
{
write ("Baris ke-%d, kolom ke-%d = ",i+1,j+1);
}
}
write ("\n");
write ("—————————\n");
write ("Input Nilai Matrik B\n");
write ("—————————\n");
for(j=0;j<nilai_j;j++)
{
for(k=0;k<nilai_k;k++)
{
write ("Baris ke-%d, kolom ke-%d = ",j+1,k+1);
}
}
for(i=0;i<nilai_i;i++)
{
for(k=0;k<nilai_k;k++)
write ("\n");
for(i=0;i<nilai_i;i++)
{
for(k=0;k<nilai_k;k++)
{
matrik_C[i][k] = 0;
for(j=0;j<nilai_j;j++)
matrik_C[i][k]+=matrik_A[i][j]*matrik_B[j][k];
}
}
write ("————————————-\n");
write ("Nilai Matrik C = A x B adalah \n");
write ("————————————-\n");
for(i=0;i<nilai_i;i++)
{
for(k=0;k<nilai_k;k++)
write ("%7d",matrik_C[i][k]);
write ("\n");
end for
end for
end

Readmore »»
| 0 komentar ]

BAB I

PENDAHULUAN

1.1  Latar Belakang
           
                      Dalam pemrograman pasti ada statement atau suatu rumus yang sering digunakan atau dipanggil dalam program utama. Jika seorang programer menulisnya secara berulang-ulang, hal ini akan membuat coding semakin panjang dan kurang efektif. Selain itu, progamer juga akan merasa kelelahan dalam membuat suatu program yang sangat komplek.
Oleh karena itu, dalam suatu pemrograman ada suatu sintaks yaitu fungsi yang dapat membantu programer dalam menyusun programnya. Fungsi ini berguna untuk memanggil suatu statement atau rumus ke dalam program utama tanpa harus menulisnya lagi dalam program utama. Sehingga ini akan memberikan kefektifan dalam membuat suatu program.
Modul 4 ini akan menjelaskan bagaimana implementasi dari sintaks fungsi ini dalam bahasa pemrograman C.


1.2  Tujuan
Tujuan mahasiswa mengikuti praktikum Algoritma Pemrograman Modul 4 ini adalah :
1.    Untuk mengetahui kegunaan dari sintaks fungsi dalam bahasa pemrograman C.
2.    Untuk menyelesaikan masalah dengan sintaks fungsi.
3.    Untuk menerapkan sintaks fungsi dalam program-program yang dibuat agar lebih efektif.








BAB II

DASAR TEORI

2.1                          Teori Singkat
          Fungsi adalah suatu bagian dari program yang dirancang untuk melaksanakan tugas tertentu dan letaknya dipisahkan dari program yang menggunakannya. Elemen utama dari program bahasa C berupa fungsi-fungsi, dalam hal ini program dari bahasa C dibentuk dari kumpulan fungsi pustaka (standar) dan fungsi yang dibuat sendiri oleh pemrogram.
Fungsi banyak digunakan pada program C dengan tujuan :
a.       Program menjadi terstruktur, sehingga mudah dipahami dan mudah dikembangkan. Dengan memisahkan langkah-langkah detail ke satu atau lebih fungsi-fungsi, maka fungsi utama (main()) menjadi lebih pendek, jelas dan mudah dimengerti.
b.      Dapat mengurangi pengulangan (duplikasi) kode. Langkah-langkah program yang sama dan dipakai berulang-ulang di program dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi-fungsi. Selanjutnya bagian program yang membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tetapi cukup memanggil fungsi-fungsi tersebut.
Pada umumnya fungsi memerlukan nilai masukan atau parameter yang disebut sebagai argumen. Nilai masukan ini akan diolah oleh fungsi. Hasil akhir fungsi berupa sebuah nilai (disebut sebagai return value atau nilai keluaran fungsi).
Bentuk umum dari definisi sebuah fungsi adalah sebagai berikut :
Keterangan :
·         tipe-keluaran-fungsi, dapat berupa salah satu tipe data C, misalnya char atau int . secara default bertipe int.
·         deklarasi aksi berisi deklarasi variabel (kalau ada) dan statemen-statemen yang akan dilakukan.

BAB IV
IMPLEMENTASI
4.1 Kegiatan Praktikum
Pada saat praktikum, kerjakan tugas-tugas berikut ini:
1.      Buat program untuk tugas prepraktikum2!
Jawaban :
Source code :
#include <stdio.h>
void segitiga(){
            int N;
            printf("Masukkan Angka : ");scanf("%d", &N);
            for(int a=1; a<=N; a++){
                        for(int b=N; b>a; b--)
                        printf(" ");
                        for(int c=1; c<=a; c++)
                        printf("%d",c);
                        for(int d=a-1; d>=1; d--)
                        printf("%d",d);
                        printf("\n");
            }
            int X=N-1;
            for(int a=1; a<=N-1; a++){
                        for(int e=1; e<=a; e++)
                        printf(" ");
                        for(int f=1; f<=X; f++)
                        printf("%d",f);X=X-1;
                        for(int g=X; g>=1; g--)
                        printf("%d",g);
                        printf("\n");
            }
}
int main(){
            segitiga();
}

            Running program :
Description: E:\KULIAH\SEMESTER 2\Prak.Alpro\Modul 4\Program\pre2mdl4.png
2.      Buat program untuk tugas prepraktikum 3!
Jawaban :
            Source code :
#include <stdio.h>
#include <math.h>
int a,b,c;
double d,x,y;
void persamaan(){
            printf("Masukkan Nilai a = ");scanf("%d", &a);
            printf("Masukkan Nilai b = ");scanf("%d", &b);
            printf("Masukkan Nilai c = ");scanf("%d", &c);
            d=sqrt(b*b-4*a*c);
            x=(-b+d)/2*a;
            y=(-b-d)/2*a;
            printf("Hasil diskriminan = %.0f\n",d);
            printf("Nilai X1 = %.0f\n",x);
            printf("NIlai x2 =%.0f\n",y);
}
int main(){
            persamaan();
}


            Running program :
Description: E:\KULIAH\SEMESTER 2\Prak.Alpro\Modul 4\Program\pre3mdl4.png
           
4.2 Tugas Akhir
Buatlah algoritma dan terjemahkan dalam Bahasa C untuk menghitung bilangan faktorial dengan menggunakan teknik rekursif dan non-rekursif!
Contoh:
Masukkan faktorial yang akan dihitung: 5
Hasil faktorial : 120
            Jawaban :
Algoritma faktorial_rekursif
{User memasukkan akan yang akan difaktorialkan}
1.      Membaca nilai masukan sebagai n.
2.      Nilai n akan diproses dalam fungsi_faktorial dengan rumus, yaitu :
Jika n=0 maka hasilnya 1, jika tidak maka akan diproses menjadi = n*fungsi_faktorial(n-1)
3.      Fungsi_faktorial akan dipanggil dirinya dalam fungsi tersebut sebanyak n kali sampai n-1.
4.      Cetak hasil. Selesai.
                        Source code :
#include<stdio.h>
int faktorial(int n){
if (n == 0){
            return 1;
            }else{
                        return n * faktorial(n-1);
                                    }
}
int main(){
int angka;
printf("Masukkan Angka : ");
scanf("%d", &angka);
printf("\nHasil faktorial : %d\n", faktorial(angka));
return 0;
}
                        Running program :
Algoritma faktorial_non_rekursif
{User memasukkan akan yang akan difaktorialkan}
1.      Membaca nilai masukan sebagai n.
2.      Nilai n akan diproses dalam for dengan rumus, yaitu :
i=1 sampai i ≤ n
faktorial = faktorial * i.
dengan nilai awal faktorial = 1.
3.      For akan mengulang angka i sebanyak n, kemudian dikalikan.
4.      Cetak hasil. Selesai.
Source code :
#include<stdio.h>
int main(){
int n,i, faktorial=1;
printf("Masukkan angka : "); scanf("%d", &n);
for(i=1;i<=n;i++){
            faktorial = faktorial * i;
            }
printf("\nHasil faktorial : %d\n", faktorial);
return 0;
}

Running program :

BAB V

PENUTUP
5.1     Analisa
Dari praktikum modul 4 ini, kita dapat menganalisa bahwa :
·         Sintaks fungsi dalam bahasa pemrograman dapat sangat membantu seorang programer ketika dia membuat suatu program dan ada statement yang diulang-ulang tanpa harus mengetiknya kembali dalam program utama.
·         Sintaks fungsi juga dapat menghemat tempat memori, sebab sintaks dalam program lebih sedikit dan efisien.

5.2     Kesimpulan
Dari praktikum tersebut, dapat disimpulkan bahwa :
Ø Untuk mengoptimalkan kerja dari suatu program kita harus tahu sintaks-sintaks mana yang harus digunakan dan sintaks mana yang tidak harus dimasukkan ke dalam suatu program.
Ø Kita harus mengetahui algoritma suatu masalah secara detail dan jelas agar masalah itu dapat diselesaikan melalui program dengan optimal tanpa harus boros terhadap memori komputer yang digunakan.







Readmore »»