segunda-feira, 24 de outubro de 2011

Vetores em C

/* Fazer um programa para contar o número de espaços em brancos de uma string.  */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main()
{
char s[20];
int i, quant;
quant = 0;
printf("Digite uma string: ");
scanf("%[^\n]",s);
printf("String digitada: %s\n",s);
 
for (i=0; s[i] != '\0' ;i++){
char ch;
ch = s[i];
if (ch == ' '){
quant += 1;
}
}
 
printf("Quantidade de espacos digitados: %d",quant);
return 0;
}




/* Refaça o programa anterior criando uma função que receberá como parâmetro a string e
retornará o número de espaços em branco que a string contem.   */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int emBranco (char s[]) {
int i = 0, quant = 0;
for (i=0; s[i] != '\0' ;i++){
char ch;
ch = s[i];
if (ch == ' '){
quant += 1;
}
}
 
printf("Quantidade de espacos digitados: %d",quant);
return 0;
}
int main(){
char s[25];
int i, quant;
quant = 0;
printf("Digite uma string: ");
scanf("%[^\n]",s);
printf("String digitada: %s\n",s);
emBranco(s);
 
 
return 0;
}




/* Fazer um programa para contar o número de vogais numa cadeia de caractere.  */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main()
{
char s[40];
int numVogais, i;
char *vogais;
printf("Digite uma string: ");
scanf("%[^\n]",s);
vogais = "aeiouAEIOU";
numVogais = 0;
for (i = 0; s[i] != '\0'; i++) {
char ch;
int j;
ch = s[i];
for (j = 0; vogais[j] != '\0'; j++) {
if (vogais[j] == ch) {
numVogais += 1;
break;
}
}
}
printf("Quantidade de vogais digitados: %d",numVogais);
 
 
return 0;
}




/* Refaça o programa anterior criando uma função que receberá como parâmetro a string e
retornará o número de vogais que a string contem.   */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
 
int countVogais (char s[]) {
char *vogais;
int numVogais, i;
 
vogais = "aeiouAEIOU";
numVogais = 0;
for (i = 0; s[i] != '\0'; i++) {
char ch;
int j;
ch = s[i];
for (j = 0; vogais[j] != '\0'; j++) {
if (vogais[j] == ch) {
numVogais += 1;
break;
}
}
}
return numVogais;
}
 
 
 
int main()
{
char s[40];
int valor;
printf("Digite uma string: ");
scanf("%[^\n]",s);
valor=countVogais(s);
printf("Quantidade de vogais digitados: %d",valor);
 
 
return 0;
}



/*Escrever um programa para ler uma string (com mais de uma palavra) e faça com que a
primeira letra de cada palavra fique em maiúscula. Para isso, basta subtrair 32 do elemento
que deseja alterar para maiúsculo. chrNome[0] = chrNome[0] – 32;
Exemplo:
Entrada: lab. de linguagem de programacao
Saída: Lab. De Linguagem De Programacao  */
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main()
{
char s[40];
int i;
 
printf("Digite uma string: ");
scanf("%[^\n]",s);
printf("String digitada: %s\n",s);
 
for (i=0; s[i] != '\0' ;i++){
char ch;
ch = s[i];
if (ch == s[0]){
s[i] = s[i] - 32;
}
 
if (ch == ' '){
s[i+1] = s[i+1] - 32;
}
}
printf("String digitada concertada: %s",s);
 
 
return 0;
}

Vetores númericos

/*Dada um tabela contendo a idade de 10 alunos, faça um algoritmo que calcule o número de
alunos com idade superior a média.
*/
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
int v[10];
int i, soma, count;
float media;
soma = 0;
count = 0;
 
for (i=0; i < 10; i++){
printf("Digite a nota %d\n",i+1);
scanf("%d", &v[i]);
soma = soma + v[i];
}
media = ((float)soma)/ 10.0;
 
for (i=0; i < 10; i++){
if (media < ((float)v[i])){
count = count + 1;
}
}
 
printf("Media: %f\n", media);
printf("Quantidade de Alunos com nota maior que a media: %d\n", count);
 
 
return 0;
}




/*Dada um tabela contendo a idade de 10 alunos, faça um algoritmo que calcule o número de
alunos com idade superior a média.
*/
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
int v1[10], v2[10];
int i, soma1, soma2;
 
soma1 = 0;
soma2 = 0;
 
for (i=0; i < 10; i++){
printf("Digite o valor do vetor1 na posicao %d\n",i+1);
scanf("%d", &v1[i]);
soma1 = soma1 + v1[i];
}
printf("A Soma dos valores do primeiro vetor e: %d\n\n", soma1);
 
for (i=0; i < 10; i++){
printf("Digite o valor do vetor2 na posicao %d\n",i+1);
scanf("%d", &v2[i]);
soma2 = soma2 + v2[i];
}
printf("A Soma dos valores do primeiro vetor e: %d\n\n", soma2);
 
printf("A Soma Total e: %d\n", soma1+soma2);
 
 
return 0;
}

Mais um pouco de Funções

/*Escreva uma função que receba como parâmetro 
um valor n inteiro e positivo e que calcule 
a seguinte soma: S := 1 + 1/2 + 1/3 + 1/4 + ... + 1/n. 
A função deverá retornar o valor de S.  */
#include <stdio.h>
#include <stdlib.h>
 
 
int  soma(int n){
float i, s;
s=0;
for (i=1; i<=n; i++){
s= s + 1/i ;
}
printf ("o valor de S e %f",s);
 
}
 
int main()
{
int n;
printf("Entre com o parametro\n");
scanf("%d", &n);
soma(n);
return 0;
}
 




/*Faça um programa que apresente o seguinte “Menu” para o usuário: 
     Escolha uma opção de cálculo para dois números: 
              1) Soma 
              2) Produto 
              3) Quociente 
              4) Sair 
              Opção:__  
O “Menu” acima deve ser apresentado para o usuário enquanto ele não escolher a opção 4 
(sair do programa). O usuário fornecerá 2 números se escolher as opções de cálculo 1, 2 
ou 3. Para cada opção de cálculo deve existir (obrigatoriamente) uma função definida 
(soma, produto e quociente dos dois números fornecidos pelo usuário). O resultado do 
cálculo deve ser escrito na tela.  */
 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
 
 
int soma()
{
int a, b;
printf("Entre dois valores \n");
scanf("%d %d", &a,&b);
printf("O resultado da soma de %d + %d = %d",a,b, a+b);            
return 0;
}
 
int produto()
{
int a, b;
printf("Entre dois valores \n");
scanf("%d %d", &a,&b);
printf("O resultado da multiplicacao de %d * %d = %d",a,b, a*b);            
return 0;
}
 
int quociente()
{   
float a,b;
printf("Entre dois valores \n");
scanf("%f %f", &a,&b);
printf("O resultado da multiplicacao de %f / %f = %f",a,b, a/b);            
return 0;
}
 
 
int main(){
int a, b, operador;
float c;
 
printf("Entre com o Operador 1.+(soma) 2.*(Produto) 3./(Quociente) 4. (Sair)");
scanf("%d",&operador);
switch (operador)
{
case 1:
soma();
break;
case 2:
produto();
break;
case 3:
if (b == 0)
printf("Não existe divisão por 0");
else
quociente();
break;
case 4:       
printf("Até mais");
break;
default:
printf("Operador invalido");
break;
}
return 0;
}



/*Agora com o seguinte “Menu”
   Escolha uma opção de cálculo para um número:
   a) Fatorial
   b) Exponencial
   c) Raiz quadrada
   d) Sair
   Opção: __
 Nas opções “b” e “c” pode - se utilizar funções predefinidas do C.  */
 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
void sair(){
char confirm[3];
printf("Tem Certeza?");
scanf("%s",confirm);
if (confirm == 'sim')
printf("Tem dsadsadsaCerteza");
else
printf("%s", confirm);
}
 
int main(){
int operador;
 
 
printf("Entre com uma opcao\n1.(Quer Namorar com o Guilherme)\n2.(Quer Passar o resto da vida com o Guilherme)\n3.(Nao Consegue viver mais sem o Guilherme)\n4.(Sair)");
scanf("%d",&operador);
switch (operador)
{
case 1:
int n,a;
printf("Entre o valor do fatorial\n");
scanf("%d", &n);
a = fatorial(n);
printf("O resultado do fatorial de %d e %d\n",n , a);
break;
case 2:
exponencial();
 
break;
case 3:
raiz();
 
break;
case 4:
sair()
break;
default:
printf("Operador invalido");
break;
}
 
return 0;
}

segunda-feira, 10 de outubro de 2011

Exercicios de funções parte II

/*5.  Faça uma função que receba a idade de uma pessoa em anos, meses e dias e retorna essa
idade expressa em dias. */
#include <stdio.h>
#include <stdlib.h>
 
 
int convertedias(int anos, int meses, int dias){
int dias2;
dias2 = (anos * 365) + (meses * 30) + dias;
printf("Sua idade em dias e %d\n", dias2);
}
 
int main()
{
int anos, meses, dias;
printf("Informe a idade em anos, meses e dias\n");
scanf("%d %d %d", &anos, &meses, &dias);
convertedias(anos, meses, dias);
return 0;
}






/*6.  Faça  uma função que  recebe  a  média final  de  um  aluno  por  parâmetro  e  retorna  o  seu
conceito, conforme a tabela a seguir:
Nota     Conceito
De 0 a 49       D
De 50 a 69    C
De 70 a 89    B
De 90 a 100        A
 */
#include <stdio.h>
#include <stdlib.h>
 
 
int  conceito (int media){
if (media >= 0 && media <= 49)
printf("Conceito D");
else if (media <= 69)
printf("Conceito C");
else if (media <= 89)
printf("Conceito B");
else if (media <= 100)
printf("Conceito A");
else
printf("Valor de entrada incorreto");
 
}
 
int main()
{
int media;
printf("Entre com a media\n");
scanf("%d", &media);
conceito(media);
return 0;
}






/*7. Escrever uma função  int  contaimpar (int n1, int n2) que retorna o número de
inteiros impares que existem entre n1 e n2 (inclusive ambos, se for o caso). A função deve
funcionar inclusive se o valor de n2 for menor que n1.   */
#include <stdio.h>
#include <stdlib.h>
 
 
int  contaimpar (int n1, int n2){
int i, asw;
asw = 0;
int vect[0];
if (n1 <= n2){
for (i=n1; i<=n2; i++){
if (i%2 != 0){
asw++;}
}}
else{
for (i=n1; i>=n2; i--){
if (i%2 != 0){
asw++;}
}}
 
 
printf ("Quantida de impares e %d",asw);
}
 
int main()
{
int n1, n2;
printf("Entre com os valores\n");
scanf("%d %d", &n1, &n2);
contaimpar(n1,n2);
return 0;
}




/* 8.  Escrever uma função int divisão (int dividendo, int divisor, int * resto), que
retorna  a  divisão  inteira  (sem  casas  decimais)  de  dividendo  por  divisor  e  armazena  no
parâmetro resto, passado por referência, o resto da divisão.
int r, d;
d = divisao(5, 2, &r);
printf("Resultado:%d Resto:%d", d, r); Resultado:2 Resto:1   */
 
#include <stdio.h>
#include <stdlib.h>
 
 
int divisao(int dividendo, int divisor, int *resto){
 
*resto = dividendo%divisor;
return dividendo/divisor;
 
}
 
int main(){
int r, d, divisor, dividendo;
printf("Entre com o Dividendo e o Divisor\n");
scanf("%d %d", &dividendo, &divisor);
d = divisao(dividendo, divisor, &r);
printf("Resultado:%d Resto:%d", d, r);
}

terça-feira, 27 de setembro de 2011

Exemplo Procedimentos e Funções

Escreva um procedimento que receba como parâmetro dois valores inteiros n1 e n2 e
imprima o intervalo fechado entre eles, do menor para o maior.
Por exemplo: se n1 = 2 e n2 = 5, o procedimento irá imprimir 2, 3, 4, 5.
#include <stdio.h>
#include <stdlib.h>
 
void completa(int n1, int n2){
int i;
if (n1<=n2)
for (i=n1; i<=n2; i++)
printf("%d", i);
else
for (i=n2; i<=n1; i++)
printf("%d", i);
}
 
int main()
{
int n1, n2;
printf("Entre com dois valores\n");
scanf("%d %d",&n1, &n2);
completa(n1,n2);
return 0;
}



Faça um procedimento que receba a idade de uma pessoa em dias e retorna essa idade
expressa em anos, meses e dias.



#include <stdio.h>
#include <stdlib.h>
 
void transforma(int dias){
int meses, anos;
anos = dias / 365;
meses = dias / 30;
if (dias >= 365)
dias = dias % 365;
meses = meses % 12;
if (dias >= 30)
dias = dias % 30;
printf("A idade e %d anos, %d meses e %d dias", anos, meses, dias);
}
 
int main()
{
int dias;
printf("Entre com a quantidade de dias\n");
scanf("%d",&dias);
transforma(dias);
return 0;
}






Faça um procedimento que receba por parâmetro o  tempo de duração de um experimento
expresso em segundos e imprima na tela esse mesmo tempo em horas, minutos e
segundos.



#include <stdio.h>
#include <stdlib.h>
 
void converte(int seg){
int horas, minutos;
minutos = seg / 60;
horas = seg / 3600;
if (seg >= 3600)
seg = seg % 3600;
minutos = minutos % 60;
if (seg >= 60)
seg = seg % 60;
printf("O tempo do experimento e %d horas, %d minutos e %d segundos", horas, minutos, seg);
}
 
int main()
{
int seg;
printf("Entre com o tempo do experimento em segundos\n");
scanf("%d",&seg);
converte(seg);
return 0;
}






Faça uma função que receba por parâmetro o raio de uma esfera e calcula o seu volume: V = (4 * PI * R3) /3. 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
int volume(raio){
 
float pi, vol, r3;
r3=pow((float)raio,3);
pi = 3.14159265;
vol = ((4.0 * pi * r3)/3.0);
 
printf("Volume da esfera de raio %d e %f", raio, vol);
}
 
int main()
{
int raio;
printf("Entre com o raio da esfera\n");
scanf("%d",&raio);
volume(raio);
return 0;
}

sexta-feira, 16 de setembro de 2011

Portal™ uma abordagem educativa de Ciência, Tecnologia, Engenharia e Matemática.


Portal™ é um novo jogo single player da Valve. Estabelecido nos misteriosos Laboratórios Aperture Science, Portal é aclamado como um dos novos jogos mais inovadores no horizonte e oferecerá aos jogadores horas de jogabilidade única.[1]

O jogo é projetado para mudar a forma com a qual jogadores se aproximam, manipulam e supõem as possibilidades num dado ambiente.

Jogadores devem resolver quebra-cabeças físicos e desafios abrindo portais para manipular objetos, e eles mesmos, pelo espaço.
A produtora da série Portal™, a Valve, criou uma campanha para utilização do jogo em escolas para o desenvolvimento do raciocínio lógico, ensinando física e melhorando as habilidades de desenvolvimento crítico.

Um dos maiores desafios do ensino de ciências, tecnologia, engenharia e matemática é capturar a imaginação dos alunos para que eles vejam todas as possibilidades.

Utilizando ferramentas interativas como os jogos da série Portal™ para desenhar situações de física, lógica matemática, raciocínio espacial, probabilidade e resolvendo problemas de forma interessante, legal, e divertida que nos leva um passo mais perto de nossa meta, crianças pensativas! [2]


[1] http://store.steampowered.com/app/400/
[2] http://www.learningwithportals.com/

quinta-feira, 8 de setembro de 2011

Exercicios de C, Laços de Repetição

   1:  //1. Fazer um algoritmo que imprima todos os números pares no intervalo 1-100.
   2:  #include <stdio.h>
   3:  #include <stdlib.h>
   4:   
   5:  int main()
   6:  {
   7:      int i;
   8:      for(i=2; i<=100; i=i+2)
   9:     {
  10:          printf("%d\n",i);
  11:     }
  12:      return 0;
  13:  }




   1:  //2. Fazer um algoritmo que imprima todos os números de 100 até 1. 
   2:  #include <stdio.h>
   3:  #include <stdlib.h>
   4:   
   5:  int main()
   6:  {
   7:      int i;
   8:      for(i=100; i>=1; i--)
   9:     {
  10:          printf("%d\n",i);
  11:     }
  12:      return 0;
  13:  }





   1:  // Dada uma dívida de 10000 reais que cresce a juros de 2,5% ao mês e uma aplicação de 
   2:  //1500 reais com rendimento de 4% ao mês, escrever um algoritmo que determina o número 
   3:  //de meses necessários para pagar a dívida. 
   4:  #include <stdio.h>
   5:  #include <stdlib.h>
   6:   
   7:  int main()
   8:  {
   9:      float divida, juros, aplicacao, rendimento;
  10:      int meses;
  11:      meses = 0;
  12:      divida = 10000;
  13:      juros = 0.025;
  14:      aplicacao = 1500;
  15:      rendimento = 0.04;
  16:   
  17:      while (divida > aplicacao) {
  18:          divida = (divida * juros) + divida;
  19:          aplicacao = (aplicacao * rendimento) + aplicacao;
  20:          meses ++;
  21:      }
  22:      printf("Quantidade de meses para liquidar a divida e %d\n",meses);
  23:      printf("Sua divida esta em %f\n",divida);
  24:      printf("Sua aplicacao esta em %f\n", aplicacao);
  25:      return 0;
  26:  }





   1:  /* Fazer um programa para calcular e mostrar os N primeiros termos da série de Fibonacci. O 
   2:  número N é fornecido pelo usuário. A série de Fibonacci é gerada da seguinte forma: 
   3:   f1 = f2 = 1; 
   4:   f3 = f1 + f2 = 2; 
   5:   f4 = f2 + f3 = 3;.... 
   6:  O primeiro e segundo termos valem 1 e os seguintes são calculados somando os dois termos 
   7:  anteriores.*/
   8:  #include <stdio.h>
   9:  #include <stdlib.h>
  10:   
  11:  int main()
  12:  {
  13:      int fibo,conta=0,a=0,b=1,i;
  14:      printf("Entre com a quantidade de numeros de fibonacci que deseja criar\n");
  15:      scanf("%d",&fibo);
  16:   
  17:            for(i = 0; i < fibo; i++)
  18:             {
  19:                 conta = (a + b);
  20:                 printf("%d\n",conta);
  21:                 a = b;
  22:                 b = conta;
  23:              }
  24:      return 0;
  25:  }

sexta-feira, 26 de agosto de 2011

Standard ML

 

Estou aprendendo SML na aula de Linguagens de Programação, intao vou postando algumas coisas e exercicios sobre a linguagem

Página do projeto SML NJ (o copilador mais utilizado)

http://www.smlnj.org/

Wikipédia

Standard ML (SML) é uma linguagem de programação funcional de propósito geral modular com verificação e inferência de tipos em tempo de compilação. É popular entre pesquisadores de linguagem de programação e compiladores.

SML é um descendente moderno da ML (linguagem de programação) utilizado em lógica de funções computáveis (LCF). Distingue-se entre as linguagens utiliada devido sua característica funcional e devido sua especificação formal, dado como escrever regras e semântica operacional na definição da Standard ML

A Página do meu Professor Fernando (muito bom) tem mais informações sobre a materia e sobre o SML

http://homepages.dcc.ufmg.br/~fpereira/classes/dcc024/ementa/

Outros links em inglês

http://u.cs.biu.ac.il/~89-310/

 

alguns exercicios de SML

Escreva uma função cube, de tipo int -> int que retorne o cubo do seu parametro

fun cube x = x*x*x;

Escreva uma função cuber, de tipo real -> real que retorne o cubo de seu parametro.

fun cuber x:real = x*x*x;

Escreva a funcao fourth, de tipo 'a list -> 'a que retorne o quarto elemento da
lista passada como parametro. Nao se preocupe com a condicao de contorno em que a
lista de entrada possui menos que quatro elementos.

fun fourth a = hd(tl(tl(tl(a) )))

Exemplos de Codicionais em C

Todos os exercicios da Apostila de Algoritmos da UFJF Capitulo 3, Condicionais 1. Ler dois números inteiros e informar se o primeiro é maior, menor ou igual ao segundo. 1: */ exercicio 1 /*  
   2:  #include <stdio.h>
   3:  #include <stdlib.h>
   4:   
   5:  int main()
   6:  {
   7:      int a, b;
   8:   
   9:      printf("Entre com dois inteiros \n");
  10:      scanf("%d %d", &a, &b);
  11:   
  12:      if (a > b)
  13:   
  14:          printf("O primeiro e maior que o segundo. %d > %d", a , b);
  15:      else
  16:          if (a == b)
  17:              printf("O Primeiro e igual ao segundo. %d = %d", a, b);
  18:          else
  19:              printf("O Primeiro e menor que o segundo %d<%d", a, b);
  20:   
  21:      return 0;
  22:  }


2. Faça um programa para ler dois números inteiros, faça a divisão do primeiro pelo segundo (somente se o segundo for diferente de zero).
 
   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      float a, b;
   7:   
   8:      printf("Entre com dois inteiros \n");
   9:      scanf("%f %f", &a, &b);
  10:   
  11:      if (b != 0)
  12:          printf("A divisao %f / %f = %f", a,b,a/b);
  13:      else
  14:          printf("Impossivel divisao por 0");
  15:   
  16:      return 0;
  17:  }
  18:   
  19:  //opção com números inteiros como pede o exercicio
  20:  /*
  21:  
  22:  #include <stdio.h>
  23:  #include <stdlib.h>
  24:  
  25:  int main()
  26:  {
  27:      int a, b;
  28:  
  29:      printf("Entre com dois inteiros \n");
  30:      scanf("%d %d", &a, &b);
  31:  
  32:      if (b != 0)
  33:          printf("A divisao %d / %d = %d", a,b,a/b);
  34:      else
  35:          printf("Impossivel divisao por 0");
  36:  
  37:      return 0;
  38:  }
  39:  */


3. Ler um número inteiro e informar se ele é divisível por 2.

   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      int a;
   7:   
   8:      printf("Entre com um numero inteiro \n");
   9:      scanf("%d", &a);
  10:   
  11:      if ( a % 2 == 0 )
  12:          printf("O numero %d e par", a);
  13:      else
  14:          printf("O numero %d nao e par", a);
  15:   
  16:      return 0;
  17:  }




4. Altere o algoritmo anterior para que seja informado se o número é divisível por 2 e por 3 simultaneamente.

   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      int a;
   7:   
   8:      printf("Entre com um numero inteiro \n");
   9:      scanf("%d", &a);
  10:   
  11:      if ( a % 2 == 0)
  12:      if (a % 3 == 0)
  13:      printf("O numero %d e divisivel por 2 e 3 ao mesmo tempo", a);
  14:          else
  15:      printf("O numero %d e par mais nao e divisivel por 3 ao mesmo tempo", a);
  16:      else
  17:          if (a % 3 == 0)
  18:              printf("O numero %d nao e par mais e divisivel por 3", a);
  19:          else
  20:              printf("O numero %d nao e par nem divisivel por 3", a);
  21:      return 0;
  22:  }



5. Altere o algoritmo anterior para que seja informado se o número é divisível por 2 e por 3, mas que não seja divisível por 5. 
 
   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      int a;
   7:   
   8:      printf("Entre com um numero inteiro \n");
   9:      scanf("%d", &a);
  10:   
  11:      if ( a % 2 == 0)
  12:          if (a % 3 == 0)
  13:              if (a % 5 == 0)
  14:                  printf("O numero %d e divisivel por 2,3 e 5", a);
  15:              else
  16:                  printf("O numero %d e divisivel por 2 e 3 ao mesmo tempo e nao e divisivel por 5", a);
  17:          else
  18:              if (a % 5 == 0)
  19:                  printf("O numero %d e divisivel por 2 e 5 e nao e por 3", a);
  20:              else
  21:                  printf("O numero %d e divisivel por 3 e 5 e nao e por 2", a);
  22:      else
  23:          if (a % 5 == 0)
  24:              printf("O numero %d e divisivel por 5 e nao e por 2 e 3", a);
  25:          else
  26:              printf("O numero %d nao e divisivel por 2 e 3 ou 5", a);
  27:      return 0;
  28:  }




6. Faça um programa para ler dois números reais e verificar se ambos são maiores que zero. Caso positivo, informar “Valores são válidos”. Caso contrário, informar “Valores inválidos”. 
 
   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      float a, b;
   7:   
   8:      printf("Entre com dois inteiros \n");
   9:      scanf("%f %f", &a, &b);
  10:   
  11:      if (a > 0 && b > 0)
  12:          printf("Valores são válidos");
  13:      else
  14:          printf("Valores inválidos");
  15:   
  16:   
  17:      return 0;
  18:  }
  19:   



7. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um programa que calcule seu peso ideal, utilizando as seguintes fórmulas: para homens: (72.7*h)58 e para mulheres: (62.1*h)44.7 
   1:  #include <stdio.h>
   2:  #include <stdlib.h>
   3:   
   4:  int main()
   5:  {
   6:      int a;
   7:      float b,c;
   8:   
   9:      printf("Entre com o sexo 1.Masculino ou 2.Feminino \n");
  10:      scanf("%d", &a);
  11:      printf("Entre com sua altura no formato [1.86] \n");
  12:      scanf("%f", &b);
  13:   
  14:      switch (a)
  15:      {
  16:      case 1:
  17:          c=(72.7 * b) - 58;
  18:          printf("Seu peso ideal e: %f",c);
  19:          break;
  20:      case 2:
  21:          c=(62.1*b)-44.7;
  22:          printf("Seu peso ideal e: %f",c);
  23:          break;
  24:      default:
  25:          printf("Sexo invalido");
  26:      }
  27:   
  28:      return 0;
  29:  }
  30:   

8. Faça um programa que leia 3 comprimentos (x, y e z) e responda se eles formam um triângulo, ou seja, se  x < y + z e y < x + z e z < x + y. 
 
   1:   
   2:  #include <stdio.h>
   3:  #include <stdlib.h>
   4:   
   5:  int main()
   6:  {
   7:      int x,y,z;
   8:   
   9:      printf("Entre com tres valores inteiros \n");
  10:      scanf("%d %d %d", &x, &y, &z);
  11:   
  12:      if ((x < (y + z)) && (y < (x + z)) && (z < (x + y)))
  13:   
  14:          printf("Os valores %d, %d e %d formam um triangulo", x,y,z);
  15:      else
  16:          printf("Os valores %d, %d e %d NAO formam um triangulo", x,y,z);
  17:      return 0;
  18:  }
  19:   




   1:  /*
   2:  Desenvolver um algoritmo para ler o número do dia da semana e imprimir o seu respectivo
   3:  nome por extenso. Considerar o número 1 como domingo, 2 para segunda etc. Caso o dia
   4:  não exista (menor que 1 ou maior que 7), exibir a mensagem “Dia da semana inválido".
   5:  */
   6:  #include <stdio.h>
   7:  #include <stdlib.h>
   8:   
   9:  int main()
  10:  {
  11:      int a;
  12:      printf("Entre um valor de 1 a 7 \n");
  13:      scanf("%d", &a);
  14:      switch (a)
  15:      {
  16:      case 1:
  17:          printf("O dia 1 e Domingo");
  18:          break;
  19:      case 2:
  20:          printf("O dia 2 e Segunda");
  21:          break;
  22:      case 3:
  23:          printf("O dia 3 e Terca");
  24:          break;
  25:      case 4:
  26:          printf("O dia 4 e Quarta");
  27:          break;
  28:      case 5:
  29:          printf("O dia 5 e Quinta");
  30:          break;
  31:      case 6:
  32:          printf("O dia 6 e Sexta, Its Friday");
  33:          break;
  34:      case 7:
  35:          printf("O dia 7 e Sábado");
  36:          break;
  37:      default:
  38:          printf("Dia da semana inválido");
  39:      }
  40:   
  41:      return 0;
  42:  }
  43:   




   1:  /*
   2:  Fazer um algoritmo para ler dois números e um dos símbolos das operações: +,- * e /.
   3:  Imprimir o resultado da operação efetuada sobre os números lidos.
   4:  */
   5:  #include <stdio.h>
   6:  #include <stdlib.h>
   7:   
   8:  int main()
   9:  {
  10:      int a, b, operador;
  11:      float c;
  12:      printf("Entre dois valores \n");
  13:      scanf("%d %d", &a,&b);
  14:      printf("Entre com o Operador 1.+(soma) 2.-(subtracao) 3.*(multiplicacao) 4./ (divisao)");
  15:      scanf("%d",&operador);
  16:        switch (operador)
  17:      {
  18:      case 1:
  19:          printf("O resultado da soma de %d + %d = %d",a,b, a+b);
  20:          break;
  21:      case 2:
  22:          printf("O resultado da subtracao de %d - %d = %d",a,b, a-b);
  23:          break;
  24:      case 3:
  25:          printf("O resultado da multiplicacao de %d * %d = %d",a,b, a*b);
  26:          break;
  27:      case 4:
  28:          if (b == 0)
  29:          printf("Não existe divisão por 0");
  30:          else
  31:          c = (float)a/(float)b;
  32:          printf("O resultado da divisao de %d / %d = %f",a,b, c);
  33:          break;
  34:      default:
  35:          printf("Operador invalido");
  36:          break;
  37:      }
  38:   
  39:  return 0;
  40:  }
  41:   






   1:  /*
   2:  Os funcionários de uma empresa receberam um aumento de salário: técnicos (código = 1),
   3:  50%; gerentes (código = 2), 30%; demais funcionários (código = 3), 20%. Escrever um
   4:  algoritmo para ler o código do cargo de um funcionário e o valor do seu salário atual, calcular
   5:  e imprimir o novo salário após o aumento.
   6:  */
   7:  #include <stdio.h>
   8:  #include <stdlib.h>
   9:   
  10:  int main()
  11:  {
  12:      int b;
  13:      float a, c;
  14:      printf("Informe o valor atual do salario \n");
  15:      scanf("%f",&a);
  16:      printf("Entre com o codigo do funcionario \ntecnicos (codigo = 1) 50 por cento de aumento;\ngerentes (codigo = 2), 30 por cento de aumento;\ndemais funcionarios (codigo = 3), 20 por cento de aumento");
  17:      scanf("%d",&b);
  18:        switch (b)
  19:      {
  20:      case 1:
  21:          c = a + (a*0.50);
  22:          printf("Apos o aumento o novo salario do tecnico e %f ",c);
  23:          break;
  24:      case 2:
  25:          c = a + (a * 0.30);
  26:          printf("Apos o aumento o novo salario do gerente e %f ",c);
  27:          break;
  28:      case 3:
  29:          c = a + (a* 0.20);
  30:          printf("Apos o aumento o novo salario do funcionario e %f ",c);
  31:          break;
  32:      default:
  33:          printf("Funcionario invalido");
  34:          break;
  35:      }
  36:   
  37:  return 0;
  38:  }
  39:   




   1:  /*
   2:  Desenvolver um algoritmo para ler o valor inteiro da idade de uma pessoa e imprimir uma
   3:  das mensagens: se idade < 13: Criança, se 13 = idade < 20: Adolescente, se 20 = idade <
   4:  60: Adulto e se idade = 60: Idoso.
   5:  */
   6:  #include <stdio.h>
   7:  #include <stdlib.h>
   8:   
   9:  int main()
  10:  {
  11:     int a;
  12:     printf("Entre com a Idade\n");
  13:     scanf("%d",&a);
  14:     if (a < 13)
  15:     printf("Crianca");
  16:     else if (a < 20)
  17:          printf("Adolescente");
  18:          else if (a < 60)
  19:          printf("Adulto");
  20:              else
  21:              printf("Idoso");
  22:  return 0;
  23:  }
  24:   

quinta-feira, 25 de agosto de 2011

Imprimir o valor 2.346728
com 1, 2, 3 e 5 casas decimais



#include <stdio.h>

int main ()
{
         printf("Uma casa:  %.1f \n", 2.346728);
         printf("Duas casas:  %.2f \n", 2.346728);
         printf("Tres casas:  %.3f \n", 2.346728);
         printf("Cinco casas:  %.5f \n", 2.346728);
         return 0;
}

Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit. A
fórmula de conversão: F ← (9*C+160)/5 


#include <stdio.h>
#include <math.h>

int main ()
{
    float c=0,f=0;
    printf ("Digite a temperatura em Graus Celsius:");
    scanf("%f",&c);
    f=(9 * c + 160) / 5;
    printf("A temperatura em Graus Fahrenheit e: %f \n",f);

    return 0;
}
Construir um algoritmo para ler 5 valores inteiros, calcular e imprimir a soma desses valores.


#include <stdio.h>
int main ()
{
    int n1,n2,n3,n4,n5,soma;
	printf("Digite cinco valores inteiros: ");
	scanf("%i",&n1);
	scanf("%i",&n2);
	scanf("%i",&n3);
	scanf("%i",&n4);
	scanf("%i",&n5);
	soma = n1 + n2 + n3 + n4 + n5;
	printf("\n%i + %i + %i + %i + %i = %i",n1,n2,n3,n4,n5,soma);
    return 0;
}