Visitantes
Contador
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.
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.
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;
}
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
Numeros Primos.
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;
}
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
domingo, 27 de março de 2011
Fatorial
EX: Fatorial de 5 é 5x4x3x2x1.
#include < stdio.h >
#include < stdlib.h >
int main(int argc, char *argv[])
{
int numero,x,fatorial=1;
// Na linha acima declaramos as variaveis
printf("Digite um numero:\n");
scanf("%d",&numero);// Nesta linha o programa recebe o numero a ser fatorado
/*
Na linha abaixo usamos o comando (for) para calcular o fatorial, dentro dos
parenteses atribuimos a variavel x o valor da variavel numero que sera digitado
pelo usauario. Nessa mesma linha ainda entre os perenteses fazemos um teste para
ver se o numero digitado é maior que 1, caso seja a Expressão (x--) faz com que
a cada volta do looping seja subtraido 1 do valor digitado pelo usuario.
*/
for(x=numero;x>1;x--)
{
fatorial= fatorial*x;
/* Na linha acima usamos a variavel fatorial que recebe seu valor amrmazenado
multiplicado pelo valor de x, x a cada volta do looping será subtraido 1, e ao
final do looping quando x tiver valor menor que 1 o valor armazenado na variavel
fatorial será o valor do FATORIAL do numero digitado.
*/
}
printf("\n");// Este comando pula uma linha.
// Abaixo exibimos o valor digitado e em seguida o fatorial deste numero.
printf("O fatorial do numero %d e %d \n",numero,fatorial);
system("PAUSE");
return 0;
}
terça-feira, 7 de dezembro de 2010
Diagonal Principal
Quando procuramos em uma matriz 3x3 a sua diagonal principal estamos falando da diagonal que é iniciada do canto superior esquerdo e desce até o canto inferior direito.
A regra para um algoritmo que deve imprimir a diagonal principal é a seguinte, na diagonal principal os elementos tem o mesmo índice tanto em linha quanto em coluna.
Veja o exemplo abaixo:
Obs.: Não esqueça de preencher corretamente as linhas das bibliotecas da linguagem C, "As linhas dos includes".
#include
#include
int main(int argc, char *argv[])
{
int matriz[3][3];
int x,y;
printf("Digite os numeros:\n");
for(x=0;x<3;x++)
{for(y=0;y<3;y++)
{scanf("%d",&matriz[x][y]);}// neste bloco preenchemos a matriz
}
printf("valores da matriz:\n");
for(x=0;x<3;x++)
{printf("\n");
for(y=0;y<3;y++)
{ printf("%d\t",matriz[x][y]); }// neste bloco vamos imprimir a matriz
}
printf("\nDiagonal principal\n");
/*No bloco de comandos abaixo vamos imprimir a matriz novamente mas
com um IF dentro do comando FOR, esse IF compara os valores de
linha e coluna se forem iguais os valores serão impressos na tela */
for(x=0;x<3;x++)
{
for(y=0;y<3;y++)
{ if(x==y)
printf("%d\t",matriz[x][y]);
}
}
printf("\n");
system("PAUSE");
return 0;
}
domingo, 14 de novembro de 2010
Matrizes Bidimensionais
Para preencher ou imprimir uma matriz são necessários dois comandos FOR, uma para linha e outo para coluna, é usado um dentro outro.
A sintaxe para declaração de uma matriz é bem simples, usa-se o tipo de dado o nome da matriz e as quantidades de linhas e colunas.
Exemplo de declaração de matriz : int matriz [2] [2];
// Este algoritmo lê e apresenta uma matriz 3x3 com valores inteiros.
#include
#include
int main()
{
int x,y,matriz[3][3];
for(x=0; x<3; x++)/* For responsavel pelas linhas da matriz*/
{
for(y=0; y<3; y++)/* For responsavel pelas colunas da matriz*/
{
printf("Digite um valor\n");
scanf("%d", &matriz[x][y]);/* Recebe os valores da matriz*/
system("cls");
/* Na linha acima usamos o comando "cls" para apagar da tela os N° digitados*/
}
}
printf("Veja o vetor montado\n\n");
for(x=0; x<3; x++)/* For responsavel pelas linhas da matriz*/
{
for(y=0; y<3; y++)/* For responsavel pelas colunas da matriz*/
{
printf("\t%d", matriz[x][y]); /* \t serve para tabular os valores*/
}/* imprime os valores da matriz*/
printf("\n");
}
system("pause");
return 0;
}
Ponteiros
tipo *nome_ponteiro;
int *p;
Abaixo temos algumas formas de utilização de ponteiros.
#include
#include
int main ()
{
int numero=0;
int *ponteiro;
ponteiro=№
printf("Aqui o ponteiro recebe o endereço de memoria da variavel numero\n");
printf("O conteudo de ponteiro e %p\n", ponteiro);
system("pause");
/*Esse comando será usado para pausar o programa, para continuar basta pressionar
a tecla enter */
numero=5;
printf("Neste ponto a variavel numero recebe 5\n");
printf("O valor de numero e %d\n", numero);
system("pause");
*ponteiro=322;
printf("Aqui o ponteiro que aponta para variavel numero recebe o valor 322 \n assim ele altera o valor da variavel \n");
printf("O valor de numero agora e %d\n", numero);
system("pause");
numero=99;
printf("O conteudo de ponteiro e %p\n", ponteiro);// aqui o ponteiro guarda um endereço de memoria.
printf("O valor de numero alterado e %d\n", *ponteiro);// quando usamos o * seguido do nome do ponteiro podemos ver o valor da variavel.
system("pause");
return 0;
}