Anda di halaman 1dari 29

Tugas 1 Makassar, 30 Desember 2020

STRUKTUR DATA

Nama : Khaeril wahyu cahyadi

Stambuk : 13020190307

Kelas : D1

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA
2020
TUGAS PENDAHULUAN

1. Tuliskan pengertian dan konsep array.


Jawab :
Array adalah sebuah tipe data bentukan yang terdiri dari sejumlah komponen
dengan tipe yang sama atau kita dapat menyimpan banyak data dalam satu
variabel.
a. Array Dimensi Satu
Array Dimensi Satu adalah suatu array yang terdiri dari 1 subskrip array, yaitu
jumlah data maksimum.
Deklarasi array :
Tipe_data nama_array[jumlah_maks_data];
b. Array Multidimensi
Array Multidimensi adalah suatu  array yang terdiri dari 2 subskrip, yaitu
jumlah elemen baris dan jumlah  elemen kolom.
Deklarasi array:
Tipe_array nama_array[baris][kolom];

2. Tuliskan deklarsi array dan pemanggilan elemen array.


Jawab:
a. Deklarasi Array Dimensi Satu
Tipe_data nama_array[jumlah_maks_data];
b. Deklarasi Array Multidimensi
Tipe_array nama_array[baris][kolom];

3. Buatlah contoh program array.


Jawab:
#include <iostream>
using namespace std;
int nil[3],i;
int main()
{
for(i=0; i<3; i++){
cin>>nil[i];
}
Cout<<”data input: “<<endl;
for(i=0; i<3; i++){
cout<<nil[i]<< “ “;
}
return 0;
}

4. Jelaskan pengertian struct.


Jawab:
Struct adalah kumpulan elemen-elemen yang memiliki bentuk dan tipe yang
berbeda-beda yang dinyatakan dalam sebuah nama.

5. Tuliskan deklarasi umum dari struct.


Jawab:
struct nama_struct
{
<tipe_data> nama_field_1;
<tipe_data> nama_field_2;

<tipe_data> nama_field_n;
}
6. Jelaskan tahapan dalam menggunakan struct.
Jawab:
a. Penggunaan tipe data struct dilakukan dengan membuat suatu variabel yang
bertipe data struct tersebut
b. Pengaksesan elemen struct dilakukan secara individual dengan menyebutkan
nama variabel struct diikuti dengan operator titik (.)

7. Tuliskan contoh program struct.


Jawab:
#include <stdio.h>
#include <conio.h>
//Pendeklarasian tipe data baru struct Mahasiswa
typedef struct Mahasiswa{
char NIM[9];
char nama[30];
float ipk
};

void main(){

//Buat variabel mhs bertipe data Mahasiswa


Mahasiswa mhs;
clrscr();
printf("NIM = ");scanf("%s",mhs.NIM);
printf("Nama = ");scanf("%s",mhs.nama);
printf("IPK = ");scanf("%f",&mhs.ipk);
printf("Data Anda : \n");
printf("NIM : %s\n",mhs.NIM);
printf("Nama : %s\n",mhs.nama);
printf("IPK : %f\n",mhs.ipk);
getch();
}

8. Tuliskan pengertian procedure dan function.


Jawab:
a. Procedure
Procedure merupakan blok kode yang mempunyai nama dan berisi perintah
yang dapat dipanggil suatu waktu. Artinya, hanya sekali dibuat yang kemudian
di panggil berkali-kali sesuai dengan kebutuhan.
b. Function
Function mempunyai banyak kemiripan dengan sub procedure. Bedanya,
fungsi selalu mengembalikan nilai (return value).

9. Tuliskan deklarasi procedure dan function disertai dengan contoh.


Jawab:
a. Procedure
Void NamaProsedur (DaftarParameter){
/*Code atau Badan Prosedur*/ 
}
Contoh :

#include <stdio.h>
//Prosedur
void main(int panjang){// dimisalkan int panjang sebagai parameter input
    int lebar, luas; //deklarasi variable dengan tipe data integer
    panjang = 16;

    printf("Masukkan Lebar Persegi: ");//menampilkan tulisan


    scanf("%d",&lebar);//menyimpan nilai
    luas=(panjang*lebar); //rumus luas persegi panjang
    printf("Luas persegi panjang tersebut adalah : %d\n\n",luas);

    luas=main2(21);//fungsi main2 dapat dipanggil disini karena memiliki nilai


return
    printf("Luas persegi panjang tersebut ke2 adalah : %d\n\n",luas);
}

b. Function
TipeData NamaFungsi (DaftarParameter){
/*Code atau Badan Prosedur*/ 
        return nilaireturn;
}
Contoh :
#include <stdio.h>
//Fungsi
int main(int panjang){
    int lebar, luas;

    printf("Masukkan Lebar Persegi ke2: ");

    scanf("%d",&lebar);

    luas=(panjang*lebar);
    return luas;
}
PRAKTIKUM MANDIRI

#include <iostream>

#include <string>

using namespace std;

struct Kehadiran {

int izin, alfa;

};

struct Siswa {

string nim, nama; Kehadiran absen;

};

int main(){

Siswa sis[3];

sis[0].nim ="9970283044";

sis[0].nama="Askadina"; sis[0].absen.izin = 4;

sis[0].absen.alfa = 1;

sis[1].nim ="9970283034";

sis[1].nama="Ainun"; sis[1].absen.izin = 4;

sis[1].absen.alfa = 2;
sis[2].nim ="9980283034";

sis[2].nama="Abyah"; sis[2].absen.izin = 0;

sis[2].absen.alfa = 1;

cout<<"Data Dari Struct : "<<endl;

for (int i=0; i<3; i++){

cout<<"Nim : " <<sis[i].nim<<endl;

cout<<"Nama : "<<sis[i].nama<<endl;

cout<<"Jumlah Izin : "<<sis[i].absen.izin<<endl;

cout<<"Jumlah Alfa : "<<sis[i].absen.alfa<<endl;

cout<<" "<<endl;

}
EVALUASI PRAKTIKUM

1. Pak Imam adalah seorang guru IPS dengan siswa 20 orang, ia ingin menghitung
nilai akhir siswa-siswanya. Setiap siswa memiliki data nim dan nama lengkap.
Untuk menghitung nilai IPS siswanya, pak Iman membutuhkan 4 nilai tugas, nilai
uts dan nilai uas disetiap siswanya. Pak iman membutuhkan nilai akhir dalam
bentuk nilai angka yang didapatkan dari 30% dari rata-rata nilai tugas, 30% dari
nilai uts, dan 40% dari nilai uas. Untuk mengolah data yang mudah, pak Iman
ingin nilai-nilai tiap siswanya tertampung dalam 1 struktur data seperti gambar
dibawah.

Jawab:

#include <iostream>

#include <string>

using namespace std;

struct Nilai{

float tugas1,tugas2,tugas3,tugas4,mid,uas,nilai_akhir,rata_rata_tugas;

};
struct Siswa {

string nim,nama;

Nilai siswa;

};

int main(){

Siswa sis[20];

sis[0].nim ="13020190108";

sis[0].nama ="Dewi Ratnasari";

sis[0].siswa.tugas1= 70;

sis[0].siswa.tugas2= 76;

sis[0].siswa.tugas3= 80;

sis[0].siswa.tugas4= 85;

sis[0].siswa.mid= 76;

sis[0].siswa.uas= 66;

sis[0].siswa.rata_rata_tugas=(sis[0].siswa.tugas1+sis[0].siswa.tugas2+sis[0].siswa.
tugas3+sis[0].siswa.tugas4)/4;

sis[0].siswa.nilai_akhir=((sis[0].siswa.rata_rata_tugas*0.3)+
(sis[0].siswa.mid*0.3)+(sis[0].siswa.uas*0.4));
sis[1].nim ="13020190102";

sis[1].nama ="Andi Vani Sri Lestari";

sis[1].siswa.tugas1= 80;

sis[1].siswa.tugas2= 75;

sis[1].siswa.tugas3= 90;

sis[1].siswa.tugas4= 74;

sis[1].siswa.mid= 88;

sis[1].siswa.uas= 55;

sis[1].siswa.rata_rata_tugas=(sis[1].siswa.tugas1+sis[1].siswa.tugas2+sis[1].siswa.
tugas3+sis[1].siswa.tugas4)/4;

sis[1].siswa.nilai_akhir=((sis[1].siswa.rata_rata_tugas*0.3)+
(sis[1].siswa.mid*0.3)+(sis[1].siswa.uas*0.4));

sis[2].nim ="130201901782";

sis[2].nama ="Aulia Rezky";

sis[2].siswa.tugas1= 79;

sis[2].siswa.tugas2= 90;

sis[2].siswa.tugas3= 100;

sis[2].siswa.tugas4= 78;
sis[2].siswa.mid= 76;

sis[2].siswa.uas= 90;

sis[2].siswa.rata_rata_tugas=(sis[2].siswa.tugas1+sis[2].siswa.tugas2+sis[2].siswa.
tugas3+sis[2].siswa.tugas4)/4;

sis[2].siswa.nilai_akhir=((sis[2].siswa.rata_rata_tugas*0.3)+
(sis[2].siswa.mid*0.3)+(sis[2].siswa.uas*0.4));

sis[3].nim ="13020190120";

sis[3].nama ="Aulia Fitri";

sis[3].siswa.tugas1= 80;

sis[3].siswa.tugas2= 66;

sis[3].siswa.tugas3= 38;

sis[3].siswa.tugas4= 98;

sis[3].siswa.mid= 100;

sis[3].siswa.uas= 54;

sis[3].siswa.rata_rata_tugas=(sis[3].siswa.tugas1+sis[3].siswa.tugas2+sis[3].siswa.
tugas3+sis[3].siswa.tugas4)/4;

sis[3].siswa.nilai_akhir=((sis[3].siswa.rata_rata_tugas*0.3)+
(sis[3].siswa.mid*0.3)+(sis[3].siswa.uas*0.4));
sis[4].nim ="130201901321";

sis[4].nama ="Sri";

sis[4].siswa.tugas1= 65;

sis[4].siswa.tugas2= 90;

sis[4].siswa.tugas3= 99;

sis[4].siswa.tugas4= 32;

sis[4].siswa.mid= 45;

sis[4].siswa.uas= 78;

sis[4].siswa.rata_rata_tugas=(sis[4].siswa.tugas1+sis[4].siswa.tugas2+sis[4].siswa.
tugas3+sis[4].siswa.tugas4)/4;

sis[4].siswa.nilai_akhir=((sis[4].siswa.rata_rata_tugas*0.3)+
(sis[4].siswa.mid*0.3)+(sis[4].siswa.uas*0.4));

sis[5].nim ="13020190172";

sis[5].nama ="Andi Dewi Ayu Sr";

sis[5].siswa.tugas1= 79;

sis[5].siswa.tugas2= 90;

sis[5].siswa.tugas3= 100;
sis[5].siswa.tugas4= 78;

sis[5].siswa.mid= 76;

sis[5].siswa.uas= 90;

sis[5].siswa.rata_rata_tugas=(sis[5].siswa.tugas1+sis[5].siswa.tugas2+sis[5].siswa.
tugas3+sis[5].siswa.tugas4)/4;

sis[5].siswa.nilai_akhir=((sis[5].siswa.rata_rata_tugas*0.3)+
(sis[5].siswa.mid*0.3)+(sis[5].siswa.uas*0.4));

sis[6].nim ="13020190102";

sis[6].nama ="Lestari";

sis[6].siswa.tugas1= 79;

sis[6].siswa.tugas2= 90;

sis[6].siswa.tugas3= 100;

sis[6].siswa.tugas4= 78;

sis[6].siswa.mid= 76;

sis[6].siswa.uas= 90;

sis[6].siswa.rata_rata_tugas=(sis[6].siswa.tugas1+sis[6].siswa.tugas2+sis[6].siswa.
tugas3+sis[6].siswa.tugas4)/4;
sis[6].siswa.nilai_akhir=((sis[6].siswa.rata_rata_tugas*0.3)+
(sis[6].siswa.mid*0.3)+(sis[6].siswa.uas*0.4));

sis[7].nim ="13020190182";

sis[7].nama ="Aulia";

sis[7].siswa.tugas1= 79;

sis[7].siswa.tugas2= 90;

sis[7].siswa.tugas3= 100;

sis[7].siswa.tugas4= 78;

sis[7].siswa.mid= 76;

sis[7].siswa.uas= 90;

sis[7].siswa.rata_rata_tugas=(sis[7].siswa.tugas1+sis[7].siswa.tugas2+sis[7].siswa.
tugas3+sis[7].siswa.tugas4)/4;

sis[7].siswa.nilai_akhir=((sis[7].siswa.rata_rata_tugas*0.3)+
(sis[7].siswa.mid*0.3)+(sis[7].siswa.uas*0.4));

sis[8].nim ="13020190182";

sis[8].nama ="Rezky";

sis[8].siswa.tugas1= 79;

sis[8].siswa.tugas2= 90;
sis[8].siswa.tugas3= 100;

sis[8].siswa.tugas4= 78;

sis[8].siswa.mid= 76;

sis[8].siswa.uas= 90;

sis[8].siswa.rata_rata_tugas=(sis[8].siswa.tugas1+sis[8].siswa.tugas2+sis[8].siswa.
tugas3+sis[8].siswa.tugas4)/4;

sis[8].siswa.nilai_akhir=((sis[8].siswa.rata_rata_tugas*0.3)+
(sis[8].siswa.mid*0.3)+(sis[8].siswa.uas*0.4));

sis[9].nim ="13020190182";

sis[9].nama ="Rahmadhani";

sis[9].siswa.tugas1= 79;

sis[9].siswa.tugas2= 90;

sis[9].siswa.tugas3= 100;

sis[9].siswa.tugas4= 78;

sis[9].siswa.mid= 76;

sis[9].siswa.uas= 90;

sis[9].siswa.rata_rata_tugas=(sis[9].siswa.tugas1+sis[9].siswa.tugas2+sis[9].siswa.
tugas3+sis[9].siswa.tugas4)/4;
sis[9].siswa.nilai_akhir=((sis[9].siswa.rata_rata_tugas*0.3)+
(sis[9].siswa.mid*0.3)+(sis[9].siswa.uas*0.4));

sis[10].nim ="13020190103";

sis[10].nama ="Rana";

sis[10].siswa.tugas1= 79;

sis[10].siswa.tugas2= 90;

sis[10].siswa.tugas3= 100;

sis[10].siswa.tugas4= 78;

sis[10].siswa.mid= 76;

sis[10].siswa.uas= 90;

sis[10].siswa.rata_rata_tugas=(sis[10].siswa.tugas1+sis[10].siswa.tugas2+sis[10].s
iswa.tugas3+sis[10].siswa.tugas4)/4;

sis[10].siswa.nilai_akhir=((sis[10].siswa.rata_rata_tugas*0.3)+
(sis[10].siswa.mid*0.3)+(sis[10].siswa.uas*0.4));

sis[11].nim ="13020190185";

sis[11].nama ="Munti";

sis[11].siswa.tugas1= 79;

sis[11].siswa.tugas2= 90;
sis[11].siswa.tugas3= 100;

sis[11].siswa.tugas4= 78;

sis[11].siswa.mid= 76;

sis[11].siswa.uas= 90;

sis[11].siswa.rata_rata_tugas=(sis[11].siswa.tugas1+sis[11].siswa.tugas2+sis[11].s
iswa.tugas3+sis[11].siswa.tugas4)/4;

sis[11].siswa.nilai_akhir=((sis[11].siswa.rata_rata_tugas*0.3)+
(sis[11].siswa.mid*0.3)+(sis[11].siswa.uas*0.4));

sis[12].nim ="13020190170";

sis[12].nama ="Hikma";

sis[12].siswa.tugas1= 79;

sis[12].siswa.tugas2= 90;

sis[12].siswa.tugas3= 100;

sis[12].siswa.tugas4= 78;

sis[12].siswa.mid= 76;

sis[12].siswa.uas= 90;

sis[12].siswa.rata_rata_tugas=(sis[12].siswa.tugas1+sis[12].siswa.tugas2+sis[12].s
iswa.tugas3+sis[12].siswa.tugas4)/4;
sis[12].siswa.nilai_akhir=((sis[12].siswa.rata_rata_tugas*0.3)+
(sis[12].siswa.mid*0.3)+(sis[12].siswa.uas*0.4));

sis[13].nim ="13020190165";

sis[13].nama ="Nadya";

sis[13].siswa.tugas1= 80;

sis[13].siswa.tugas2= 75;

sis[13].siswa.tugas3= 90;

sis[13].siswa.tugas4= 74;

sis[13].siswa.mid= 88;

sis[13].siswa.uas= 80;

sis[13].siswa.rata_rata_tugas=(sis[13].siswa.tugas1+sis[13].siswa.tugas2+sis[13].s
iswa.tugas3+sis[13].siswa.tugas4)/4;

sis[13].siswa.nilai_akhir=((sis[13].siswa.rata_rata_tugas*0.3)+
(sis[13].siswa.mid*0.3)+(sis[13].siswa.uas*0.4));

sis[14].nim ="13020190193";

sis[14].nama ="Asri";

sis[14].siswa.tugas1= 89;

sis[14].siswa.tugas2= 90;
sis[14].siswa.tugas3= 100;

sis[14].siswa.tugas4= 88;

sis[14].siswa.mid= 96;

sis[14].siswa.uas= 90;

sis[14].siswa.rata_rata_tugas=(sis[14].siswa.tugas1+sis[14].siswa.tugas2+sis[14].s
iswa.tugas3+sis[14].siswa.tugas4)/4;

sis[14].siswa.nilai_akhir=((sis[14].siswa.rata_rata_tugas*0.3)+
(sis[14].siswa.mid*0.3)+(sis[14].siswa.uas*0.4));

sis[15].nim ="13020190177";

sis[15].nama ="Rara";

sis[15].siswa.tugas1= 89;

sis[15].siswa.tugas2= 90;

sis[15].siswa.tugas3= 99;

sis[15].siswa.tugas4= 87;

sis[15].siswa.mid= 90;

sis[15].siswa.uas= 82;

sis[15].siswa.rata_rata_tugas=(sis[15].siswa.tugas1+sis[15].siswa.tugas2+sis[15].s
iswa.tugas3+sis[15].siswa.tugas4)/4;
sis[15].siswa.nilai_akhir=((sis[15].siswa.rata_rata_tugas*0.3)+
(sis[15].siswa.mid*0.3)+(sis[15].siswa.uas*0.4));

sis[16].nim ="13020190133";

sis[16].nama ="Dera";

sis[16].siswa.tugas1= 72;

sis[16].siswa.tugas2= 76;

sis[16].siswa.tugas3= 90;

sis[16].siswa.tugas4= 80;

sis[16].siswa.mid= 73;

sis[16].siswa.uas= 66;

sis[16].siswa.rata_rata_tugas=(sis[16].siswa.tugas1+sis[16].siswa.tugas2+sis[16].s
iswa.tugas3+sis[16].siswa.tugas4)/4;

sis[16].siswa.nilai_akhir=((sis[16].siswa.rata_rata_tugas*0.3)+
(sis[16].siswa.mid*0.3)+(sis[16].siswa.uas*0.4));

sis[17].nim ="13020190190";

sis[17].nama ="Alsa";

sis[17].siswa.tugas1= 81;

sis[17].siswa.tugas2= 76;
sis[17].siswa.tugas3= 80;

sis[17].siswa.tugas4= 77;

sis[17].siswa.mid= 83;

sis[17].siswa.uas= 60;

sis[17].siswa.rata_rata_tugas=(sis[17].siswa.tugas1+sis[17].siswa.tugas2+sis[17].s
iswa.tugas3+sis[17].siswa.tugas4)/4;

sis[17].siswa.nilai_akhir=((sis[17].siswa.rata_rata_tugas*0.3)+
(sis[17].siswa.mid*0.3)+(sis[17].siswa.uas*0.4));

sis[18].nim ="13020190116";

sis[18].nama ="Nisa";

sis[18].siswa.tugas1= 80;

sis[18].siswa.tugas2= 88;

sis[18].siswa.tugas3= 70;

sis[18].siswa.tugas4= 76;

sis[18].siswa.mid= 75;

sis[18].siswa.uas= 77;

sis[18].siswa.rata_rata_tugas=(sis[18].siswa.tugas1+sis[18].siswa.tugas2+sis[18].s
iswa.tugas3+sis[18].siswa.tugas4)/4;
sis[18].siswa.nilai_akhir=((sis[18].siswa.rata_rata_tugas*0.3)+
(sis[18].siswa.mid*0.3)+(sis[18].siswa.uas*0.4));

sis[19].nim ="13020190747";

sis[19].nama ="Eca";

sis[19].siswa.tugas1= 88;

sis[19].siswa.tugas2= 92;

sis[19].siswa.tugas3= 100;

sis[19].siswa.tugas4= 76;

sis[19].siswa.mid= 78;

sis[19].siswa.uas= 90;

sis[19].siswa.rata_rata_tugas=(sis[19].siswa.tugas1+sis[19].siswa.tugas2+sis[19].s
iswa.tugas3+sis[19].siswa.tugas4)/4;

sis[19].siswa.nilai_akhir=((sis[19].siswa.rata_rata_tugas*0.3)+
(sis[19].siswa.mid*0.3)+(sis[19].siswa.uas*0.4));

cout<<"Data Dari Struct : "<<endl;

for (int i=0;i<20;i++){

cout<<"Nim : " <<sis[i].nim<<endl;

cout<<"Nama : "<<sis[i].nama<<endl;
cout<<"Tugas 1 : "<<sis[i].siswa.tugas1<<endl;

cout<<"Tugas 2 : "<<sis[i].siswa.tugas2<<endl;

cout<<"Tugas 3 : "<<sis[i].siswa.tugas3<<endl;

cout<<"Tugas 4 : "<<sis[i].siswa.tugas4<<endl;

cout<<"Nilai Mid : "<<sis[i].siswa.mid<<endl;

cout<<"Nilai UAS : "<<sis[i].siswa.uas<<endl;

cout<<"Rata-Rata Tugas : "<<sis[i].siswa.rata_rata_tugas<<endl;

cout<<"Nilai Akhir : "<<sis[i].siswa.nilai_akhir<<endl;

cout<<"_ "<<endl;

return 0;

Anda mungkin juga menyukai