Visitantes


Contador
Contador
Tire suas dúvidas nos links abaixo!
Obs: A estrutura do blog não permite colocar a linha dos includes corretamente, ao passar o código para o compilador favor preencher essa linha corretamente

domingo, 17 de abril de 2011

Média, par, impar e produto.( Com vetores)

/*
Faça um programa em Linguacem C que leia 3 valores e:

a)Se os três forem pares, imprima a media dos três.
b)Se os três forem impares, imprima o produto dos três.

*/

#include < stdio.h >
#include < stdlib.h >

int main( )
{ /*
Na linha abaixo declaramos um vetor de 3 posições para guardar os três
valores digitados, uma variavel para guardar o resto de uma divisão e
outra para usarmos como um contador.
*/

int numero[3],resto,x;

/*
Agora declaramos três variaveis onde contaremos quantos numeros são pares e
impares e tambem uma variavel para o produto dos três numeros.
*/

int par=0, impar=0,soma=0,produto=1;

// Na proxima linha declaramos uma variavel para guardar a media.

double media;

// Agora temos uma mensagem para o usuario

printf("Digite os valores\n");

/*
Abaixo temos um contador com a missão de receber os valores do vetor, calcular
o resto da divisão de um numero por 2 e descobrir se um numero é par ou impar,
somar os valores digitados e guardar na variavel soma, calcular o produto dos
numeros digitados e guardar na variavel produto.

* Detalhes http://logicaelinguagem.blogspot.com/2009/07/for.html
* http://logicaelinguagem.blogspot.com/2009/07/descobrir-se-um-numero-e-par-ou-impar.html

*/
for(x=0;x<3;x++)
{
scanf("%d",&numero[x]);
resto = numero[x]%2; // calcula o resto de uma divisão
soma = soma + numero[x];
produto = produto * numero[x]; // calcula produto
if(resto == 0)
{
par = par + 1;
}
else
{
impar = impar +1;
}

}

if ( par == 3)
{
media = soma/3; //Calculo da media.

printf("A media dos valores digitados e %.2f ",media);

printf("\n");
}
/* Na linha acima vamos imprimir uma mensagem e o valor da media, no operador %f
foi colocado entre o % e o f um ponto e o numero 2, isso formata o valor da media
para duas casas decimais.
*/

if (impar == 3)
{
// Abaixo vamos imprimir o valor da variavel produto.
printf("O produto dos numeros digitados e %d",produto);

printf("\n");
}

if ((par!=3)&& (impar!=3))

{ printf(" \nOs numeros digitados estao misturados em pares e impares \n"); }

/*
Esse ultimo bloco tem uma estrutura de condição composta, teste se par for diferente
de 3 e impar for diferente 3 o programa imprime a mensagem:
Os numeros digitados estao
*/

system("PAUSE");
return 0;
}

Progressão Geométrica.

/*
Faça um programa que leia um numero n, o primeiro termo a1 e a razão q de uma
progressão Geométrica, calcule e mostre o an(n-enésimo) termo. Utilize a formula
de obtenção do n-énesimo termo an = a1 * r n-1.

*/
#include < stdio.h >
#include < stdlib.h >

int main()
{

int n,r,an,a1,razao;// Declarar variaveis usaremos todas so tipo inteiro.

/* Nos blocos abaixo vamos imprimir uma mensagem e receber os valores de n, a1, razão.
Para que o programa mostre quebra de linha usaremos \n.
*/
printf("Digite um valor para N \n");
scanf("%d",&n);

printf("Digite um valor para A1 \n");
scanf("%d",&a1);

printf("Digite um valor para Razao \n");
scanf("%d",&razao);

/* Abaixo vamos calcular separado o valor da razão elevado a n-1 e armazenar
o valor na variavel r.
*/

r = pow(razao,(n-1));

// Agora basta usar a formula de obtenção do n-énesimo termo.

an = a1 * r;

printf("\n");//Pular linha

printf("%d",an); //Mostra o n-énesimo.

printf("\n");//Pular linha

system("PAUSE");
return 0;
}

Média, par, impar e produto.

/*
Faça um programa em Linguacem C que leia 3 valores e:

a)Se os três forem pares, imprima a media dos três.
b)Se os três forem impares, imprima o produto dos três.

*/

#include < stdio.h >
#include < stdlib.h >

int main()
{

/* Abaixo declaramos 4 variaveis, uma para guardar o produto e outras 3 para os
valores digitados.
Esse exercicio teria um numero menor de linhas se feito com vetores.
*/
int n1,n2,n3,produto;

// Agora declarams uma váriavel para média.

double media;

/* Abaixo declaramos duas váriaveis para contar a quantidade de pares e impares
elas já são iniciadas com zero, tambem declaramos variaveis para guardar o resto
da divisão de n por 2.
*/
int par=0, impar=0,r1,r2,r3;

// Na proxima linha temos uma mensagem ao usuário.

printf("Digite os tres numeros \n");

/* Agora vamos receber os três valores de uma só vez quando trabalhamos com
variáveis do tipo inteiro para ler o valor usamos %d.
*/
scanf("%d%d%d",&n1,&n2,&n3);

/* Para descobrir se os valores são pares ou impares usaremos o operador mod (%)
para calcular o resto da divisão de n por 2, em seguida usamos a estrutura de
decisão if para descobrir se o numero é par, se o resto da divisão for zero é
par caso contrario impar.
*/

r1=n1%2;
if(r1 ==0)
{par = par + 1;}
else
{impar = impar +1;}

/* No bloco acima e nos próximos dois testamos a variavel da seguinte forma
se n1 dividido por 2 tiver resto zero, n1 é par então somamos 1 a variavel
par, caso contrário n1 é impar ai somamos 1 a variavel impar.
*/

r2 = n2%2;
if(r2 ==0)
{par = par + 1;}
else
{impar = impar +1;}

r3 = n3%2;
if(r3 ==0)
{par = par + 1;}
else
{impar = impar +1;}

/* Agora testamos as variaveis par e impar, se par for igual a 3 significa que
os três valores são pares e calcularemos a media, se impar for igual a 3
significa que os três valores são impares e calcularemos o produto dos três
valores, se nenhuma das variaveis forem iguais a 3 o programa imprimirá a
mensagem "Os numeros digitados estão misturados em pares e impares".
*/

if ( par == 3)
{
media = (n1+n2+n3)/3; //Calculo da media.
printf("A media dos valores digitados e %.2f ",media);

printf("\n");
}
/* Na linha acima vamos imprimir uma mensagem e o valor da media, no operador %f
foi colocado entre o % e o f um ponto e o numero 2, isso formata o valor da media
para duas casas decimais.
*/

if (impar == 3)
{
produto = n1*n2*n3; // Calculo do produto.
printf("O produto dos numeros digitados e %d",produto);
printf("\n");
}

if ((par!=3)&& (impar!=3))

{ printf(" \nOs numeros digitados estao misturados em pares e impares \n"); }

/*
Esse ultimo bloco tem uma estrutura de condição composta, teste se par for diferente
de 3 e impar for diferente 3 o programa imprime a mensagem:
Os numeros digitados estao misturados em pares e impares
*/
system("PAUSE");
return 0;
}

domingo, 3 de abril de 2011

Numeros Perfeitos.

/* Numero Perfeito é o numero que a soma de seus divisores resulta nele mesmo.
Ex: 6
6 = 1 + 2 + 3, é importante salientar que o numero é excluido da lista de divisores.
*/
#include
#include

int main(int argc, char *argv[])
{

int x,soma=0,i;
/* Acima declaramos a variavel x para um contador, soma que será iniciada com o
valor zero, e i que será o numero digitado pelo ususario.
*/

printf("Digite um numero");
scanf("%d",&i);// Aqui o programa lê o valor digitado.


for(x=1;x<=i;x++)
{
/* Abaixo descobrimos os divisores do valor digitado e vamos guardando esses
valores na variavel soma.
*/
if(i % x == 0)
{
soma = soma + x;
}

}
soma = soma-i;//Aqui subtraimos dda variavel soma o numero digitado.
if (soma == i)// Agora pra saber se o numero é perfeito basta comparar soma com i.
{printf("numero perfeito");}
else
{printf("Este numero nao e perfeito");}


system("PAUSE");



return 0;
}





Numeros Primos.

/* Numero primo é um numero que só pode ser dividido por 1 e por ele mesmo, ou
seja, é um numero que possui apenas 2 divisores.
*/
#include
#include

int main(int argc, char *argv[])
{
int a,x,d=0;
/* Na linha acima declaramos as variaveis (a que será o numeramos digitado
para saber se e primo, x para ser um contador, d que será a quantiddade de
divisores do numero digitado, d já é iniciada com valor zero).
*/
printf("Digite um numero:\n");
scanf("%d",&a); // Aqui o programa lê o numero digitado pelo usuario.

/*Agora vamos descobrir quantos divisores tem esse nº, para fazer isso criamos
um for que inicia com x valendo o mesmo que o numero digitado e a cada volta no
laço e subtrai 1 de seu valor e divide o numero digitado pelo valor de x, quando
encontra um divisor acrescenta na variavel d uma unidade.
*/
for(x=a;x>=1;x--)
{
// Abaixo fazemos a divisão do numero digitado por x se o resto for 0 temos um divisor
if (a%x == 0)
{
d = d+1;
}
}

if(d == 2) // Este if testa o numero de divisores, se for 2 o numero é primo senão não é
{ printf("\nEste numero e primo\n");}

else
{ printf("\nEste numero nao e primo\n");}



system("PAUSE");
return 0;
}