Jawab:
1. #include<stdio.h>
typedef struct mhs{
int npm,nilai;
char nama[20],mata_kul[10];
} mhs;
mhs mahasiswa[50];
int main(){
int n;
printf("Masukkan jumlah mahasiswa : "); scanf("%d", &n);
int i;
int j;
for( i=1;i<=n;i++){
printf("\nData ke-%d :\n", i);
printf("NPM\t\t: "); scanf("%d", &mahasiswa[i].npm);
printf("Nama\t\t: "); scanf("%s", mahasiswa[i].nama);
printf("Mata kuliah\t: "); scanf("%s", mahasiswa[i].mata_kul);
printf("Nilai\t\t: "); scanf("%d", &mahasiswa[i].nilai);
}
//Proses mengurutkan NPM metode bubble sort
for(i=1;i<=n;i++){
for( j=1;j<=n;j++){
if (mahasiswa[i].npm < mahasiswa[j].npm){
int bantu = mahasiswa[i].npm;
mahasiswa[i].npm = mahasiswa[j].npm;
mahasiswa[j].npm = bantu;
}
}
}
printf("\n===================Urut berdasarkan NPM==========================\n");
printf("-----------------------------------------------------------------"); printf("\n|NPM\t|\tNama\t|\tMata Kuliah\t|\tNilai\t|\n");
printf("-----------------------------------------------------------------");
for( i=1;i<=n;i++){
printf("\n|%d\t|\t%s\t|\t%s\t\t|\t%d\t|", mahasiswa[i].npm,mahasiswa[i].nama,mahasiswa[i].mata_kul,mahasiswa[i].nilai);
}
printf("\n-----------------------------------------------------------------");
printf("\n");
return 0;
}
4.2 Tugas Akhir
Buatlah algoritma dan terjemahkan dalam bahasa C untuk memasukkan data belanja dan menampilkannya dalam bentuk nota Belanja. Total Harga dan Total belanja didapat dengan melakukan proses perhitungan kemudian hasil nya ditampilkan dalam bentuk seperti contoh dibawah ini.
Jawab :
Algoritma Tabel_Data_Belanja
{User diminta untuk menginputkan tanggal pembelian, nama pembeli, alamat pembeli, kode barang, dan jumlah satuan(item). Kemudian akan ditampilkan dalam bentuk tabel}
DESKRIPSI :
1. User menginputkan tanggal pembelian, nama pembeli, alamat pembeli, kode barang, dan jumlah satuan(item).
2. Data akan diproses dengan menggunakan record.
3. Record belanja terdiri dari field kode barang,
Source Code:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void input();
void tampil();
void clrscr();
void coba_lagi();
void satuan_x_harga();
typedef struct data_barang{
char kode[20];
char nama[20];
int harga, satuan,total;
}brg;
brg brng[20];
int j,i,n;
void input(){
printf("Jumlah Barang : ");scanf("%d",&n);
for (j=1;j<=n;j++){
printf("Barang ke- %d\n", j);
printf("Kode Barang : ");scanf("%s", brng[j].kode);
printf("Nama Barang : ");scanf("%s", brng[j].nama);
printf("Harga Satuan : ");scanf("%d", &brng[j].harga);
printf("Jumlah : ");scanf("%d",&brng[j].satuan);
}
}
//tampil
void tampil(){
int jumlah;
jumlah=0;
printf("\n=========================================================================\n");
printf("= No = Kode = Nama = Harga = Jumlah = Harga x Jumlah\n");
printf("=========================================================================\n");
for (j=1;j<=n;j++){
printf("= %d = %s = %s = %d = %d = %d\n",j,brng[j].kode,brng[j].nama,brng[j].harga,brng[j].satuan,brng[j].total);
}
printf("=========================================================================\n");
for (j=1;j<=n;j++){
jumlah = jumlah + brng[j].total;
}
printf("= TOTAL = %d\n", jumlah);
printf("=========================================================================\n");
};
//clrscr
void clrscr() {
if (system( "clear" )) system( "cls" );
}
void satuan_x_harga(){
for (j=1;j<=n;j++){
brng[j].total = brng[j].harga * brng[j].satuan;
}
}
int main(){
input();
satuan_x_harga();
tampil();
printf("\n\n");
coba_lagi();
}
void coba_lagi(){
int pil2;
printf("Coba lagi ?? \n[1]Yes. [2]No.\n");
scanf("%d", &pil2);
switch (pil2){
case 1 : clrscr(); main(); break;
case 2 : system("exit"); break;
default :
printf("Inputan anda salah.\n\n");
coba_lagi(); break;
}
}