sexta-feira, 1 de outubro de 2010

Escreva um algoritmo que leia a altura (em metros), o peso (em quilogramas) e o sexo (“MASCULINO” ou “FEMININO”) e calcule seu peso ideal, dado por peso ideal do homem = (72,7 x altura) – 58 ou peso ideal da mulher = (62,1 x altura) – 44,77.

algoritmo "cap03 Exer3_13"
var

   altura,peso,acimapeso, pesoabaixo,pesoideal:real
   sexo:literal
inicio
escreva("Sua altura: ")
leia(altura)
escreva("Seu peso:")
leia(peso)
escreva("Seu sexo:")
leia(sexo)

se ((sexo = "Masculino") ou (sexo = "M")) entao
   pesoideal <- ((72.7*altura)-58)
senao
   pesoideal <- ((62.1*altura)-44.77)
fimse
     se (peso > pesoideal) entao
     acimapeso <- (peso-pesoideal)
     escreva("'Você está acima do Peso em: '", acimapeso: 5:2,"kg")
     escreval
       senao
         se (peso<pesoideal) entao
           pesoabaixo <- (pesoideal - peso)
           escreva ("'Você está abaixo do peso em: '", pesoabaixo: 5:2,"Kg")
           escreval
         fimse
fimse
escreva("Seu peso ideal é: ",pesoideal)
fimalgoritmo

Escreva um algoritmo que leia as notas das três provas de um aluno (p1, p2 e p3), calcule sua média aritmética e escreva-a. As notas devem estar no intervalo [0,10].

algoritmo "Cálculo da média"
   var

     n1, n2, n3, media:real
   inicio    escreval("Cálculo de média")
    escreva("Digite o valor da 1ª nota ")
     leia(n1)
    escreva("Digite o valor da 2ª nota ")
     leia(n2)
    escreva("Digite o valor da 3ª nota ")
     leia(n3)
    media <- ((n1+n2+n3) div 3)
    escreva ("A média é: ", media)
  fimalgoritmo

Escreva um algoritmo que leia um dia, mês e ano e escreva, para essa data lida, o número de dias transcorridos no ano.

algoritmo"3.11"
var dia, mes, ano, calc1, calc2:inteiro
inicio escreval("Digite o ano")
leia(ano)
escreval("Digite o mês")
leia(mes)
escreval("Digite o dia")
leia(dia)
calc1<-mes*30
calc2<-dia+calc1
escreva("O total de dias transcorridos até agora somam ",calc2)

fimalgoritmo

Escreva um algoritmo que leia o nome de um nadador e sua idade. O algoritmo deve escrever

A categoria de Marcos é INFANTIL B
A categoria é determinada conforme abaixo:
   nadadores com idade entre 5 e 7 anos são da categoria INFANTIL A;
   nadadores com idade entre 8 e 10 anos são da categoria INFANTIL B;
  nadadores com idade entre  11 e 13 anos são da categoria JUVENIL A;
  nadadores com idade entre 14 e 18 anos são da categoria JUVENIL B;e
  nadadores com idade superior a 18 anos são da categoria SÊNIOR;


algoritmo "Categoria de um nadador"
   var

     nome:literal
     idade:real
   inicio
     escreval("Categoria do nadador")
     escreval("Informe o nome do competidor")
     leia(nome)
     escreva(" Digite a idade do(a) nadador(a) - ")
       leia(idade)
   se ((idade>=5) e (idade<=7)) entao
     escreva(" A Categoria de ", nome, " é Infantil A")
  senao
    se ((idade>7) e (idade<=10)) entao
      escreva(" A Categoria de ", nome, " é Infantil B")
     senao
       se ((idade>10) e (idade<=13)) entao
         escreva(" A Categoria de ", nome, " é Juvenil A")
        senao
          se ((idade>13) e (idade<=17)) entao
            escreva( "A Categoria de ", nome, " é Juvenil B")
           senao
             se (idade>=18) entao
               escreva(" A Categoria de ", nome, " é Sênior")
              senao
                escreva(nome, " não compete")
             fimse
          fimse
       fimse
    fimse
 fimse
fimalgoritmo

Escreva um algoritmo que implemente uma calculadora de quatro operações. O algoritmo lê o primeiro operando, a operação (algum dos quatro símbolos: “x”, “-“, “*”, ou “/”) e o segundo operando. Ele deve escrever 1º operando operação 2º operando = resultado. Por exemplo, se os valores lidos foram 4, “*” e 5, o algoritmo deve escrever 4*5 = 20.

  algoritmo "Cálculo da calculadora"
  var
    oper:literal
    oper1,oper2,calc1,calc2,calc3,calc4:numerico
  inicio
    escreval("Cálculo da calculadora")
    escreva("Digite o primeiro operando  = ")
    leia(oper1)

    escreva("Digite o primeiro operando  = ")

    leia(oper1)
    escreva("Digite a operação (+,-,*,/) = ")
   leia (oper)
   escreva("DIgite o segundo  operando  = ")
   leia(oper2)
   se oper= ("+") entao
    calc1 <- ((oper1)+(oper2))
    escreva(oper1 , oper ,oper2," = ",calc1)
   senao
     se oper= ("-") entao
      calc2 <- ((oper1)-(oper2))

      escreva(oper1,oper,oper2," = ",calc2)
     senao

       se oper=("*") entao
        calc3 <- ((oper1)*(oper2))
        escreva(oper1,oper,oper2," = ",calc3)
       senao
         se oper=("/") entao
          calc4 <- ((oper1)/(oper2))
          escreva(oper1,oper,oper2," = ",calc4)

         senao       
          escreva("Operação não correspondente, tente + , - , * ou /  ")
         fimse
       fimse
     fimse
   fimse
 fimalgoritmo

Seja o seguinte algoritmo:

01. algoritmo “Dec2Bin”
02. var
03.  b: literal
04. n, q, r: numérico
05.  início
06. b  <-  “ “
07. escreva(“Entre com um número”)
08.  leia(n)
09. q <- n
10. r<- q%2
11. q <- q\2
12. se  r = 0 então
13.  b <- “0” + b
14. senão
15.  b <- “1” + b
16.  fimse
17. r <- q%2
18. q <- q\2
19. se  r = 0 então
20. b <- “0” + b
21. senão
22.  b <- “1” + b
23.  fimse
24. r <- q%2
25. q <- q\2
26. se  r = 0 então
27.  b <- “0” + b
28. senão
29. b <- “1” + b
30.  fimse
31. r <- q%2
32. q <- q\2
33. se  r = 0 então
34.  b <- “0” + b
35. senão
36.  b <- “1” + b
37.  fimse
38. r <- q%2
39. q <- q\2
40. se  r = 0 então
41.  b <- “0” + b
42. senão
43.  b <- “1” + b
44.  fimse
45. escreva(n, “ em decimal é representado por “, b, “ em binário”)
46.  fimalgoritmo

O que será escrito na tela, supondo que o valor de n é 29?
Mostre o teste de mesa utilizado para determinar o valor de b.

--------------------------------------------------------------------------------------------------------

29 em decimal é representado por 11101 em binário.

Escreva um algoritmo que leia o nome de cinco clientes de uma loja e valor (em reais) que cada um desses clientes pagou por sua compra. O algoritmo deverá escrever:

1.   o valor total pago pelos cinco clientes;
2.   o valor médio das compras efetuadas;
3.   os nomes dos clientes que efetuaram compras superiores a 20 reais.

--------------------------------------------------------------------------------------------------------

  algoritmo "Cliente"
  var
    c1,c2,c3,c4,c5:literal
    vcc1,vcc2,vcc3,vcc4,vcc5:real
    vtt,media:real
  inicio
     escreval("CLiente (valor total, média, compras acimas de 20 reais).")
     escreva("Digite o nome  do primeiro cliente           = ")
     leia(c1)
     escreva("Digite o valor da compra do primeiro cliente = ")
     leia(vcc1)
     escreva("Digite o nome  do segundo cliente            = ")
     leia(c2)
     escreva("Digite o valor da compra do segundo cliente  = ")
     leia(vcc2)
     escreva("Digite o nome  do terceiro cliente           = ")
     leia(c3)
     escreva("Digite o valor da compra do terceiro cliente = ")
     leia(vcc3)
     escreva("Digite o nome do quarto cliente              = ")
     leia(c4)
     escreva("Digite o valor da compra do quarto cliente   = ")23.    leia(vcc4)
     escreva("Digite o nome do quinto cliente              = ")
     leia(c5)
     escreva("Digite o valor da compra do quinto cliente   = ")
     leia(vcc5)
     vtt   <- vcc1+vcc2+vcc3+vcc4+vcc5
     media <- vtt/5
     escreval("O valor total pago pelos cinco clientes é igual a = ",vtt:5:2)
     escreval("O valor médio das compras efetuadas é igual a ",media:5:2)
     escreval("Os nomes dos clientes que efetuaram compras superiores a 20 reais, são: ")
     se vcc1>20 entao
     escreval(c1)
     fimse
      se vcc2>20 entao
      escreval(c2)
      fimse
        se vcc3>20 entao
        escreval(c3)
        fimse
          se vcc4>20 entao
          escreval(c4)
          fimse
            se vcc5>20 entao
            escreval(c5)
            fimse
 fimalgoritmo

Um sistema de equações lineares do tipo:

{ a x X + b x y = c
 d x X + e x y = f

{ x =  c x e  - b x f
  a x e - b x d

 y = a x f – c x d
 a x e – b x d

Escreva um algoritmo que leia os coeficientes a, b, c, d e f e calcule e escreva os valores de x e y.
Lembre-se de que os denominadores das equações não podem ser zero.
---------------------------------------------------------------------------------------------------------
  algoritmo "Cálculo"
  var
     a,b,c,d,ee,f,x,y:numerico

  inicio
     escreval("Cálculo de uma expressão linear.")
     escreva("digite o valor de a ")
      leia(a)
     escreval("Digite o valor de b ")
     escreva("(diferente de zero) = ")
      leia(b)
     escreva("Digite o valor de c = ")

      leia(c)     escreva("Digite o valor de d = ")
      leia(d)
     escreval("Digite o valor de e ")
     escreva("(diferente de zero) = ")
      leia(d)
     escreva("Digite o valor de f = ")
     leia(f)
    
x <- ((c*ee)-(b*f))/((a*ee)-(b*d))

     y <- ((a*f)-(c*d))/((a*ee)-(b*d))    

     escreval("Valor de x é, ",x:5:2," de y é, ",y:5:2)
     escreval("*** F I M ***")

 fimalgoritmo

5. Escreva um algoritmo que lê dois números inteiros e informa se o primeiro é múltiplo do segundo.

  algoritmo " São múltiplos ou não múltiplos"
  var
    x,y:real
  inicio
    escreval(" São múltiplos ou não múltiplos.")
    escreva(" Digite o primeiro número = ")
      leia(x)
    escreva(" Digite o segundo  número = ")

      leia(y)
    se ((x>y e ((x mod y)= 0)) entao
      escreva ("São múltiplos.")
    senao
     escreva("Não são múltiplos.")
    fimse
 fimalgoritmo

4. Escreva um algoritmo para calcular a área de um círculo, fornecido o valor do raio, que deve ser positivo ou zero.

  algoritmo "Cálculo"
  var
   area,raio:real  inicio      
        escreva("Digite o valor de raio: ")
        leia(raio)
      Se ((raio>0) ou (raio=0)) entao
        area <- pi*(raio^2)
        escreva("Área igual a ",area:5:2)
     senao
       escreval("O raio precisa ser >=0 ")
       escreval(" FIM ")
     fimse
 fimalgoritmo

3. Quais os valores armazenados em SOMA, NOME e TUDO após executados os passos abaixo, supondo-se que NUM, X, COR, DIA, TESTE e COD valem, respectivamente, 5, 2, “AZUL”, “TERÇA”, FALSO e VERDADEIRO?

1. NOME <- DIA 2 <- (NUM)
3. TUDO <- não ((TESTE ou COD) e (X < > NUM))
----------------------------------------------------------------------------
Resposta:

1. Terça

2. (312.5) + (3) = 315.5

3. ~n ((F) e (V) = V) = ~n V = F^2/X) + (X + 1)

2. Avalie (forneça o resultado da expressão lógica) - (((5/2 = 5/2) e (3.0 <> 3.1)) ou (5 >= 4)) e (não(5 = 5.0)) - mostrando todos os passos utilizados para obtenção da solução.

(((5/2 = 5/2) e (3.0 <> 3.1)) ou (5 >= 4)) e (não(5 = 5.0))
        V             e            V            ou       V         e        F

                        V                         ou
               F
                                                   =  F

1. Resolva as expressões lógicas:


1. 2 >3
2. (6 < 8) ou (3 > 7)
3. não (2 <> 2.0) 
4. 5 >= 6 ou 6 < 7 ou não ( a+ 5 – 6 = 8)onde a = 5
5. ( 34 < 9 e 5 + u = 34) ou (5 = 15/3 e 8 > 12) onde u = 29

-------------------------------------------------------------------------------------------------------------
Resposta:

1. F

2. V ou F = V
3. NÃO F = V
4. F ou V ou V = V
5. ( F e V ) ou ( V e F )
         F      ou     F    = F