/* ************************************************************************** ************************************************************************** ************************************************************************** CUIDADO JA ESTA COM A SOLUÇÂO!! ************************************************************************** ************************************************************************** ************************************************************************** */ #include #include #define TAMANHO_VETOR 10 void exibirMenu(); /* //TODO: Pessoal nosso cõdigo ainda pode apresentar um comportamento indesejado. Ajustar para representar melhor quando o vetor estiver vazio - Desafio próxima semana. */ int main() { printf("Controle de Dados:\n"); int valores[TAMANHO_VETOR]; int posicaoAtual = 0; int continuar = 1; int opcao; int valor; int maior, indiceMaior; //********************************************************* //SOLUÇÃO int menor, indiceMenor; do{ exibirMenu(); printf("Informe um valor:"); scanf("%i", &opcao); switch(opcao){ case 0: printf("Obrigado!\n"); continuar = 0; break; case 1: printf("Informe o valor:"); scanf("%i", &valor); //Colocar o valor dentro do vetor if(posicaoAtual < TAMANHO_VETOR){ valores[posicaoAtual] = valor; posicaoAtual++; } else { printf("Vetor esta cheio!\n"); } break; case 6: //Mostra o vetor printf("Exibe o conteudo do vetor:\n"); for(int i =0 ; i < posicaoAtual ; i++){ printf("No indice: %i temos: %i\n",i, valores[i]); } break; case 2: if(posicaoAtual != 0){ maior = valores[0]; indiceMaior = 0; for(int i = 0; i< posicaoAtual; i++){ if(valores[i] > maior){ maior = valores[i]; indiceMaior = i; } } printf("Maior valor %i que esta na posicao %i\n", maior, indiceMaior); } else { printf("Vetor vazio!\n"); } break; //********************************************************* //SOLUÇÃO case 3: if(posicaoAtual != 0){ menor = valores[0]; indiceMenor = 0; for(int i = 0; i< posicaoAtual; i++){ if(valores[i] < menor){ menor = valores[i]; indiceMenor = i; } } printf("Menor valor %i que esta na posicao %i\n", menor, indiceMenor); } else { printf("Vetor vazio!\n"); } break; //********************************************************* //SOLUÇÃO case 4: if(posicaoAtual != 0){ float soma; for(int i= 0; i < posicaoAtual; i++){ soma += valores[i]; } float media = soma/posicaoAtual; printf("Valor médio: %.3f\n", media); } else { printf("Vetor vazio!\n"); } break; //********************************************************* //SOLUÇÃO case 5: if(posicaoAtual > 0){ posicaoAtual--; } break; default: printf("Opcao Invalida\n"); break; } }while(continuar); return 0; } void exibirMenu(){ printf("1 - Adicionar valor\n"); printf("2 - Maior valor\n"); printf("3 - Menor valor\n"); printf("4 - Valor Medio\n"); printf("5 - Remover valor (ultimo)\n"); printf("6 - Mostrar vetor!\n"); printf("0 - Sair\n"); }