Kursus Pemrograman C Dasar dan Algoritma
Kursus Pemrograman C Dasar dan Algoritma
[Link] 1 course_net
Course-Net Indonesia
Daftar Isi
[Link] 2 course_net
Course-Net Indonesia
1. Pengenalan Bahasa C
Penjelasan coding:
• #include à cara menggunakan library fungsi agar dapat
menggunakan fungsi atau modul yang sudah tersedia.
• <stdio.h> à standard library untuk input output dan
lainnya.
• void main () à fungsi utama yang akan dijalankan
pertama kali ketika eksekusi.
[Link] 3 course_net
Course-Net Indonesia
[Link] 4 course_net
Course-Net Indonesia
Contoh:
int x;
Penjelasan:
Program akan memesan tempat di memori untuk menampung nilai
yang mempunyai tipe data integer. Untuk mengakses lokasi memori
tersebut, kita menggunakan nama variabel ‘x’.
Contoh :
int angka1 = 5;
float angka2 = 2.6;
char huruf = ‘A’;
char nama[20] = “Anto”;
[Link] 5 course_net
Course-Net Indonesia
[Link] 6 course_net
Course-Net Indonesia
Penjelasan :
1. Code tersebut membuat sebuah variabel dengan nama “angka”
dan tipe data integer. Setelah itu program akan meminta
inputan user dan ditampung ke dalam variabel “angka”.
Fflush(stdin) digunakan untuk mengosongkan buffer stdin
(standard input), digunakan setelah scanf.
2. Code tersebut membuat meminta input 1 karakter dan
ditampung ke dalam variabel huruf.
3. Code tersebut membuat sebuah variabel dengan nama “nama”
dan tipe data kumpulan char. Setelah itu program akan
meminta inputan user dan ditampung ke dalam variabel
“nama”.
Penjelasan :
1. Code tersebut membuat sebuah variabel dengan nama “angka”,
tipe data integer dan berisi angka 5. Setelah itu program akan
mencetak isi dari variabel “angka” yaitu 5.
[Link] 7 course_net
Course-Net Indonesia
[Link] 8 course_net
Course-Net Indonesia
4. Operasi Aritmatika
Contoh:
int angka1 = 9;
int angka2 = 2;
int hasil;
hasil = angka1 + angka2; 11
hasil = angka1 - angka2; 7
hasil = angka1 * angka2; 18
hasil = angka1 / angka2; 4
hasil = angka1 % angka2; 1
Pada increment dan decrement terdapat kondisi post dan pre. Untuk
post, eksekusi increment/decrement dijalankan di akhir. Sedangkan
pre akan menjalankan increment/decrement terlebih dahulu.
Contoh:
int angka = 5; int angka=5;
printf(“%d”, angka++); printf(“%d”, ++angka);
Hasil: 5 Hasil: 6
[Link] 9 course_net
Course-Net Indonesia
5. Selection
Struktur code:
if ( <<kondisi1>> )
{
<<statement1>>;
}
else if ( <<kondisi2>> )
{
<<statement2>>;
}
else
{
<<statement3>>;
[Link] 10 course_net
Course-Net Indonesia
}
Penjelasan:
• Jika kondisi1 terpenuhi, maka statement1 jalan.
• Jika kondisi2 terpenuhi, maka statement2 jalan.
• Selain itu, statement3 jalan.
2. SWITCH CASE
SWITCH CASE merupakan struktur kontrol yang multiple-
selection.
Struktur code:
switch ( <<variabel>> )
{
case << nilai1 >> :
<< statement1 >>;
break;
case << nilai2 >> :
<< statement2 >>;
break;
default :
<< statement3 >>;
}
Penjelasan:
• Jika isi variabel sama dengan nilai1, maka statement1 jalan.
• Jika isi variabel sama dengan nilai2, maka statement2 jalan.
• Selain itu jalan statement3.
3. TERNARY
TERNARY merupakan selection yang sama seperti IF ELSE, akan
tetapi memiliki code yang lebih singkat.
[Link] 11 course_net
Course-Net Indonesia
Struktur code:
<<variabel>> = ( <<kondisi>> ) ? <<statement1>> :
<<statement2>>;
Penjelasan:
Jika kondisi terpenuhi, maka statement1 akan dijalankan dan
ditampung ke variabel. Jika kondisi tidak terpenuhi, maka
statement2 akan jalan dan ditampung ke variabel.
[Link] 12 course_net
Course-Net Indonesia
6. Repetition
Penjelasan:
1. Ekspresi1 dijalankan.
2. Ekspresi2 diperiksa apakah true atau false. Jika true maka
statement dijalankan, jika false maka statement tidak
dijalankan.
3. Setelah statement dijalankan, maka ekspresi3 dijalankan.
Kemudian kembali ke poin nomor 2.
Contoh:
for (int i=0; i<5; i++)
{
printf(“%d\n”, i);
}
Hasil:
0
1
2
3
4
[Link] 13 course_net
Course-Net Indonesia
2. WHILE
WHILE digunakan jika jumlah perulangan belum diketahui dan
disesuaikan terhadap kondisi. Perulangan WHILE akan tidak
dijalankan sama sekali jika kondisi tidak terpenuhi sejak awal.
Struktur code:
while ( <<kondisi>> )
{
<<statement>>;
}
Penjelasan:
1. Kondisi akan dicek apakah true atau false. Jika true maka
statement dijalankan, jika false maka statement tidak
dijalankan.
2. Setelah statement dijalankan, kembali ke poin 1.
3. Jika kondisi selalu bernilai true, maka akan terjadi infinite
loop atau looping forever.
Contoh:
int angka = 1;
while (angka<4)
{
printf(“%d\n”, angka);
angka++;
}
Hasil:
1
2
3
[Link] 14 course_net
Course-Net Indonesia
3. DO WHILE
DO WHILE digunakan jika jumlah perulangan belum diketahui
dan disesuaikan terhadap kondisi. Perulangan DO WHILE akan
menjalankan statement terlebih dahulu sebelum memeriksa kondisi.
Struktur code:
do
{
<<statement>>;
}while ( <<kondisi>> );
Penjelasan:
1. Statement akan dijalankan terlebih dahulu.
2. Kemudian dilanjutkan cek kondisi.
3. Jika kondisi true, maka kembali ke poin 1. Jika false maka DO
WHILE selesai.
Contoh:
int angka = 1;
do
{
printf(“%d\n”, angka);
angka++;
}while (angka<5);
Hasil:
1
2
3
4
[Link] 15 course_net
Course-Net Indonesia
7. Array
Array adalah sekumpulan data dengan tipe data dan nama variabel
yang sama. Elemen dalam array diakses melalui indeks. Indeks dalam
array dimulai dari indeks ke-0.
Array dapat dibuat dalam 1 dimensi dan lebih dari 1 dimensi. Contoh
kasus penggunaan array adalah penyimpanan nilai 30 mahasiswa. Jika
menggunakan array, kita dapat menampung nilai 30 mahasiswa
tersebut dalam 1 variabel. Array juga diterapkan dalam pembentukan
string yaitu menggunakan array of char.
Contoh :
int nilai [30];
nilai[0] = 90;
nilai[1] = 100;
int angka[2][3] = {{1,2,3}, {4,5,6}};
angka [1][2]=100;
char nama[50] = “Anto”;
Penjelasan:
• Varibel nilai dapat tersedia 30 elemen. Namun hanya terisi
elemen ke 0 dan 1 dengan nilai 90 dan 100.
• Variabel angka terdiri dari 2 dimensi, yaitu 2 baris dan 3 kolom.
Baris pertama berisi angka 1, 2, 3. Sedangkan baris kedua berisi
angka 4, 5, 6.
• Elemen indeks ke [1][2] yaitu angka 6 akan diganti dengan angka
100.
• Varibel nama bertipe data array of char (string) dan menampung
kata “Anto”.
[Link] 16 course_net
Course-Net Indonesia
8. Pointer
Pointer adalah tipe data yang berisi alamat variabel lain. Pointer
ditunjukkan dengan simbol *, sedangkan alamat variabel
menggunakan simbol &.
Contoh:
Nama variabel angka ptr
Isi variabel 100 123
Alamat 123 789
Code:
int angka = 100;
int *ptr;
ptr = &angka;
*ptr = 30;
Penjelasan:
• Variabel angka berisi nilai 100 dengan alamat memori 123.
• Varibel ptr berisi alamat variabel angka (123).
• Alamat dari variabel ptr adalah 789.
• Isi variabel angka dapat diubah dengan menggunakan *ptr.
[Link] 17 course_net
Course-Net Indonesia
9. Function
Contoh:
void print (int a)
{
a = 10;
printf (“%d\n”, a);
}
void main ()
{
int a = 5;
print(a);
printf(“%d\n”, a);
}
[Link] 18 course_net
Course-Net Indonesia
Hasil:
10
5
Penjelasan:
• Pada saat printf di dalam function print, hasil yang
dicetak yaitu angka 10, karena a telah diganti menjadi
angka 10 dalam function print.
• Pada saat printf di dalam function main, hasil yang
dicetak yaitu angka 5. Hal ini dikarenakan passing by
value tidak dapat mengubah nilai variabel melalui
parameter aktual.
2. Passing by pointer.
Passing by pointer adalah mengirimkan alamat dari suatu
variabel, parameter aktual menggunakan simbol “&” dan
parameter formal menggunakan simbol pointer *. Passing by
pointer dapat mengubah nilai dari variabel.
Contoh:
void print (int *a)
{
*a = 10;
printf (“%d\n”, *a);
}
void main ()
{
int a = 5;
print(&a);
printf(“%d\n”, a);
}
[Link] 19 course_net
Course-Net Indonesia
Hasil:
10
10
Penjelasan:
Hasil cetak a di function main dan print sama-sama
memberikan angka 10. Hal ini dikarenakan passing by pointer,
sehingga penggantian nilai variabel a di function print juga
akan mengganti nilai variabel a yang terdapat di dalam
function main.
3. Passing by reference.
Passing by value adalah mengirimkan varibel melalui
parameter aktual, alamat dari variabel akan diakses di
parameter formal dengan penggunaan simbol “&”.
Contoh:
void print (int &a)
{
a = 10;
printf (“%d\n”, a);
}
void main ()
{
int a = 5;
print(a);
printf(“%d\n”, a);
}
Hasil:
10
10
[Link] 20 course_net
Course-Net Indonesia
Penjelasan:
Hasil cetak a di function main dan print sama-sama
memberikan angka 10. Hal ini dikarenakan passing by
reference, sehingga penggantian nilai variabel a di function
print juga akan mengganti nilai variabel a yang terdapat di
dalam function main.
[Link] 21 course_net
Course-Net Indonesia
[Link] 22 course_net
Course-Net Indonesia
11. Recursion
Contoh:
int faktorial (int angka)
{
if (angka==0 || angka==1)
{
return 1;
}
else
{
Return n*faktorial(n-1);
}
}
void main()
{
int angka = 5;
printf(“%d\n”, faktorial(angka));
}
Penjelasan:
• Function faktorial merupakan function yang recursive.
• Angka akan dikurangi 1 terus menerus ketika pemanggilan
ulang function faktorial.
• Jika angka mencapai 1 atau 0, maka function faktorial akan
berakhir dan mengembalikan nilai ke function main.
[Link] 23 course_net
Course-Net Indonesia
12. File
Operasi file yang akan dibahas yaitu baca dan tulis file. File tersebut
akan disimpan dalam bentuk teks. File tersebut akan dibaca dan ditulis
melalui program C yang dikembangkan.
Baca file :
FILE *read = fopen (“[Link]”, “r”);
char nama[50];
while (!feof(read))
{
fscanf(read, “%[^\n]\n”, nama);
printf(“%s\n”, nama);
}
[Link] 24 course_net
Course-Net Indonesia
Penjelasan:
• FILE akan melakukan open terhadap [Link] di folder project.
• Ketika tidak terdeteksi akhir file, maka akan dilakukan
pembacaan file per baris dan mencetaknya.
Tulis file :
FILE *write = fopen (“[Link]”, “w”);
fprintf(write, “Anto”);
fclose(write);
Penjelasan:
• FILE akan melakukan open terhadap [Link] di folder project.
• Program akan mencetak kata “Anto” ke dalam file tersebut.
• Karena jenis operasinya adalah w (write), maka [Link] akan
ditimpa dengan kata “Anto”.
• Jika menggunakan jenis operasi a (append), maka kata “Anto”
akan ditambahkan di baris terakhir.
[Link] 25 course_net
Course-Net Indonesia
13. Sorting
[Link] 26 course_net
Course-Net Indonesia
Penjelasan:
• Variabel angka terdiri dari 5 elemen integer yang tidak
berurutan.
• Looping dimulai dari varibel i 0-4 untuk dijadikan elemen.
• Setiap looping i, variabel j juga dilooping sejumlah i sampai 4.
• Angka ke-i akan dibandingkan dengan angka ke-j.
• Jika angka ke-i lebih besar daripada angka ke-j, maka akan di-
swap angka ke-i dan ke-j.
• Setelah looping i dan j selesai, maka data telah disorting
secara ascending. Jika ingin menjadi descending, cukup
mengganti simbol > yang terdapat di dalam kondisi IF
menjadi <.
• Isi variabel angka dilooping untuk mencetak hasil dari indeks
ke-0 hingga indeks ke-4.
[Link] 27 course_net
Algorithm and Programming
Buatlah sebuah program untuk input NIM, nama lengkap, umur, dan target IPK. Gunakan tipe data yang tepat
untuk setiap variabel yang digunakan untuk menampung input, kemudian hasil input ditampilkan kembali.
Algorithm and Programming
Buatlah sebuah program untuk menginput kata. Setelah input, program akan menampilkan code dari aplikasi
beserta inputan user.
Algorithm and Programming
Buatlah sebuah program untuk menghitung luas segitiga. Program akan meminta input alas dan tinggi. Setelah
dinput, program akan memberikan output rangkuman soal dan jawaban luas segitiga.
Algorithm and Programming
Buatlah sebuah program untuk menghitung nilai akhir mata kuliah. Pada saat program dimulai, program akan
menampilkan pembagian persentase nilai TM, UTS, dan UAS. Setelah itu user akan diminta untuk meng-input
nilai TM, UTS, dan UAS. Setelah berhasil input, program akan menampilkan hasil kalkulasi nilai akhir.
Algorithm and Programming
Buatlah sebuah program untuk mengkonversi jam, menit, dan detik menjadi detik. Pada awal program akan
meminta input jam, menit, dan detik. Setelah diinput, program akan kalkulasi dan menampilkan dalam satuan
detik.
Algorithm and Programming
Buatlah sebuah program untuk mengkonversi detik menjadi jam, menit, dan detik. Pada awal program akan
meminta input detik. Setelah diinput, program akan kalkulasi dan menampilkan dalam satuan jam, menit, dan
detik.
Algorithm and Programming
Buatlah sebuah program untuk menentukan bilangan ganjil atau genap. Saat program dimulai, program akan
meminta input sebuah bilangan dan program akan memberikan hasil bilangan tersebut bilangan genap atau
ganjil.
Algorithm and Programming
Buatlah sebuah program untuk menentukan grade nilai huruf dari input nilai angka. Pembagian grade nilai
sebagai berikut:
• Grade A : 90 – 100
• Grade A- : 85 – 89
• Grade B+ : 80 – 84
• Grade B : 75 – 79
• Grade B- : 70 – 74
• Grade C : 65 – 69
• Grade D : 50 – 64
• Grade E : 0 – 49
Algorithm and Programming
Buatlah sebuah program untuk menentukan jenis huruf, apakah vokal atau konsonan ataupun inputan bukan
huruf.
Algorithm and Programming
Buatlah sebuah program untuk menerima input kata, kemudian menampilkan kembali dengan ketentuan:
• Huruf di urutan ganjil ditampilkan dalam huruf kapital.
• Huruf di urutan genap ditampilkan dalam huruf kecil.
Algorithm and Programming
Buatlah sebuah program untuk menerima input sebuah karakter dan angka. Program akan mencetak segitiga
siku-siku kiri dengan menggunakan karakter yang diinput setinggi angka yang diinput.
Algorithm and Programming
Buatlah sebuah program untuk validasi inputan angka dengan kisaran antara 1 – 100. Jika user meng-input
angka di luar kisaran tersebut ataupun bukan angka, program akan meminta kembali inputan hingga benar.
Setelah input benar, program akan mencetak kembali angka yang di-input user dengan benar.
Algorithm and Programming
Buatlah sebuah program untuk menghitung jumlah vokal dan konsonan dari kata yang diinput user. Pada awal
program, user akan diminta untuk meng-input kata. Setelah diinput, program akan menampilkan jumlah huruf
vokal maupun konsonan dari kata yang diinput.
Algorithm and Programming
Buatlah sebuah program untuk menjumlahkan angka-angka. Pada saat program dijalankan, program akan
meminta input sebuah angka (misalkan angka x). Program akan meminta input angka sebanyak x kali. Setelah
user menginput semua angka, program akan menjumlahkan angka-angka urutan ganjil dan genap kemudian
akan ditampilkan.
Algorithm and Programming
Buatlah sebuah program untuk menjumlahkan matrix 3x3. Pada awal program, program akan meminta user
untuk input angka-angka untuk matrix A dan B. Setelah itu program akan melakukan kalkulasi dan
menampilkan hasil dari penjumlahan matrix A dan B.
Algorithm and Programming
Buatlah sebuah program swap angka. User akan diminta untuk menginput angka X dan Y. Setelah diinput,
program akan melakukan swap pada kedua variabel tersebut dan menampilkannya kembali.
Algorithm and Programming
Buatlah sebuah aplikasi kasir sederhana. Aplikasi tersebut akan menampilkan list barang yang dijual dan menu
untuk jual, beli, dan exit aplikasi.
Pada awal, program akan menampilkan list barang yang dijual beserta menu untuk dipilih user. Menu hanya
bisa dipilih antara angka 1 – 3.
Ketika user meng-input menu 1, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Name : 5 – 15 karakter.
• Quantity : 1 – 100
• Price : 10.000 – 100.000
Jika input user salah, maka aplikasi akan meminta input kembali.
Algorithm and Programming
Ketika user meng-input menu 2, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Item yang ingin dijual : input antara 1 sampai jumlah jenis barang.
• Quantity : input antara 1 sampai jumlah quantity barang.
Setelah diinput maka aplikasi akan menghitung jumlah nominal yang harus dibayar user.
Jika user memilih menu 2 dan belum ada list barang, maka aplikasi akan menampilkan “Nothing to Update”.
Algorithm and Programming
Buatlah sebuah program untuk validasi input user agar hanya berisi huruf dan spasi. Jika input berisi karakter
lain, maka program akan meminta user untuk input kembali.
Algorithm and Programming
Buatlah sebuah program untuk memeriksa kata yang diinput user merupakan palindrome atau tidak.
Palindrome adalah kata yang pembacaan dari depan ataupun belakang akan menghasilkan kata yang sama.
Algorithm and Programming
Bilangan fibonacci adalah barisan bilangan didefinisikan secara rekursif dengan dimulai angka 0 dan 1,
bilangan berikutnya diperoleh dari menjumlahkan kedua bilangan yang berurutan sebelumnya. Buatlah sebuah
program untuk custom fibonacci. Custom yang dilakukan yaitu barisan bilangan akan dimulai dengan angka
0 dan n, n adalah bilangan yang diinput oleh user.
Setelah itu, user akan diminta untuk menginput jumlah angka fibonacci yang akan ditampilkan. Program akan
menampilkan barisan sesuai jumlah bilangan yang diisi dan user dapat meng-input kembali untuk index
fibonacci yang ingin ditampilkan.
Algorithm and Programming
Buatlah sebuah aplikasi untuk toko Course-Net Burger. Aplikasi tersebut akan menampilkan list burger yang
dijual, total pemasukan dan menu untuk jual, beli, update, dan exit aplikasi. List burger disimpan dalam struct.
Menu Home
Pada awal, program akan menampilkan list barang yang dijual, total pemasukan beserta menu untuk dipilih
user. Menu hanya bisa dipilih antara angka 1 – 4. Total income diperoleh dari akumulasi penjualan.
Menu 1
Ketika user meng-input menu 1, maka aplikasi akan menampilkan list burger dan meminta input dan validasi
sebagai berikut:
• Name : 5 – 15 karakter.
• Quantity : 1 – 100
• Price :4–9
Jika input user salah, maka aplikasi akan meminta input kembali.
Algorithm and Programming
Menu 2
Ketika user meng-input menu 2, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Burger yang ingin dijual: input antara 1 sampai jumlah jenis burger.
• Quantity : input antara 1 sampai jumlah quantity burger.
• Add extra : Y atau N
• Jika Y maka akan ada pilihan :
o Bacon Gravy : $2.3
o Chicken Strips : $2.5
o Liquid Cheese : $1.7
o Mozza Sticks : $2.0
o Onion Rings : 1.9
Setelah diinput maka aplikasi akan menghitung jumlah nominal yang harus dibayar user.
Jika burger habis terjual (quantity 0), maka burger tersebut akan dihapus dari list burger.
Jika user memilih menu 2 dan belum ada list burger, maka aplikasi akan menampilkan “Nothing to sell”.
Menu 3
Ketika user meng-input menu 3, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Burger yang ingin di-update : input antara 1 sampai jumlah jenis burger.
• Nama burger : 5 – 15 karakter.
• Quantity : 1 – 100 .
• Price : 4 – 9.
Setelah diinput maka aplikasi akan update list burger.
Algorithm and Programming
Jika user memilih menu 3 dan belum ada list burger, maka aplikasi akan menampilkan “Nothing to update”.
Algorithm and Programming
Buatlah sebuah aplikasi untuk Course-Net Book Store. Aplikasi tersebut akan digunakan untuk mengelola
buku yang terdapat di Course-Net Book Store seperti untuk menambah, update, ataupun hapus buku. Data-
data buku tersebut akan diambil dan disimpan ke dalam file .txt ketika ada perubahan data.
Berikut list buku yang telah tersedia saat ini dan dapat disimpan ke dalam file .txt.
Menu Home
Pada awal, program akan membaca file .txt, menampilkan list buku, dan menu untuk dipilih user. Menu hanya
bisa dipilih antara angka 1 – 4.
Menu 1
Ketika user meng-input menu 1, maka aplikasi akan menampilkan list buku dan meminta input dan validasi
sebagai berikut:
• Title : 5 – 30 karakter.
• Author : 5 – 30 karakter.
• Quantity : 1 – 20.
• Price : 100.000 – 800.000.
Jika input user salah, maka aplikasi akan meminta input kembali. Setelah berhasil input maka buku tersebut
akan masuk ke list buku.
Menu 2
Ketika user meng-input menu 2, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Buku yang ingin di-update : input antara 1 sampai jumlah jenis buku.
• Title : 5 – 30 karakter.
• Author : 5 – 30 karakter.
• Quantity : 1 – 20.
Algorithm and Programming
• Price : 100.000 – 800.000.
Setelah diinput maka aplikasi akan mengubah data buku yang di list.
Jika user memilih menu 2 dan belum ada list buku, maka aplikasi akan menampilkan “Nothing to update”.
Menu 3
Ketika user meng-input menu 3, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Buku yang ingin dihapus : input antara 1 sampai jumlah jenis buku.
Setelah diinput maka buku akan dihapus dari list.
Jika user memilih menu 3 dan belum ada list buku, maka aplikasi akan menampilkan “Nothing to delete”.
Menu 4
Jika user memilih menu 4, maka aplikasi akan menyimpan list buku ke dalam file .txt.
Algorithm and Programming
Buatlah sebuah aplikasi untuk Course-Net Training Center. Aplikasi tersebut akan digunakan untuk mengelola
data peserta yang terdapat di Course-Net Training seperti untuk menambah, update, hapus, dan sorting data
peserta. Data-data peserta tersebut akan diambil dan disimpan ke dalam file .txt ketika ada perubahan data.
Berikut list peserta yang telah tersedia saat ini dan dapat disimpan ke dalam file .txt.
Menu Home
Pada awal, program akan membaca file .txt, menampilkan list peserta, dan menu untuk dipilih user. Menu
hanya bisa dipilih antara angka 1 – 6.
Algorithm and Programming
Menu 1
Ketika user meng-input menu 1, maka aplikasi akan menampilkan list peserta dan meminta input dan validasi
sebagai berikut:
• NIM : angka dan berjumlah 10 digit.
• Name : 5 – 30 karakter.
• GPA : 1 – 4.
• Major : 2 – 15 karakter.
Jika input user salah, maka aplikasi akan meminta input kembali. Setelah berhasil input maka peserta tersebut
akan masuk ke list peserta.
Menu 2
Ketika user meng-input menu 2, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Peserta yang ingin di-update : input antara 1 sampai jumlah peserta.
• NIM : angka dan berjumlah 10 digit.
• Name : 5 – 30 karakter.
• GPA : 1 – 4.
• Major : 2 – 15 karakter.
Setelah diinput maka aplikasi akan mengubah data peserta yang di list.
Jika user memilih menu 2 dan belum ada list peserta, maka aplikasi akan menampilkan “Nothing to update”.
Menu 3
Ketika user meng-input menu 3, maka aplikasi akan meminta input dan validasi sebagai berikut:
• Peserta yang ingin dihapus : input antara 1 sampai jumlah peserta.
Setelah diinput maka peserta akan dihapus dari list.
Algorithm and Programming
Jika user memilih menu 3 dan belum ada list peserta, maka aplikasi akan menampilkan “Nothing to delete”.
Menu 4
Jika user memilih menu 4, maka list peserta akan di-sorting berdasarkan NIM secara descending.
Menu 5
Jika user memilih menu 5, maka list peserta akan di-sorting berdasarkan nama secara ascending.
Menu 6
Jika user memilih menu 4, maka aplikasi akan menyimpan list peserta ke dalam file .txt.