From 060652e9b06ee2b82ba1604ce1e66760e9aa1fbd Mon Sep 17 00:00:00 2001 From: 13513010 <13513010@ld5-01.if.itb.ac.id> Date: Fri, 12 Feb 2016 11:07:28 +0700 Subject: [PATCH] Insertion Function and MPI --- insertion_sort.c | 76 ++++++++++++++++++++++++++++++++++++----------- mpi_hostfile | 7 +++++ sort | Bin 0 -> 8768 bytes 3 files changed, 65 insertions(+), 18 deletions(-) create mode 100644 mpi_hostfile create mode 100755 sort diff --git a/insertion_sort.c b/insertion_sort.c index 42d8677..d88047e 100644 --- a/insertion_sort.c +++ b/insertion_sort.c @@ -2,20 +2,12 @@ /* insertion sort ascending order */ #include <stdio.h> - -int main() +#include "mpi.h" +#include <stdlib.h> + +void insertionSort(int n, int* array) { - int n, array[1000], c, d, t; - - printf("Enter number of elements\n"); - scanf("%d", &n); - - printf("Enter %d integers\n", n); - - for (c = 0; c < n; c++) { - scanf("%d", &array[c]); - } - + int d,t,c; for (c = 1 ; c <= n - 1; c++) { d = c; @@ -27,12 +19,60 @@ int main() d--; } } +} + +int max(int *array, int size) { + int max = array[0]; + int i; + for(i=1; i<size; i++) { + if(array[i]>max) max = array[i]; + } + return max; + +} + +int min(int *array, int size) { + int min = array[0]; + int i; + for(i=1; i<size; i++) { + if(array[i]<min) min = array[i]; + } + return min; +} + + +int main() { + + /*MPI_Init(NULL,NULL); + int rank; + int size; + MPI_Comm_rank(MPI_COMM_WORLD, &rank); + MPI_Comm_size(MPI_COMM_WORLD, &size); + + double time_bucket= 0.0; + double time_insert= 0.0;*/ + + int n, c, d, t; + printf("Enter number of elements\n"); + scanf("%d", &n); - printf("Sorted list in ascending order:\n"); + printf("Enter %d integers\n", n); + int *array = (int*)malloc(sizeof(int)*n); + + for (c = 0; c < n; c++) { + scanf("%d", &array[c]); + } + + //float div = (max(array, n) - min(array, n)/size); + //printf("%f", div); + + insertionSort(n, array); + printf("Sorted list in ascending order:\n"); + for (c = 0; c <= n - 1; c++) { printf("%d\n", array[c]); - } - - return 0; -} \ No newline at end of file + } + +} + diff --git a/mpi_hostfile b/mpi_hostfile new file mode 100644 index 0000000..1aab781 --- /dev/null +++ b/mpi_hostfile @@ -0,0 +1,7 @@ +#daftar host +localhost +167.205.35.26 +167.205.35.28 +167.205.35.29 +167.205.35.30 +167.205.35.31 diff --git a/sort b/sort new file mode 100755 index 0000000000000000000000000000000000000000..c00e66efe1d5f0bb1e95f15e87054528026b118a GIT binary patch literal 8768 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 W*VGH}fXfX;FT32Gir;l*#{LC^6E9By literal 0 HcmV?d00001 -- GitLab