Jump to content
  • 0

Question

Olá amigos, sou novo no site e espero conseguir algumas respostas pra alguns programas que ando fazendo para treinar. 

Neste aqui encontro um problema chatinho; ele pede quantos números tu quiser colocar, pegará somente os pares e fará a média, desconsiderando os ímpares, e assim que digitar o nº 0, ele para a contagem e fecha a conta. O problema é que ele considera esse nº0 como parte da conta, adicionando +1 ao contador, gostaria de saber como resolver isso. Aqui vai o programa:

 

#include<stdio.h>
#include<stdlib.h>
imprime(float mean, int sum,int c){
    mean=sum/c;
    printf("The sum is:%.2d\n",sum);
    printf("The mean of the pairs numbers is:%.2f\n",mean);
}

int main()
{
    int n,sum,c; //n= number you pressed , sum= sum of the numbers, c= counter
    float mean; //mean= mean of the numbers
    sum=0;
    c=0;
    printf("This program will make the mean only of the pairs numbers;\nTo end the count, just press 0\n");
    do
 {
        printf("Number:\n");
        scanf("%d",&n);
        
        if(n%2==0)
        sum=sum+n;
        c=c+1;
        if((n%2)!=0)
        c=c;
        sum=sum;
        
        
    }while(n!=0);
    imprime(mean,sum,c);
system("pause");
}

 

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0
6 minutos atrás, Prog disse:

if (n == 0) break;

Utilizei o comando, porém não consegui resolver o caso; ele continua fazendo a conta errada, já tentei mudar o WHILE pra DO-WHILE e também não resolveu.

Share this post


Link to post
Share on other sites
  • 0
1 hora atrás, Diego Hamed disse:

Olá amigos, sou novo no site e espero conseguir algumas respostas pra alguns programas que ando fazendo para treinar. 

Neste aqui encontro um problema chatinho; ele pede quantos números tu quiser colocar, pegará somente os pares e fará a média, desconsiderando os ímpares, e assim que digitar o nº 0, ele para a contagem e fecha a conta. O problema é que ele considera esse nº0 como parte da conta, adicionando +1 ao contador, gostaria de saber como resolver isso. Aqui vai o programa:

#include<stdio.h>
#include<stdlib.h>
imprime(float mean, int sum,int c){
    mean=sum/c;
    printf("The sum is:%.2d\n",sum);
    printf("The mean of the pairs numbers is:%.2f\n",mean);
}


int main()
{
    int n,sum,c; //n= number you pressed , sum= sum of the numbers, c= counter
    float mean; //mean= mean of the numbers
    sum=0;
    c=0;
    printf("This program will make the mean only of the pairs numbers;\nTo end the count, just press 0\n");
    do
 {
        printf("Number:\n");
        scanf("%d",&n);
        
        if(n%2==0)
        sum=sum+n;
        c=c+1;
        if((n%2)!=0)
        c=c;
        sum=sum;
        
        
    }while(n!=0);
    imprime(mean,sum,c);
system("pause");
}

 

Olá, inicie o programa verificando antes se o 0 (zero) foi digitado:

 

#include<stdio.h>
#include<stdlib.h>
imprime(float mean, int sum,int c) {
	mean=sum/c;
	printf("The sum is:%.2d\n",sum);
	printf("The mean of the pairs numbers is:%.2f\n",mean);
}

int main() {
	int n,sum,c; //n= number you pressed , sum= sum of the numbers, c= counter
	float mean; //mean= mean of the numbers
	sum=0;
	c=0;
	printf("This program will make the mean only of the pairs numbers;\nTo end the count, just press 0\n");
	do {
		printf("Number:\n");
		scanf("%d",&n);

		if (n == 0) {//se o numero for 0 não faço a soma
			break;
		} else if(n%2==0) {
			sum=sum+n;
			c=c+1;
			if((n%2)!=0)
				c=c;
			sum=sum;
		}
	} while(n!=0);
	imprime(mean,sum,c);
	system("pause");
}

 

  • +1 1

Share this post


Link to post
Share on other sites
  • 0
3 horas atrás, JosimarNew disse:

 

Olá, inicie o programa verificando antes se o 0 (zero) foi digitado:

 


#include<stdio.h>
#include<stdlib.h>
imprime(float mean, int sum,int c) {
	mean=sum/c;
	printf("The sum is:%.2d\n",sum);
	printf("The mean of the pairs numbers is:%.2f\n",mean);
}

int main() {
	int n,sum,c; //n= number you pressed , sum= sum of the numbers, c= counter
	float mean; //mean= mean of the numbers
	sum=0;
	c=0;
	printf("This program will make the mean only of the pairs numbers;\nTo end the count, just press 0\n");
	do {
		printf("Number:\n");
		scanf("%d",&n);

		if (n == 0) {//se o numero for 0 não faço a soma
			break;
		} else if(n%2==0) {
			sum=sum+n;
			c=c+1;
			if((n%2)!=0)
				c=c;
			sum=sum;
		}
	} while(n!=0);
	imprime(mean,sum,c);
	system("pause");
}

 

Cara, perfeito! Matou a charada, valeu a resposta! É um pouco da minha falta de conceito mesmo que me atrapalhou hehe.

 

  • +1 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Gsn99
      Olá!
       
      Alguém conhece algum programa que faz cortes em vídeos com essa função?  -> Nós usuários que escolhemos quantas vezes o video deve ser cortado, adicionando apenas o número de vezes que deve o vídeo ser cortado, em várias tamanho uniformes que se ajustam de acordo com o número de vezes que foi inserido pelo usuário. Obrigado pela atenção.
       
       
      Hello!

      Someone know of some program that make cuts in videos with this funccion ? -> We users that will choice how many times  the video must be cut, adding just a number of times that it must be cut. Example: The user choice 3 times and then the program devide the video in three parts with length uniform. I Apologize you about my English.
      Thank you.
    • By victoria veleda
      Exercício:
      Utilizando a estrutura SWITCH, criar um programa para ler o preço e a categoria de um produto. Depois, calcular e mostrar o valor reajustado com desconto, de acordo com uma das categorias: A = 50%; B = 25%; C = 15%; demais categorias = 5%.
       
      #include <stdio.h>
      int main(){
          
          int valor;
          int porc;
          
          printf("Informe o valor do produto a ser avaliado:\n");
          scanf("%i", &valor);
          
          printf("\nInforme a porcentagem do valor que deseja descobrir:\n\n");
          printf("[50]= 50%%\n");
          printf("[25]= 25%%\n");
          printf("[15]= 15%%\n");
          printf("[5]= 5%%\n");
          scanf("%i", &porc);
          
          int resul = (valor*porc)/100;
          
          
          switch(resul)    
              { 
              case 50:{
                  printf("Com 50%% de desconto fica: %i", resul);
                  break;
                  }
              case 25:{
                  printf("Com 25%% de desconto fica: %i", resul);
                  break;
              }
              case 15:{
                  printf("Com 15%% de desconto fica: %i", resul);
                  break;
              }
              case 5:{
                  printf("Com 5%% de desconto fica: %i", resul);
                  break;
              }
              default :{
                  printf("\n\nEsta opcao nao e valida!");
                  break;
              }
              }
          }
       
       
    • By victoria veleda
      Exercício:
      Utilizando a estrutura SWITCH, criar um programa para ler o preço e a categoria de um produto. Depois, calcular e mostrar o valor reajustado com desconto, de acordo com uma das categorias: A = 50%; B = 25%; C = 15%; demais categorias = 5%.
       
      #include <stdio.h>
      int main(){
          
          int valor;
          int porc;
          
          printf("Informe o valor do produto a ser avaliado:\n");
          scanf("%i", &valor);
          
          printf("\nInforme a porcentagem do valor que deseja descobrir:\n\n");
          printf("[50]= 50%%\n");
          printf("[25]= 25%%\n");
          printf("[15]= 15%%\n");
          printf("[5]= 5%%\n");
          scanf("%i", &porc);
          
          int resul = (valor*porc)/100;
          
          
          switch(resul)    
              { 
              case 50:{
                  printf("Com 50%% de desconto fica: %i", resul);
                  break;
                  }
              case 25:{
                  printf("Com 25%% de desconto fica: %i", resul);
                  break;
              }
              case 15:{
                  printf("Com 15%% de desconto fica: %i", resul);
                  break;
              }
              case 5:{
                  printf("Com 5%% de desconto fica: %i", resul);
                  break;
              }
              default :{
                  printf("\n\nEsta opcao nao e valida!");
                  break;
              }
              }
          }
       
       
    • By AnotherSunset
      Boa noite/dia gente. Preciso de ajuda aqui. Tenho um exercício no qual tenho de fazer um programa em pascal com o seguinte enunciado:
      Considere a soma S dos termo da série infinita apresentada abaixo:

      Fazer um programa em Free Pascal que calcule o valor aproximado da soma S dos termos da série até o momento em que a diferença das normas (módulo) de 2 termos consecutivos for menor que 0,000001 ({i.e.}, norma da diferença das normas de dois termos consecutivos).
       
      Segue meu algoritmos/programa:
       
      program calcserie;
      var
         soma, a1, a2, an  : real;
         sinal                : longint;
         cont, n, fat         : integer;
      begin
         n := 0;
         a1 := 1;
         a2 := 0;
         soma := 0;
         cont := 1;
         fat := 1;
         an := 1;
         sinal := 1;
         while (an) > 0.000001 do
            begin
            n := n + 2;
              while cont <= n do
                  begin
                  fat := fat * cont;
                  cont := cont + 1;
              end;
           soma := (soma + (a1 * sinal));
           sinal := sinal * -1;
           a2 := a1;
           a1 := ((1/fat));
              if (a2 < 0) then
              an := (a2 * -1) - a1
              else if (a1 < 0) then
              an := (a2) - (a1 * -1);
              end;
         write (soma:0:15);
      end.
       
      Meu erro está sendo a partir da 3 casa decimal

    • By Allana Pracuccio
      Olá pessoal,
       
      Estou precisando fazer um código que leia um arquivo txt que possui linha e coluna, faça operações simples e salve as respostas em outo arquivo txt.
       
      O arquivo contém somente duas colunas e algumas linhas, por exemplo:
      5.0       4.0
      7.25     2.0
      6.75     3.5
      101.0   75.25
      Preciso que associe o valor da primeira coluna como uma variável x e o segundo valor da linha como variável y.
       
      O código inserindo os dados manualmente é assim:
      main()
      {
          //Coordenadas UTM do pixel de origem (canto superior esquerdo)
          double o_E = 590571.25;
          double o_N = 4662468.75;
          
          double x = 5.0;
          double y = 4.0;
          
          
          //Tamanho do Pixel em metros
          double tam_pixel = 0.5;
          
          double linha, coluna, coord_E, coord_N;
          
          //Coordenada em E (eixo x)
          linha = (x - 1) * tam_pixel;
          coord_E = o_E + linha;
          
          //Coordenada em N (eixo y)
          coluna = (y - 1) * tam_pixel;
          coord_N = o_N - coluna;
          
          printf ("\n Coordenada E = %lf", coord_E);
          printf ("\n Coordenada N = %lf", coord_N);
      }
       
       Eu imagino que tenha que fazer um for após o código ler os valores de x e y do arquivo txt para fazer as operações, mas como não sei importar ainda não fiz essa parte.
       
      Se souberem como me ajudar ficarei muito grata.
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.