1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Medias

Discussão em 'Programação' iniciada por So_SiMpLe_, 24 de Fevereiro de 2008. (Respostas: 5; Visualizações: 655)

  1. So_SiMpLe_

    So_SiMpLe_ Power Member

    Boas!
    Pedido aqui num exame tipo, está um exercicio que pede varios numeros até se dar o 0, e depois fazer a media de todos.
    Até agora fiz assim (em papel):


    #include <stdio.h>

    typedef struct
    {
    int numero
    }numerario
    numerario list_numerario[100]
    int contnum=0;
    int main (void)
    {
    do{
    printf("Introduza um numero");
    scanf("%d", &list_numerario[contnum].numero);
    contnum ++;
    }while(list_numerario[contnum].numero>0);

    for(int i=0;i<contnum;i++)
    { --------------------------------Apartir daqui nao tenho ideia como fazer, a minha ideia era com o ciclo for, até o i = ao numero do contador, ele ia dando os valores de list_numerario.numero e ía somando.os todos.

    Mais tarde faria a divisao pelo numero total
    Posso fazer asim?
    Obrigado!
    CUmps
     
  2. balute

    balute Power Member

    Não sei programar em C, mas fica qualquer coisa assim:
    Código:
    int main(void)
    {
    int count=0; //quantidade de números inseridos
    int soma=0;
    int n; //armazena o número inserido
    do
    {
      printf("Introduza um numero");
      scanf("%d",&n);
      if(n!=0)
      {
        count++;
        soma+=n;
      }
    }while(n!=0);
    printf("%d",soma/count);
    }
    Não é preciso estar a armazenar os valores todos num array. Isso só vai complicar, acho eu.
     
    Última edição: 25 de Fevereiro de 2008
  3. S0ul

    S0ul Power Member

    Claro que podes, aliás é a abordagem mais correcta :) no teu caso é claro, é lógico que a maneira do Ш¡zard·σf·Шαr é a mais comum e mais facil, mas a tua abordagem está correcta.
     
  4. formatc

    formatc Power Member

    pelo que vi do teu programa ele está limitado a 100 numeros imagina que ele insere 100 numeros e nenhum deles é o 0, acaba por não funcionar muito bem e quanto ao array fazendo da tua maneira tinhas que ir percorrer todas as posições até ao numero de registo inseridos e somar.

    podes ir fazendo logo todas as contas tal e qual como te indicaram :P o array penso que não seja necessário :)

    Cumps formatc
     
  5. walterwolf

    walterwolf Power Member

    Se nao vai precisar dos dados, acho que nao é preciso colocar em array, da mais trabalho, acho ke a soluçao doШ¡zard·σf·Шαr é a mais simples e completa
     

Partilhar esta Página