PENGANTAR CODING
Dosen Pengampu:
Oleh:
23073101
FAKULTAS TEKNIK
2023
1.Program :
Sorting dalam contoh ini bersifat ascending atau terurut dari nilai
kecil ke besar */
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 5
int data[N];
void urutkan();
int main() {
int i;
int datanya;
scanf("%d", &datanya);
fflush(stdin);
data[i] = datanya;
getch();
urutkan();
datanya = data[i];
printf("%d\t", datanya);
getch();
return 0;
void urutkan() {
indexMin = i;
indexMin = j;
temp = data[indexMin];
data[indexMin] = data[i];
data[i] = temp;
Sceenshot program:
Output:
2. Program:
#include <stdio.h>
#include <stdlib.h>
#define N 5
int data[N];
void urutkan();
int main() {
int i;
int datanya;
scanf("%d", &datanya);
fflush(stdin);
data[i] = datanya;
urutkan();
datanya = data[i];
printf("%d\t", datanya);
}
printf("\n");
return 0;
void urutkan() {
indexMaks = i;
indexMaks = j;
if (indexMaks != i) {
temp = data[indexMaks];
data[indexMaks] = data[i];
data[i] = temp;
}
Screenshot program:
Output:
3. program:
#include <stdio.h>
#include <stdlib.h>
#define N 5
int data[N];
void urutkan();
void infokan();
int main() {
int i;
int datanya;
scanf("%d", &datanya);
fflush(stdin);
data[i] = datanya;
urutkan();
infokan();
return 0;
}
void urutkan() {
indexMin = i;
indexMin = j;
if (indexMin != i) {
temp = data[indexMin];
data[indexMin] = data[i];
data[i] = temp;
void infokan() {
int i, datanya;
printf("\nData terurut\n");
printf("%d\t", datanya);
printf("\n");
Screenshot program:
Output:
4. program:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 3
char nama[30];
char nim[5];
} MHS;
typedef struct NILAI {
double mid;
double uas;
double tugas;
double quiz;
double nAkhir;
char nHuruf;
} NILAI;
MHS mhs;
NILAI nilai;
} DATAMHS;
void judul();
void bacaMhs();
void urutkan();
DATAMHS dataMhs[N];
int main() {
int i, posisi;
char nimnya[5];
judul();
bacaMhs();
printf("Tekan Enter...");
getchar();
infoMhs(i);
printf("\n");
printf("Tekan Enter...");
getchar();
posisi = cariData(nimnya);
if (posisi != -1) {
printf("\nData ditemukan...\n");
infoMhs(posisi);
} else {
printf("Tekan Enter...");
getchar();
urutkan();
infoMhs(i);
printf("\n");
printf("Selesai...Tekan Enter...");
getchar();
return 0;
void judul() {
printf("=============================================\n");
printf("Program ini digunakan untuk mencontohkan pembuatan fungsi tanpa nilai balik\n");
printf("==============================================\n");
getchar();
void bacaMhs() {
int i;
char namanya[30];
char nimnya[5];
printf("========================================\n");
strcpy(dataMhs[i].mhs.nama, namanya);
strcpy(dataMhs[i].mhs.nim, nimnya);
bacaNilai(i);
}
printf("\nEntri Data selesai...Tekan enter...");
getchar();
void bacaNilai(int i) {
scanf("%lf", &midnya);
scanf("%lf", &uasnya);
scanf("%lf", &tugasnya);
scanf("%lf", &quiznya);
dataMhs[i].nilai.mid = midnya;
dataMhs[i].nilai.uas = uasnya;
dataMhs[i].nilai.tugas = tugasnya;
dataMhs[i].nilai.quiz = quiznya;
dataMhs[i].nilai.nAkhir = nAkhirnya;
dataMhs[i].nilai.nHuruf = konversiHuruf(nAkhirnya);
printf("\n");
}
void infoMhs(int i) {
char namanya[30];
char nimnya[5];
double nAkhirnya;
char nHurufnya;
printf("========================================\n");
strcpy(namanya, dataMhs[i].mhs.nama);
strcpy(nimnya, dataMhs[i].mhs.nim);
nAkhirnya = dataMhs[i].nilai.nAkhir;
nHurufnya = dataMhs[i].nilai.nHuruf;
printf("========================================\n");
}
char konversiHuruf(double na) {
return 'A';
return 'B';
return 'C';
return 'D';
else
return 'E';
if (!strcmp(nimnya, dataMhs[i].mhs.nim)) {
void urutkan() {
DATAMHS temp;
int indexMaks = i;
for (int j = i + 1; j < N; j++) {
indexMaks = j;
if (indexMaks != i) {
temp = dataMhs[indexMaks];
dataMhs[indexMaks] = dataMhs[i];
dataMhs[i] = temp;
Screenshot Program:
Output:
5. Tulis kembali prosedur pengurutan dengan metode (1) Buble sort, (2) Selection Sort
(Maximum Sort dan Minimum Sort)), (3) Insertion Sort, (4) Heap Sort, (5) Shell Sort, (6) Quick
Sort, (7) Merge Sort, (8) Radix Sort, dan (9) Tree Sort.
1. Bubble Sort:
arr[j] = arr[j+1];
arr[j+1] = temp;
}
2. Selection Sort:
int i, j, min_idx;
min_idx = i;
min_idx = j;
arr[min_idx] = arr[i];
arr[i] = temp;
3. Insertion Sort:
int i, key, j;
key = arr[i];
j = i - 1;
// Move elements of arr[0..i-1] that are greater than key to one position ahead of their
current position
arr[j + 1] = arr[j];
j = j - 1;
arr[j + 1] = key;
Buat sebuah program yang dapat digunakan untuk mendata hasil pertandingan lompat tinggi
dari sejumlah peserta. Lalu urutkan peserta berdasarkan tinggi lompatan.
Program:
#include <stdio.h>
#include <stdlib.h>
struct Peserta {
char nama[50];
float tinggiLompatan;
};
int main() {
int jumlahPeserta;
scanf("%d", &jumlahPeserta);
// Deklarasi array dari struktur Peserta
scanf("%s", peserta[i].nama);
scanf("%f", &peserta[i].tinggiLompatan);
urutkanPeserta(peserta, jumlahPeserta);
return 0;
peserta[j + 1] = temp;
Screenshot program:
Output:
Buatlah program yang dapat digunakan untuk mengolah hasil pertandingan balap sepeda
sehingga program dapat menentukan dan menampilkan para juara lomba.
Program:
#include <stdio.h>
#include <stdlib.h>
struct PesertaBalap {
char nama[50];
int waktu;
};
int main() {
int jumlahPeserta;
// Input jumlah peserta
scanf("%d", &jumlahPeserta);
scanf("%s", peserta[i].nama);
scanf("%d", &peserta[i].waktu);
urutkanPeserta(peserta, jumlahPeserta);
return 0;
peserta[j + 1] = temp;
Screenshot program:
Output: