Skip to content
Snippets Groups Projects
Commit 021b9568 authored by dario.genga's avatar dario.genga
Browse files

Add method to convert int array to double array

Small refactoring of the code for more consistency for the pointer
parameter star (*) position.
parent 3b703fb8
No related branches found
No related tags found
No related merge requests found
......@@ -65,6 +65,11 @@ int main() {
printf("Result array after multiplication :\n");
print_array(result_mul_array, array_size);
// Convert the first array to an array of double
double *converted_array = convert_int_array_to_double(array, array_size);
printf("Array converted to double :\n");
print_array_of_double(converted_array, array_size);
// Free the memory
free(array);
free(second_array);
......
......@@ -5,7 +5,6 @@
#include "unidimensional_array.h"
#include <stdio.h>
#include <time.h>
size_t ask_array_size() {
size_t array_size = 0;
......@@ -14,7 +13,7 @@ size_t ask_array_size() {
return array_size;
}
void shuffle_array(int* array, size_t array_size) {
void shuffle_array(int *array, size_t array_size) {
for (size_t i = 0; i < array_size; i++)
{
int index1 = rand() % (int)array_size;
......@@ -23,7 +22,7 @@ void shuffle_array(int* array, size_t array_size) {
}
}
void fill_array_with_random_values(int* array, size_t array_size) {
void fill_array_with_random_values(int *array, size_t array_size) {
// Fill the array with all values from 0 to its size - 1
for (size_t i = 0; i < array_size; i++)
{
......@@ -35,7 +34,7 @@ void fill_array_with_random_values(int* array, size_t array_size) {
}
void perform_cyclic_permutation(int* array, size_t array_size, size_t cycle_number) {
void perform_cyclic_permutation(int *array, size_t array_size, size_t cycle_number) {
int *array_tmp = malloc(array_size * sizeof(int));
for (size_t i = 0; i < array_size; i++) {
......@@ -62,7 +61,19 @@ void print_array(int* array, size_t array_size) {
printf("]\n");
}
int find_lowest_value_index_in_array(int* array, size_t array_size) {
void print_array_of_double(double *array, size_t array_size) {
printf("[");
for (size_t i = 0; i < array_size; i++)
{
printf("%f", array[i]);
if (i + 1 < array_size) {
printf(" , ");
}
}
printf("]\n");
}
int find_lowest_value_index_in_array(int *array, size_t array_size) {
int lowest_value;
size_t lowest_index;
......@@ -78,13 +89,13 @@ int find_lowest_value_index_in_array(int* array, size_t array_size) {
return lowest_index;
}
void permute_lowest_value_with_last_value(int* array, size_t array_size) {
void permute_lowest_value_with_last_value(int *array, size_t array_size) {
int lowest_index = (int)find_lowest_value_index_in_array(array, array_size);
int last_index = array_size - 1;
swap(&array[lowest_index], &array[last_index]);
}
void sort_by_insertion_desc(int* array, size_t array_size) {
void sort_by_insertion_desc(int *array, size_t array_size) {
size_t i = 1;
while (i < array_size) {
......@@ -97,7 +108,7 @@ void sort_by_insertion_desc(int* array, size_t array_size) {
}
}
size_t count_elements_in_array_lower_than_value(int* array, size_t array_size, int value) {
size_t count_elements_in_array_lower_than_value(int *array, size_t array_size, int value) {
size_t total = 0;
for (size_t i = 0; i < array_size; i++)
......@@ -110,18 +121,28 @@ size_t count_elements_in_array_lower_than_value(int* array, size_t array_size, i
return total;
}
void compute_two_array(int* first_array, int* second_array, int* result_array, size_t array_size) {
void compute_two_array(int *first_array, int *second_array, int *result_array, size_t array_size) {
for (size_t i = 0; i < array_size; i++) {
result_array[i] = first_array[i] + second_array[i];
}
}
void multiply_array_with_value(int* array, size_t array_size, int* result_array, int value) {
void multiply_array_with_value(int *array, size_t array_size, int *result_array, int value) {
for (size_t i = 0; i < array_size; i++) {
result_array[i] = array[i] * value;
}
}
double *convert_int_array_to_double(int* array, size_t array_size) {
double *converted_array = malloc(array_size * sizeof(double));
for (size_t i = 0; i < array_size; i++) {
converted_array[i] = (double)array[i];
}
return converted_array;
}
void swap(int *x, int *y)
{
int tmp = *x;
......
......@@ -9,25 +9,29 @@
size_t ask_array_size();
void fill_array_with_random_values(int* array, size_t array_size);
void fill_array_with_random_values(int *array, size_t array_size);
int find_lowest_value_index_in_array(int* array, size_t array_size);
int find_lowest_value_index_in_array(int *array, size_t array_size);
void permute_lowest_value_with_last_value(int* array, size_t array_size);
void permute_lowest_value_with_last_value(int *array, size_t array_size);
void shuffle_array(int* array, size_t array_size);
void shuffle_array(int *array, size_t array_size);
void perform_cyclic_permutation(int* array, size_t array_size, size_t cycle_number);
void perform_cyclic_permutation(int *array, size_t array_size, size_t cycle_number);
void sort_by_insertion_desc(int* array, size_t array_size);
void sort_by_insertion_desc(int *array, size_t array_size);
size_t count_elements_in_array_lower_than_value(int* array, size_t array_size, int value);
size_t count_elements_in_array_lower_than_value(int *array, size_t array_size, int value);
void compute_two_array(int* first_array, int* second_array, int* result_array, size_t array_size);
void compute_two_array(int *first_array, int *second_array, int *result_array, size_t array_size);
void multiply_array_with_value(int* array, size_t array_size, int* result_array, int value);
void multiply_array_with_value(int *array, size_t array_size, int *result_array, int value);
void print_array(int* array, size_t array_size);
double *convert_int_array_to_double(int *array, size_t array_size);
void print_array(int *array, size_t array_size);
void print_array_of_double(double *array, size_t array_size);
void swap(int *x, int *y);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment