1
When trying to compile the program I get the following message:
error: array type 'int [sizeExcedent]' is not Assignable
uppercase = vector II;
~~~~~~~~ ^
error: array type 'int [sizeExcedent]' is not Assignable
uppercase = vector I;
~~~~~~~~ ^
#include <stdio.h>
int main()
{
int tamanhoI;
int tamanhoII;
int indice;
int tamanho;
int vetorSoma[tamanho];
int tamanhoExcedente; //Se os vetores possuírem tamanhos diferentes, o tamanhoExcedente será o tamanho do maior vetor
int maiorVetor[tamanhoExcedente];
printf("\nDigite o tamanho do primeiro vetor\n(O valor do tamanho deve pertencer ao intervalo [1,20])\n");
scanf("%d", &tamanhoI);
printf("Digite o tamanho do segundo vetor\n(O valor do tamanho deve pertencer ao intervalo [1,20]\n");
scanf("%d", &tamanhoII);
int vetorI[tamanhoI];
int vetorII[tamanhoII];
while (tamanhoI >= 1 && tamanhoI <= 20 && tamanhoII >= 1 && tamanhoII <= 20)
{
if (tamanhoI < tamanhoII)
{
tamanho = tamanhoI;
tamanhoExcedente = tamanhoII;
maiorVetor = vetorII;
}
else if (tamanhoI > tamanhoII)
{
tamanho = tamanhoII;
tamanhoExcedente = tamanhoI;
maiorVetor = vetorI;
}
else
{
tamanho = tamanhoI; //Como neste caso os dois vetores possuem tamanhos iguais, *tamanho deve ser igual ao tamanho de qualquer um dos vetores
tamanhoExcedente = tamanhoI;
}
for (indice = 0; indice < tamanho; indice++)
{
vetorSoma[indice] = (vetorI[indice] + vetorII[indice]);
}
for (indice = (tamanho); indice < (tamanhoExcedente); indice++)
{
vetorSoma[indice] = maiorVetor[indice];
}
printf("\nVetor Soma = {");
for (indice = 1; indice < tamanhoExcedente; indice++)
{
printf("%d", vetorSoma[0]);
printf(", %d", vetorSoma[indice]);
}
printf("}\n");
return 0;
}
printf("ERRO\n O tamanho de um vetor excede o limite permitido!!!\n");
return 0;
}