Para representar un número entero no negativo, de hasta 16 dígitos, de modo que sus dígitos se ubiquen en las posiciones coincidentes con el orden creciente de las respectivas potencias de 10, mientras que las posiciones restantes deben contener el valor cero, teniendo esta descripción genere una función que genere un nuevo número como resultado de sumar otros dos (debe usar representación dada) y devolver esta función
int *sumar(int *num1, int *num2, int tam){ int *sum = (int*)malloc(sizeof(int)*tam); int i; for(i = 0; i < tam; i++){ sum[i] = 0; } int acarreo = 0; for(i = tam - 1; i >= 0; i--){ int resultado = acarreo + num1[i] + num2[i]; if(resultado > 9){ acarreo = resultado / 10; resultado = resultado % 10; } else{ acarreo = 0; } sum[i] = resultado; } return sum; }