yala neb 0 Denunciar post Postado Setembro 29, 2012 Faça um programa que dado o vetor unidimensional [2; 4; 35; 50; 23; 17; 9; 12; 27; 5] retorne: a. maior valor; b. menor valor c. média dos valores. # include<stdio.h> #include <stdlib.h> int main(){ int vetorU[10] = {2,4,35,50,23,17,9,12,27,5}; int j,i,x,soma=0,cont=0; float media=0; printf("Os valores do vetor e : \n\n"); for(i=0;i<10;i++){ printf("vetorU[%d] %d\n",i,vetorU[i]); } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Setembro 29, 2012 O que foi que você tentou? Compartilhar este post Link para o post Compartilhar em outros sites
Maikon Pscheidt 1 Denunciar post Postado Outubro 29, 2012 uia nenhuma resposta?? o0 int vetorU[10] = {2,4,35,50,23,17,9,12,27,5}; int Maior, Menor, soma=0, i; float media; for(i=0;i<=10;i++) { soma = soma + vetorU[i]; if(vetorU[i]>Maior) Maior = vetorU[i]; else if(vetorU[i]<Menor) Menor = vetorU[i]; } media = soma / 10; daew o resto é facil ;P Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Outubro 30, 2012 Seu código tem um problema: não define as variáveis maior e menor. A comparação pode dar certo como pode dar errado devido ao lixo em memória. #include <stdio.h> int main(void) { int vetorU[10] = {2,4,35,50,23,17,9,12,27,5}; float media = 0.0; int menor = vetorU[0]; int maior = menor; for(int i = 0; i<10;i++) { media += vetorU[i]/10.0; if(vetorU[i] > maior) maior = vetorU[i]; if(vetorU[i] < menor) menor = vetorU[i]; } } Compartilhar este post Link para o post Compartilhar em outros sites
Mateus GP 13 Denunciar post Postado Novembro 19, 2012 #include <stdio.h> int main(int argc, char* argv[]) { int vU[] = {2,4,35,50,23,17,9,12,27,5}; int maior = -1, menor = 0xFFFF; int soma = 0, num = 0; float media; while(num < 10) { if(maior < vU[num]) maior = vU[num]; if(menor > vU[num]) menor = vU[num]; soma += vU[num++]; } media = (float)soma / 10.f; printf("Maior valor: %d\n", maior); printf("Menor valor: %d\n", menor); printf("Media: %.2f\n", media); return 0; } Creio eu que este código seja eficaz. Seu código tem um problema: não define as variáveis maior e menor. A comparação pode dar certo como pode dar errado devido ao lixo em memória. #include <stdio.h> int main(void) { int vetorU[10] = {2,4,35,50,23,17,9,12,27,5}; float media = 0.0; int menor = vetorU[0]; int maior = menor; for(int i = 0; i<10;i++) { media += vetorU[i]/10.0; if(vetorU[i] > maior) maior = vetorU[i]; if(vetorU[i] < menor) menor = vetorU[i]; } } Há alguns erros no seu código que prejudicam a portabilidade, padrão C11, entre eles: uma função não vazia (void) deve ter um valor de retorno valido, uma variável não pode ser definida dentro dos parâmetros do laço for e é recomendável usar a seguinte declaração de main: int main(int argc, char* argv[]). Compartilhar este post Link para o post Compartilhar em outros sites
guidjos 65 Denunciar post Postado Novembro 19, 2012 Desde C99, e também em C11, quando "return 0;" não é explicitado na main, ele é implícito. No padrão C11, vide 5.1.2.2.3 (Program termination). A declaração de main sem parâmetros (int main(void)) é completamente portável, e faz parte explicitamente dos padrões C99 e C11. No último, vide 5.1.2.2.1 (Program startup). Também é permitido, em C99 e C11, declarar identificadores e inicializá-los dentro de expressões de for-statements (desde que tenham storage class "auto" ou "register", como é o caso do programa da Isis). No padrão C11, vide 6.8.5 (Iteration statements). Compartilhar este post Link para o post Compartilhar em outros sites
Mateus GP 13 Denunciar post Postado Novembro 20, 2012 Desde C99, e também em C11, quando "return 0;" não é explicitado na main, ele é implícito. No padrão C11, vide 5.1.2.2.3 (Program termination). A declaração de main sem parâmetros (int main(void)) é completamente portável, e faz parte explicitamente dos padrões C99 e C11. No último, vide 5.1.2.2.1 (Program startup). Também é permitido, em C99 e C11, declarar identificadores e inicializá-los dentro de expressões de for-statements (desde que tenham storage class "auto" ou "register", como é o caso do programa da Isis). No padrão C11, vide 6.8.5 (Iteration statements). Está certo, mas vamos deixar outras discussões de padrões para quando estiver terminado de ler todas as 683 paginas da ISO/IEC 9899:201x, que não são poucas. Nossos embates são bons para ambos, pois o que sei hoje devo ao que errei ontem, espero que não haja nenhum desconforto entre nós, pois sei que mal entrei no fórum e você já é moderador, espero que haja mais discussões amigáveis entre nós e outros, se assim não for para que serve um fórum. Compartilhar este post Link para o post Compartilhar em outros sites