Skip to main content

Contoh program radix sort untuk C++ || Borland C++


     Sesuai dengan judulnya kali ini saya akan membagikan Contoh program radix sort untuk C++ atau Borland C++, langsung saja kalian download filenya dibawah ini :



#include <stdio.h>
#include <conio.h>
#define MAX 100
#define SHOWPASS

void print(int *a, int n)
{
     int i;
     for (i = 0; i < n; i++)
      printf("%d\t", a[i]);
}

void radix_sort(int *a, int n)
{
     int i, b[MAX], m = 0, exp = 1;
     for (i = 0; i < n; i++) {
     if (a[i] > m)
        m = a[i];
 }
    while (m / exp > 0)
    {
        int box[10] = { 0 };
        for (i = 0; i < n; i++)
            box[a[i] / exp % 10]++;
        for (i = 1; i < 10; i++)
            box[i] += box[i - 1];
      for (i = n - 1; i >= 0; i--)
            b[--box[a[i] / exp % 10]] = a[i];
      for (i = 0; i < n; i++)
            a[i] = b[i];
            exp *= 10;

#ifdef SHOWPASS
      printf("\n\nPASS   : ");
      print(a, n);
#endif
    }
}

int main()
{
     int arr[MAX];
     int i, num;

     printf("\nMasukkan berapa banyak elemen ( MAX %d ) : ", MAX);
     scanf("%d", &num);
     printf("\nMasukkan %d Elements : ", num);
     for (i = 0; i < num; i++)
        scanf("%d", &arr[i]);
     printf("\nARRAY  : ");
     print(&arr[0], num);
     radix_sort(&arr[0], num);
     printf("\n\nSORTED  : ");
     print(&arr[0], num);

     getch();
}


     Tampilan program :

Comments

Post a Comment

Popular posts from this blog

Membuat Segitiga dengan "*" dalam Bahasa C/C++

 Dalam pemrograman, mencetak pola seperti segitiga menggunakan karakter * adalah latihan dasar yang sering digunakan untuk memahami konsep perulangan ( loop ). Pada artikel ini, kita akan belajar cara membuat segitiga menggunakan bahasa pemrograman C/C++. Konsep Dasar Kita akan menggunakan perulangan bersarang ( nested loop ) untuk mencetak segitiga. Struktur dasarnya terdiri dari: Loop luar : Mengatur jumlah baris segitiga. Loop dalam pertama : Mencetak spasi untuk merapikan segitiga. Loop dalam kedua : Mencetak karakter * membentuk segitiga. Kode Program dalam C Berikut adalah kode lengkap dalam bahasa C: #include <stdio.h> int main() { int i, j, tinggi; // Meminta pengguna memasukkan tinggi segitiga printf("Masukkan tinggi segitiga: "); scanf("%d", &tinggi); // Loop untuk baris for (i = 1; i <= tinggi; i++) { // Loop untuk mencetak spasi (agar segitiga rata tengah) for (j = 1; j <= tinggi - i; ...

Contoh program penggabungan dua string untuk C++ || Borland C++

    Sesuai dengan judulnya kali ini saya akan membagiakan program penggabungan atau menyatukan dua buat kata ( string ) menjadi satu kalimat, langsung saja kalian lihat sourcode dibawah ini : #include <stdio.h> #include <string.h> #include <conio.h> void concat(char[], char[]); int main() {    char s1[50], s2[30];    printf("\nMasukkan kata pertama : ");    gets(s1);    printf("\nMasukkan kata kedua : ");    gets(s2);    concat(s1, s2);    printf("\nKalimat yang terbentuk adalah : %s", s1);    getch(); } void concat(char s1[], char s2[]) {    int i, j;    i = strlen(s1);    for (j = 0; s2[j] != '\0'; i++, j++)    {       s1[i] = s2[j];    }    s1[i] = '\0'; }     Tampilan program :