Ir para o conteúdo
Ruka284

Média de 4 números

Mensagens Recomendadas

Ruka284

Estou a fazer um programa para fazer a média de 4 números.

Gostaria de saber se à outra maneira de simplificar, porque tem de haver,devido se fossem 500 numeros ????

#include<stdio.h>
#include<conio.h>

int main()
{
int num1=0,num2=0,num3=0,num4=0;
float media,indeterminacao;

printf(" \n   introduza primeiro numero   \n");
scanf("%d",&num1);
printf(" \n   introduza segundo numero   \n");
scanf("%d",&num2);
printf(" \n   introduza terceiro numero   \n");
scanf("%d",&num3);
printf(" \n   introduza quarto numero   \n");
scanf("%d",&num4);
if ((num1<0 or num2<0 or num3<0 or num4<0))
{
printf("erro %f",indeterminacao);
system("PAUSE"); // aqui queria saber como faço system ("pause") para parar aqui esta sintaxe, porque eu quero que saia um erro quando um nuemro for menor que zero
}
media=(num1+num2+num3+num4)/4;
media=(num2+num3+num4)/3;
media=(num1+num3+num4)/3;
media=(num1+num2+num4)/3;
media=(num1+num2+num3)/3;
media=(num3+num4)/2;
media=(num1+num4)/2;
media=(num1+num2)/2;
media=(num4)/1;
media=(num3)/1;
media=(num2)/1;
media=(num1)/1;
media=(num1+num3)/2;
media=(num2+num3)/2;
media=(num2+num4)/2;
printf("media e= %.2f",media);
getch();
}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg
#include <stdio.h>

// enterdata fill the array data with up to len values
// it returns the number of items entered
size_t enterdata(int *data, size_t len);

// average returns the average of the numbers in the array
double average(int *data, size_t len);

int main(void) {
 int array[1000];
 size_t n;

 n = enterdata(array, sizeof array / sizeof *array);
 printf("A média é %f.\n", average(array, n));
 return 0;
}

// a implementacao das funcoes enterdata() e average()
// fica ao criterio do estudante


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

O que estou à fazer e ter 4 numeros e para esses numeros ter todas as hipoteses para fazer à media.

vê bem qual o valor que estás a apresentar : é somente a última atribuição


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Ruka284

vê bem qual o valor que estás a apresentar : é somente a última atribuição

tenho as formula das medias.

e o if e se meter um numero menor que 0 dá erro

#include <stdio.h>

// enterdata fill the array data with up to len values
// it returns the number of items entered
size_t enterdata(int *data, size_t len);

// average returns the average of the numbers in the array
double average(int *data, size_t len);

int main(void) {
 int array[1000];
 size_t n;

 n = enterdata(array, sizeof array / sizeof *array);
 printf("A média é %f.\n", average(array, n));
 return 0;
}

// a implementacao das funcoes enterdata() e average()
// fica ao criterio do estudante

podias-me explicar melhor esta sintaxe, ainda não cheguei esta matéria.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo

Ruka284,

O pmg escreveu um bocado de código incompleto deliberadamente para que tu o possas completar. Mais especificamente, ele deixou para ti a implementação das funções enterdata() e average().

enterdata() é uma função que recebe como argumentos um apontador para um array de números e o tamanho do array, e devolve o número de números introduzidos.

average() recebe também um apontador para um array e o seu tamanho e devolve a média dos números dentro do array. Naturalmente, o número devolvido por enterdata() será utilizado como argumento da average().

Agora que está tudo explicado em português, diz-nos: que dúvidas tens? Pedir para explicar "essa sintaxe" não faz grande sentido e não nos dá ponta para pegar e ajudar-te.

Pista: tanto a enterdata() como a average() funcionam com base num ciclo.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

podias-me explicar melhor esta sintaxe, ainda não cheguei esta matéria.

Isto é a sintaxe de funções: o bloco básico de programação (em C).

A definição de uma função (int soma2(int a, int b) { return a + b; }, por exemplo) inclui 4 informações importantes: o nome da função, o tipo de valor devolvido, os argumentos necessários, e o código propriamente dito.

Mas para usar uma função o compilador não precisa de saber o código. Basta saber o nome, o tipo, e os argumentos. A indicação destes elementos chama-se um protótipo de função (int soma2(int a, int b);).

Editado por pmg

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.