quarta-feira, 27 de outubro de 2010

Lista 25 out. 8

Fazer um programa para calcular a soma dos N primeiros números, onde N é lido.
Ex.: N=5. Soma = 1+2+3+4+5
algoritmo "25 Outubro 8"
// Função :
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações 
var
   i,soma:inteiro
inicio
// Seção de Comandos
   soma<-0
   escreva("Informe o numero: ")
   leia (i)
   para i de i ate 1 passo - 1 faca
      soma<-soma + i
   fimpara
   escreval("Resultado: ",soma)
fimalgoritmo

Lista 25 out. 7

Leia um numero N (inteiro, positivo >5). Depois, leia para um determinado grupo de pessoas (N) as seguintes informações:

Idade
Peso
Sexo

Este programa deve fornecer como saída:
a) A média dos pesos dos homens;
b) A média das idades das mulheres;
c) Quantas mulheres acima de 25 anos;
algoritmo "25 Outubro 7 Homens e mulheres"
// Função :
// Autor : Gustavo Ferreira
// Data : 15/10/2010
// Seção de Declarações
var
   quantidadeHomens,quantidadeMulheres,idadeMulheres,idade,mulheresAcima25Anos,n:inteiro
   pesoHomens,peso:real
   sexo:caracter
inicio
   idade<-1
   quantidadeMulheres<-0
   pesoHomens<-0
   escreval("Informe a quantidade de pessoas entrevistadas:")
   leia(n)
   se (n > 5) entao
      para n de n ate 1 passo -1 faca
         escreva("Informe o sexo: ")
         leia(sexo)
         se (sexo = "M") entao
            quantidadeHomens<-quantidadeHomens +1
            escreva("Informe o peso do homem: ")
            leia(peso)
            pesoHomens<- pesoHomens + peso
            escreva("Informe a idade do homem: ")
            leia(idade)
         senao
            quantidadeMulheres<-quantidadeMulheres +1
            escreva("Informe o peso da mulher: ")
            leia(peso)
            escreva("Informe a idade da mulher: ")
            leia(idade)
            idadeMulheres<- idadeMulheres + idade
            se (idade > 25) entao
               mulheresAcima25Anos<- mulheresAcima25Anos + 1
            fimse
         fimse
      fimpara
      escreval()
      escreval("Media de idade das mulheres:",idadeMulheres/quantidadeMulheres)
      escreval("Peso medio dos homens:",pesoHomens/quantidadeHomens)
      escreval("Quantidade mulheres acima de 25 anos: ",mulheresAcima25Anos)
   senao
      escreval("Numero de pessoas insuficiente!")
   fimse
fimalgoritmo

Lista 25 out. 6

Faça um programa que seja capaz de calcular o resultado de uma operação de divisão inteira (x dividido y), utilizando-se para isso apenas do operador de subtração (-).

Ex.: 12 / 3 = 4 = 12-3=9-3=6-3=3-3=0 (4 vezes)
algoritmo "25 Outubro 6"
// Função : Realizar divisao com o operador de subtracao
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações
var
   i,numero,vezes:inteiro
inicio
// Seção de Comandos
   vezes<- 0
   escreval("Informe o numero:")
   leia(numero)
   escreval("Informe o divisor:")
   leia(i)
   escreval(" - - - -")
   escreva(numero," /",i," =")
   enquanto (numero >= i) faca
      vezes<-vezes+1
      numero<- numero - i
   fimenquanto
   escreva(vezes)
fimalgoritmo

Lista 25 out. 5

Faça um programa que seja capaz de calcular o resultado de uma operação de multiplicação (x vezes y), utilizando-se para isso apenas do operador de soma (+).

Ex.: 12 * 3 = 36 = 12+12+12 (3 vezes)
algoritmo "25 Outubro 5"
// Função : Realizar multiplicacao com o operador de adicao
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações 
var
   i,numero,soma:inteiro
inicio
// Seção de Comandos 
   soma<- 0
   escreval("Informe o numero:")
   leia(numero)
   escreval("Informe o multiplicador:")
   leia(i)
   escreval(" - - - -")
   escreva(numero," x",i," =")
   para i de i ate 1 passo -1 faca
      soma<-soma+numero
   fimpara
   escreva(soma)
fimalgoritmo

Lista 25 out. 4

Faça um programa para achar todos os números inteiros e positivos entre dois números lidos (N1 e N2), tais que:
a) Não terminem em zero;
b) Se o dígito à direita for removido, o número restante seja divisor do número original. (ex: 39 (3 é divisor de 39).
algoritmo "25 Outubro 4"
// Função :
// Autor :
// Data : 26/10/2010
// Seção de Declarações 
var
   n1,n2,i,divisor: inteiro
inicio
// Seção de Comandos
   escreval("Informe o numero inicial:")
   leia(n1)
   escreval("Informe o numero final:")
   leia(n2)
   
  para i de n1 ate n2 passo 1 faca
       se (i>0) entao
          se ((i mod 10) = 0) entao
             divisor<- (i div 10)
             se ((i mod divisor) = 0) entao
                escreval("Numero ",divisor," é divisor de ",i)
             fimse
          fimse
       fimse
  fimpara
fimalgoritmo

Lista 25 out. 3

Faça um programa que, dado um número, imprima a sua tabuada completa.

Ja foi apresentado

Lista 25 out. 2

Faça um programa que mostre na tela o(s) número(s) dentro do intervalo entre 600 e 700 que sejam múltiplos de 5 e também de 7.
algoritmo "25 Outubro 2"
// Função : Procurar numeros multiplos de 5 entre 600 e 700
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações 
var
   i:inteiro
inicio
// Seção de Comandos
   escreval("O numeros abaixo sao multiplos de 5 e tambem de 7")
   para i de 600 ate 700 passo 1 faca
        se ((i mod 5) = 0) entao
           se ((i mod 7) = 0) entao
              escreval(i)
           fimse
        fimse
   fimpara
fimalgoritmo

Lista 25 out. 1

Faça um programa que calcule a média aritmética de 35 alunos do curso de Algoritmos. Use comandos de repetição.
algoritmo "25 outubro 1"
// Função :
// Autor : Gustavo Ferreira
// Data : 26/10/2010
// Seção de Declarações 
var
   soma, aux :real
   i :inteiro
inicio
// Seção de Comandos
   para i de 1 ate 35 passo 1 faca
        escreval("Informe a media do aluno ",i,":")
        leia(aux)
        soma<- soma+aux
   fimpara
   escreva("A media aritmetica da turma foi: ",soma/35)
fimalgoritmo

Capitulo 4 Homens e mulheres

algoritmo "Homens e mulheres"
// Função :
// Autor : Gustavo Ferreira
// Data : 15/10/2010
// Seção de Declarações 
var
   quantidadeHomens,quantidadeMulheres,idadeHomens,idadeMulheres,idade:inteiro
   pesoMulheres,pesoHomens,peso:real
   sexo:caracter
inicio
   idade<-1
   quantidadeHomens<-0
   quantidadeMulheres<-0
   pesoMulheres<-0
   pesoHomens<-0
   repita
      escreva("Informe o sexo:")
      leia(sexo)
      se (sexo = "M") entao
         quantidadeHomens<-quantidadeHomens +1
         escreval("Informe o peso do homem:")
         leia(peso)
         pesoHomens<- pesoHomens + peso
         escreval("Informe a idade do homem:")
         leia(idade)
         idadeHomens<- idadeHomens + idade
      senao
         quantidadeMulheres<-quantidadeMulheres +1
         escreval("Informe o peso da mulher:")
         leia(peso)
         pesoMulheres<- pesoMulheres + peso
         escreval("Informe a idade da mulher:")
         leia(idade)
         idadeMulheres<- idadeMulheres + idade
      fimse
   ate (idade=0)
   
   escreval("Media de idade das mulheres:",idadeMulheres/quantidadeMulheres)
   escreval("Peso medio dos homens:",pesoHomens/quantidadeHomens)
   escreval("Media de idade de todos:",(idadeHomens+idadeMulheres)/(quantidadeHomens+quantidadeMulheres))
   escreval("Quantidade homens (%): ",(100*quantidadeHomens)/(quantidadeHomens+quantidadeMulheres))
   escreval("Quantidade mulheres (%): ",(100*quantidadeMulheres)/(quantidadeMulheres+quantidadeMulheres))
fimalgoritmo

Exercicio capitulo 4 Tabuada

Criar um algoritmo que peça um numero e faça a tabuada para ele.
algoritmo "Calcular tabuada"
// Função :
// Autor : Gustavo Ferreira
// Data : 15/10/2010
// Seção de Declarações 
var
   numero,contador:inteiro
inicio
   contador <- 1;
   escreval("Informe o numero para trabalhar")
   leia(numero)
   repita
      escreval(contador," X",numero," =",contador*numero)
      contador <- contador + 1
   ate (contador>10)
fimalgoritmo

Exercicio 18 capitulo 3

Tendo duas notas, quanto devera tirar na terceira para a media final ser maior que 6.
algoritmo "3.18"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações 
var
   nota1,nota2:real
inicio
   escreval("Informe a nota1:")
   leia(nota1)
   
   escreval("Informe a nota2:")
   leia(nota2)
   
   se (((nota1+nota2)/3)<6) entao
      escreva("Deve tirar ",(6-((nota1+nota2)/3))*3)
   senao
      escreva("Pode tirar 0 (zero) nessa prova, so com duas provas ja atingiu ",((nota1+nota2)/3):5:2)
   fimse
fimalgoritmo

Exercicio 17 capitulo 3

Quantas cartas você pode enviar.
algoritmo "3.17"
// Função : Calcular quantos cartas voce pode enviar
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações 
// Obs: Parece um algoritmo grande devido à quantidade de comentarios e o tamanho do nome das variaveis.
var
   dinheiro,precoEnvelope,precoSelo:real
   qtdeCartas,qtdeEnvelopes,qtdeSelos:real
   
   precoDuplaSeloEnvelope:real
   qtdeDuplaSeloEnvelope:real
inicio
   escreval("Informe a quantia em dinheiro:")
   leia(dinheiro)
   
   escreval("Informe o preco do selo:")
   leia(precoSelo)
   
   escreval("Informe o preco do envelope:")
   leia(precoEnvelope)
   
   escreval("Informe a quantidade de envelopes que voce tem:")
   leia(qtdeEnvelopes)
   
   escreval("Informe a quantidade de selos que voce tem:")
   leia(qtdeSelos)
   
   se (qtdeEnvelopes0) entao //sobrou envelopes...
      //Bom... vamos imaginar que sobrou 10 envelopes e nenhum selo, preciso nivelar esse déficit...
      //Tenho dinheiro para comprar selos para selar os envelopes que sobrou?
      //Parece confuso eu multiplicar o preco do selo pela qtde de envelopes, mas é que a quantidade de envelopes que sobrou é a quantidade de selos que terei que comprar
      se ((precoSelo*qtdeEnvelopes)<=dinheiro) entao //ufa... ou sobrou dinheiro ou foi a quantia exata, enfim, resoloveu o défit de selos
          qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + qtdeEnvolopes // mais cartas seladas...
          dinheiro<- dinheiro - (precoSelo*qtdeEnvelopes) //debitando a bufunfa...
          qtdeEnvelope<- 0
      senao
         //Bom... nao deu para comprar todos os selos..
         //imaginemos que cada selo custe 1 real, tenho 5 reais sobrando e preciso selar 10 envelopes. É óbvil que só vou conseguir selar metade, ou seja, 0.5 dos envelopes. Essa porcentagem de envelopes vezes o preco de cada selo dá a quantidade de selos que posso comprar.
         qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope +  ((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes
         //Descontando dos envelopes que sobrou.
         qtdeEnvelopes<- qtdeEnvelopes - ((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes
         //debitando do dinheiro...
         dinheiro<- dinheiro - (((dinheiro)/(qtdeEnvelopes*precoSelo))*qtdeEnvelopes)*precoSelo
      fimse
   senao
      se (qtdeSelos>0) entao //sobrou selos...
         //Bom... vamos imaginar que sobrou 10 selos e nenhum envelope, preciso nivelar esse déficit...
         //Tenho dinheiro para comprar evelopes suficientes para usar os selos que sobrou?
         //Parece confuso eu multiplicar o preco do envelope pela qtde de selos que sobrou, é que precisarei comprar de envelopes a qtde de selos que sobrou.
         se ((precoEnvelope*qtdeSelos)<=dinheiro) entao //ufa... ou sobrou dinheiro ou foi a quantia exata, enfim, resoloveu o défit de envelopes
             qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + qtdeSelos // mais cartas seladas...
             dinheiro<- dinheiro - (precoEnvelope*qtdeSelos) //debitando a bufunfa...
             qtdeSelos<- 0
         senao
            //Bom... nao deu para comprar todos os envelopes..
            //imaginemos que cada envelope custe 1 real, tenho 5 reais sobrando e preciso usar meus 10 selos sobrando. É óbvil que só vou conseguir comprar metade dos envelopes necessarios, ou seja, 0.5 dos selos. Essa porcentagem de selo vezes o preco de cada envelope dá a quantidade de envelopes que posso comprar.
            qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope +  ((dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos
            //Descontando dos selos que sobrou.
            qtdeSelos<- qtdeSelos - (dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos
            //debitando do dinheiro...
            dinheiro<- dinheiro - ((dinheiro)/(qtdeSelos*precoEnvelope))*qtdeSelos)*precoEnvelope
         fimse
      fimse
   fimse
   // No teste acima, veja que nao testei se sobrou os dois (selos e envelopes), pois é impossivel, pois se sobrou dos dois dari para fazer mais pares. (aula do joao, ou sobrou selo, ou e se somente selos, mas nao ambos)
   // Tambem nao testei se selos e envelopes foram zerados, pois se isso aconteceu, nao precisaria nivelar o deficit.
   // Bom, deficit's nivelado ou quase.
   
   //Agora vamos ver se sobrou dinheiro e ver quantos pares (1 envelope e 1 selo) posso comprar
   se (dinheiro>0) entao
      precoDuplaSeloEnvelope<- precoSelo+precoEnvelope
      escreval(dinheiro div precoDuplaSeloEnvelope)
      qtdeDuplaSeloEnvelope<- qtdeDuplaSeloEnvelope + (dinheiro div precoDuplaSeloEnvelope) // sem casas decimas, nao existe meia carta.
      //pronto, ja sabemos quantas cartas voce pode enviar usando somente o seu dinheiro.
      dinheiro<- dinheiro - (dinheiro div precoDuplaSeloEnvelope):5:2
   fimse
   
   //escreval(98.89871 div 1)
   escreval("Voce pode enviar ",qtdeDuplaSeloEnvelope," cartas")
   escreval("Sobrou ",qtdeEnvelopes," envelopes")
   escreval("Sobrou ",qtdeSelos," selos")
   escreva("Sobrou R$ ",dinheiro:5:2)
   
fimalgoritmo

terça-feira, 28 de setembro de 2010

Exercicio 16 capitulo 3

Escreva um algoritmo que leia os nomes dos três candidatos ao Senado (para uma vaga) com
suas respectivas votações. O algoritmo deve escrever o nome do candidato mais votado. Por
exemplo,
Maior votação: João da Silva
No caso de haver empate entre dois (os mais votados) ou entre os três candidatos, devem ser
escritos os nomes desses candidatos. Por exemplo,
Maior votação: João da Silva, Maria do Socorro
algoritmo "2.16"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações 
var
   nomeCandidato1,nomeCandidato2,nomeCandidato3:literal
   votacaoCand1,votacaoCand2,votacaoCand3:inteiro
inicio
   escreval("Informe o nome e a votacao do candidato 1:")
   escreva("Nome: ")
   leia(nomeCandidato1)
   escreva("Votacao: ")
   leia(votacaoCand1)

   escreval("Informe o nome e a votacao do candidato 2:")
   escreva("Nome: ")
   leia(nomeCandidato2)
   escreva("Votacao: ")
   leia(votacaoCand2)
   
   escreval("Informe o nome e a votacao do candidato 3:")
   escreva("Nome: ")
   leia(nomeCandidato3)
   escreva("Votacao: ")
   leia(votacaoCand3)
   
   escreval
   
   //todo mundo ganhou...
   se ((votacaoCand1 = votacaoCand2) e (votacaoCand2 = votacaoCand3)) entao
      escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2,", ",nomeCandidato3)
   senao
      //se o candidato 1 é igual ao candidato 2, estao empatados. Se os dois forem maior que o 3, sao os vencedores
      se((votacaoCand1=votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
         escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato2)
      senao
         //se o candidato 1 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 2, sao os vencedores.
         se ((votacaoCand1=votacaoCand3) e (votacaoCand1>votacaoCand2)) entao
            escreva("Maior votacao: ",nomeCandidato1,", ",nomeCandidato3)
         senao
            //se o candidato 2 é igual ao candidato 3, estao empatados. Se os dois forem maior que o 1, sao os vencedores.
            se ((votacaoCand2=votacaoCand3) e (votacaoCand2>votacaoCand1)) entao
               escreva("Maior votacao: ",nomeCandidato2,", ",nomeCandidato3)
            senao
               //Nao. Nao temos empate, vamos ver quem foi o vencedor.
               se ((votacaoCand1>votacaoCand2) e (votacaoCand1>votacaoCand3)) entao
                  escreva("Maior votacao: ",nomeCandidato1)
               senao
                  se ((votacaoCand2>votacaoCand1) e (votacaoCand2>votacaoCand3)) entao
                     escreva("Maior votacao: ",nomeCandidato2)
                  senao
                     //Nem precisa testar agora né? Pelas regras da probabilidade o candidato 3 venceu
                     escreva("Maior votacao: ",nomeCandidato3)
                  fimse
               fimse
            fimse
         fimse
      fimse
   fimse
fimalgoritmo

Exercicio 15 capitulo 3

Escreva um algoritmo que leia duas datas, na forma dia, mês e ano, e informe qual é a mais
recente.

algoritmo "Exercicio 3.14"
// Função :
// Autor : Gustavo
// Data : 24/9/2010
// Seção de Declarações 
var
   ano1,mes1,dia1:inteiro
   ano2,mes2,dia2:inteiro
inicio
   escreval("Informe o ano da primeira data:")
   leia(ano1)
   
   escreval("Informe o mes da primeira data:")
   leia(mes1)
   
   escreval("Informe o dia da primeira data:")
   leia(dia1)
   
   escreval("Informe o ano da segunda data:")
   leia(ano2)
   
   escreval("Informe o mes da segunda data:")
   leia(mes2)
   
   escreval("Informe o dia da segunda data:")
   leia(dia2)
   
   se (ano2 > ano1) entao
      escreva("A data 2 é a mais recente")
   senao
      se(ano2 < ano1) entao
         escreva("A data 1 é a mais recente")
      senao
         se (mes2 > mes1) entao
            escreva("A data 2 é a mais recente")
         senao
            se(mes2 < mes1) entao
               escreva("a data 1 é a maior")
            senao
                se (dia2 > dia1) entao
                  escreva("A data 2 é a mais recente")
                senao
                  se (dia2 < dia1) entao
                     escreva("A data 1 é a mais recente")
                  senao
                     escreva("As datas são iguais")
                  fimse
                fimse
            fimse
         fimse
      fimse
   fimse
fimalgoritmo

Exercicio 14 capitulo 3

Escreva um algoritmo que leia três valores correspondentes ao dia, mês e ano de nascimento de
uma pessoa e outros três valores correspondentes ao dia, mês e ano do dia corrente. O
algoritmo deve escrever a idade da pessoa.
algoritmo "3.14"
// Função :
// Autor : Gustavo
// Data : 28/9/2010
// Seção de Declarações 
var
   //Mesmo sendo tudo do mesmo tipo, separei para ficar mais organizado, mas tanto faz declarar tudo junto.
   anoNasc,mesNasc,diaNasc:inteiro
   anoCorr,mesCorr,diaCorr:inteiro
   anoIdade,mesIdade,diaIdade:inteiro
inicio
   escreval(" - - - Data de nascimento - - - ")
   escreval("Informe sua data de nascimento")
   escreva("Ano: ")
   leia(anoNasc)
   escreva("Mes: ")
   leia(mesNasc)
   escreva("Dia: ")
   leia(diaNasc)
   
   escreval
   escreval(" - - - Data Corrente - - - ")
   escreval("Informe a data corrente.")
   escreva("Ano: ")
   leia(anoCorr)
   escreva("Mes: ")
   leia(mesCorr)
   escreva("Dia: ")
   leia(diaCorr)
   
   anoIdade<- anoCorr-anoNasc
   se (mesCorr>mesNasc) entao
      mesIdade<- mesCorr-mesNasc
   senao
      mesIdade<- 12-(mesNasc-mesCorr)
      se (diaNascdiaNasc) entao
      diaIdade<- diaCorr-diaNasc
      mesIdade<- mesIdade+1
   senao
      diaIdade<- diaNasc-diaCorr
   fimse
   
   se (mesIdade=12) entao
      anoIdade<- anoIdade+1
      mesIdade<- 0
   fimse
   
   escreva("Você tem ",anoIdade," anos, ",mesIdade, " mese(s) e ",diaIdade," dia(s)")
fimalgoritmo

quinta-feira, 23 de setembro de 2010

Exercicio 13 capitulo 3

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
                                                                                       (3.3)
ou
           peso ideal da mulher = (62,1 x altura) – 44,77.
                                                                                       (3.4)
O algoritmo deve, também, informar se a pessoa está abaixo ou acima de seu peso ideal e m
quantos quilos.


algoritmo "Exercicio 3.13"
// Função :
// Autor : Gustavo
// Data : 23/9/2010
// Seção de Declarações 
var
   peso,altura,pesoIdeal:real
   sexo:literal
inicio
   escreval("Informe seu sexo:")
   leia(sexo)
   
   escreval("Informe a sua altura:")
   leia(altura)
   
   escreval("Informe o seu peso:")
   leia(peso)
   
   se ((sexo="MASCULINO") ou (sexo="FEMININO")) entao
      se (sexo="MASCULINO") entao
         pesoIdeal<- (72.7*altura)-58
      senao
         se (sexo="FEMININO") entao
            pesoIdeal<- (62.1*altura)-44.77
         fimse
      fimse
      se (peso>pesoIdeal) entao
            escreva("Voce esta ",(peso-pesoIdeal):5:2," acima do normal")
         senao
            se (peso<pesoIdeal) entao
               escreva("Voce esta ",(pesoIdeal-peso):5:2," abaixo do normal")
            senao
               escreva("Voce esta com o peso ideal")
            fimse
         fimse
   senao
      escreva("Você é um E.T?")
   fimse
   
fimalgoritmo

Exercicio 12 capitulo 3

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 "Exercicio 3.12"
// Função :
// Autor : Gustavo
// Data : 23/9/2010
// Seção de Declarações 
var
   p1,p2,p3,media:real
inicio
   escreval("Informe a nota 1:")
   leia(p1)
   
   escreval("Informe a nota 2:")
   leia(p2)
   
   escreval("Informe a nota 3:")
   leia(p3)
   
   se (((p1=>0) e (p1<=10)) e ((p2=>0) e (p2<=10)) e ((p3=>0) e (p3<=10))) entao
      media<- (p1+p2+p3)/3
      escreva(media)
   senao
      escreva("As notas devem estar no intervalo de 0 (zero) a 10 (dez)
   fimse
fimalgoritmo

Exercicio 11 capitulo 3

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 "Exercicio 3.11"
// Função :
// Autor : Gustavo
// Data : 23/9/2010
// Seção de Declarações 
var
   ano,mes,dia,diasCorridos:inteiro
inicio
   escreval("Informe o ano:")
   leia(ano)
   
   escreval("Informe o mes:")
   leia(mes)
   
   escreval("Informe o dia:")
   leia(dia)
   
   se (mes>12) entao
      escreva("Eita!!! Esse mes nao existe!")
   senao
      se ((ano mod 4) = 0) entao
         diasCorridos<- 366
      senao
         diasCorridos<- 365
      fimse

      se (mes <= 12) entao //dezembro.
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 11) entao //novembro
         diasCorridos<- diasCorridos - 30
      fimse

      se (mes <= 10) entao //outubro
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 9) entao //setembro
         diasCorridos<- diasCorridos - 30
      fimse

      se (mes <= 8) entao //agosto
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 7) entao //julho
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 6) entao //junho
         diasCorridos<- diasCorridos - 30
      fimse

      se (mes <= 5) entao //maio
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 4) entao //abril
         diasCorridos<- diasCorridos - 30
      fimse

      se (mes <= 3) entao //marco
         diasCorridos<- diasCorridos - 31
      fimse

      se (mes <= 2) entao //fevereiro
         se ((ano mod 4)=0) entao //bissexto
            diasCorridos<- diasCorridos - 29
         senao
            diasCorridos<- diasCorridos - 28
         fimse
      fimse

      se (mes <= 1) entao //janeiro
         diasCorridos<- diasCorridos - 31
      fimse
      
      diasCorridos<- diasCorridos + dia
      escreva ("Se passou ",diasCorridos," dias")
   
   fimse
fimalgoritmo

domingo, 19 de setembro de 2010

Exercicio 10 capitulo 3

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 "Exercicio 3.10"
var
   idade:inteiro
   nome:literal
inicio
   escreval("Informe o seu nome:")
   leia(nome)
   
   escreval("Informe sua idade:")
   leia(idade)

   se (idade<5) entao
      escreva("Idade insuficiente")
   senao
      se (idade>=5) e (idade<=7) entao
         escreva("A categoria do ",nome," é Infantil 'A'")
      senao
         se(idade>=8) e (idade<=10) entao
            escreva("A categoria do ", nome," é Infantil 'B'")
         senao
            se(idade>=11) e (idade<=13) entao
               escreva("A categoria do ",nome," é Juvenil 'A'")
            senao
               se(idade>=14) e (idade<=17) entao
                  escreva("A categoria do ",nome," é Juvenil 'B'")
               senao
                  escreva("A categoria do ",nome," é Sênior")
               fimse
            fimse
         fimse
      fimse
   fimse
fimalgoritmo

Exercicio 9 capitulo 3

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
1o operando operação 2o operando = resultado.
Por exemplo, se os valores lidos foram 4, “*” e 5, o algoritmo deve escrever
4*5 = 20.
algoritmo "Exercicio 3.9"
// Função :
// Autor : Gustavo Quirino
// Data : 19/9/2010
// Seção de Declarações 
var
   operando1,operando2,resultado:real
   operacao:literal
inicio
   resultado<- -1
   escreval("Informe o operando1:")
   leia(operando1)
   
   escreval("Informe a operação: (+,-,/,*)")
   leia(operacao)
   
   escreval("Informe o operando2:")
   leia(operando2)

   se (operacao = "+") entao
      resultado<- operando1 + operando2
   senao
      se (operacao = "-") entao
         resultado<- operando1 - operando2
      senao
         se (operacao = "/") entao
            resultado<- operando1 / operando2
         senao
            se (operacao = "*") entao
               resultado<- operando1 * operando2
            senao
               escreva("Operação inválida!")
            fimse
         fimse
      fimse
   fimse

   se (resultado>=0) entao
      escreva("O resultado é: ",resultado:5:2)
   fimse
   
fimalgoritmo

Exercicio 8 capitulo 3

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.
 algoritmo "Dec2Bin"
 var
   b: literal
   n, q, r: inteiro
inicio
    b <- " "
    escreva("Entre com um número")
    leia(n)

    q <- n
    r<- q % 2
    q <- q\2
    se r = 0 entao
      b <- "0" + b
    senao
      b <- "1" + b
    fimse

    r <- q % 2
    q <- q\2
    se r = 0 entao
      b <- "0" + b
    senao
      b <- "1" + b
    fimse

    r <- q % 2
    q <- q\2
    se r = 0 entao
      b <- "0" + b
    senao
      b <- "1" + b
    fimse

    r <- q % 2
    q <- q\2
    se r = 0 entao
      b <- "0" + b
    senao
      b <- "1" + b
    fimse

    r <- q % 2
    q <- q\2
    se r = 0 entao
      b <- "0" + b
    senao
      b <- "1" + b
    fimse

    escreva(n, " em decimal é representado por ", b, " em binário")
fimalgoritmo

Seguindo esse algoritmo será impresso 11111 SEMPRE, independente do valor de 'n'
Para corrigir basta trocar o 'numerico' por 'inteiro', nao havera problemas pois estamos convertendo numeros inteiros.

A cada modulo (separados por uma linha) é feito o calculo do novo dividendo e do resto, verifica se o resto é zero ou um e acrescenta na variavel 'b'. Porque a variavel 'b' nao podia ser do tipo inteiro? Pois zero a esquerda nao vale nada, entao o binario 01010 (10 em decimal) seria mostrado '1010'

Exercicio 7 capitulo 3

screva 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 "Exercicio 3.7"
// Função :
// Autor : Gustavo Quirino
// Data : 19/9/2010
// Seção de Declarações 
var
   nome1,nome2,nome3,nome4,nome5:literal
   vCli1,vCli2,vCli3,vCli4,vCli5,total,media:real
inicio
   escreval("Informe o nome do cliente 1:")
   leia(nome1)
   
   escreval("Informe o valor pago por ele:")
   leia(vCli1)
   ///
   escreval("Informe o nome do cliente 2:")
   leia(nome2)

   escreval("Informe o valor pago por ele:")
   leia(vCli2)
   ///
    escreval("Informe o nome do cliente 3:")
   leia(nome3)

   escreval("Informe o valor pago por ele:")
   leia(vCli3)
   ///
    escreval("Informe o nome do cliente 4:")
   leia(nome4)

   escreval("Informe o valor pago por ele:")
   leia(vCli4)
   ///
    escreval("Informe o nome do cliente 5:")
   leia(nome5)

   escreval("Informe o valor pago por ele:")
   leia(vCli5)
   
   total<- vCli1+vCli2+vCli3+vCli4+vCli5
   media<- total/5
   
   escreval("Nomes dos clientes que gastaram mais de R$ 20,00:")
   se (vCli1>20) entao
      escreval(nome1, " gastou R$",vCli1:5:2)
   fimse
   se (vCli2>20) entao
      escreval(nome2, " gastou R$",vCli2:5:2)
   fimse
   se (vCli3>20) entao
      escreval(nome3, " gastou R$",vCli3:5:2)
   fimse
   se (vCli4>20) entao
      escreval(nome4, " gastou R$",vCli4:5:2)
   fimse
   se (vCli5>20) entao
      escreval(nome5, " gastou R$",vCli5:5:2)
   fimse
fimalgoritmo

Exercicio 6 capitulo 3

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 "Exercicio 3.6"
// Função :
// Autor : Gustavo Quirino
// Data : 19/9/2010
// Seção de Declarações 
var
   vA,vB,vC,vD,vE,vF,x,y,denominador:real
inicio
   escreval("Informe o valor de 'a':")
   leia(vA)
   
   escreval("Informe o valor de 'b':")
   leia(vB)
   
   escreval("Informe o valor de 'c':")
   leia(vC)
   
   escreval("Informe o valor de 'd':")
   leia(vD)
   
   escreval("Informe o valor de 'e':")
   leia(vE)
   
   escreval("Informe o valor de 'f':")
   leia(vF)

      denominar<- ((vA*vE)-(vB*vD))
   se (denominador=0) entao
      escreva("O valor de 'a', 'e', 'b' e 'd' não podem ser igual a 0(zero)")
   senao
      x<- ((vC*vE)-(vB*vF))/denominador
      y<- ((vA*vF)-(vC*vD))/denominador
      
      escreval("X = ",x)
      escreva("Y = ",y)
   fimse
fimalgoritmo

Exercicio 5 capitulo 3

Escreva um algoritmo que lê dois números inteiros e informa se o primeiro é múltiplo do
segundo.
algoritmo "Exercicio 3.5"
// Função :
// Autor :  Gustavo Quirino
// Data : 19/9/2010
// Seção de Declarações
var
   num1,num2,resto:real
inicio
   escreval("Informe o primeiro número:")
   leia(num1)
   
   escreval("Informe o segundo número:")
   leia(num2)
   
   se (num1>0)entao
      resto<- num1 mod num2
   senao
      resto<- num2 mod num1
   fimse
   
   se (resto>0)entao
      escreva("Não é múltiplo")
   senao
      escreva("É múltiplo")
   fimse
fimalgoritmo

Exercicio 4 capitulo 3

Escreva um algoritmo para calcular a área de um círculo, fornecido o valor do raio, que deve ser
positivo ou zero.
algoritmo "exercicio 3.4 - Area do circulo"
var
   raio,area:real
inicio
   escreval("Informe o raio:")
   leia(raio)
   
   se (raio>=0) entao
      area<- 3.141518*(raio^2)
      escreva("A área é: ",area:5:2)
   senao
      escreva("O raio deve ser maior ou igual a zero")
   fimse
fimalgoritmo

Exercicio 3 capitulo 2

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. SOMA <- (NUM^2/X) + (X + 1)
    3. TUDO <- não ((TESTE ou COD) e (X <> NUM))

----------
NOME = "TERÇA"
SOMA = 15.5
TUDO = FALSO

Exercicio 2 capitulo 3

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)) F

(5/2 = 5/2) = V
(3.0 <> 3.1) = V

Primeiro conjunto (e) é verdadeiro.
() = V
 - - - - - - 
(5 >= 4) = V

() = V

Resultado do primeiro conjunto com este se torna verdade, nem era preciso testar esse segundo pois foi usado o condicional ou, só pelo fato do primeiro ser verdadeiro já validava a sentença.

(não(5 = 5.0)) = F

Apesar de 5 ser igual a 5.0, o resultado foi invertido pelo nao, tornando se falso. O resultado do conjunto () e esse último, se torna falso pois para o condicional e, os dois testes deveriam ser verdadeiros.

Exercicio 1 capitulo 3

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
----------------------------
1. Falsa
2. Verdadeira
3. Vedadeira
4. Verdadeira
5. Falsa

sábado, 11 de setembro de 2010

Condicionais - Categoria de um nadador

algoritmo "Categoria do nadador"
var
   idade:inteiro
inicio
   escreval("Informe sua idade:")
   leia(idade)
   
   se (idade<5) entao
      escreva("Idade insuficiente")
   senao
      se (idade>=5) e (idade<=7) entao
         escreva("Infantil 'A'")
      senao
         se(idade>=8) e (idade<=10) entao
            escreva("Infantil 'B'")
         senao
            se(idade>=11) e (idade<=13) entao
               escreva("Juvenil 'A'")
            senao
               se(idade>=14) e (idade<=17) entao
                  escreva("Juvenil 'B'")
               senao
                  escreva("Adulto")
               fimse
            fimse
         fimse
      fimse
   fimse
fimalgoritmo

Condicionais - Múltiplos ou não

algoritmo "Verificar se é multiplo"
var
   a,b,resto:real
inicio
   escreval("Informe o valor para 'a':")
   leia(a)
   
   escreval("Informe o valor para 'b':")
   leia(b)
   
   //Verificando quem é maior para decidir quem será o divisor ou dividendo
   se (a>0) entao
      resto<- b mod a
   senao
      resto<- a mod b
   fimse
   
   //Verificando se o resto é diferente de zero
   se (resto=0) entao
      escreva("São múltiplos")
   senao
      escreva("Não são múltiplos")
   fimse
fimalgoritmo

Condicionais - Maior número entre três.

algoritmo "Receber tres numeros e falar qual é o maior"
var
   a,b,c:real
inicio
      escreval("Informe o numero 1:")
      leia(a)
      
      escreval("Informe o numero 2:")
      leia(b)
      
      escreval("Informe o número 3:")
      leia(c)
      
      se (a>b) e (a>c) entao
         escreva("O primeiro número é maior")
      senao
         se (b>c) e (b>a) entao
            escreva("O segundo número é maior")
         senao
            escreva("O terceiro número é maior")
         fimse
      fimse
fimalgoritmo

Condicionais - Aprovado ou não

Faça um fluxograma que receba duas notas e calcule a média e mostre uma das seguintes mensagens:
>= 5 : Aprovado
<5 : Reprovado

algoritmo "Calcular média e mostrar se é aprovado ou nao"
var
nota1,nota2,media:real
inicio
escreval("Informe a primeira nota:")
leia(nota1)
escreval("Informe a segunda nota:")
leia(nota2)
media<-(nota1 + nota2)/2 se media>=5 entao
escreva("Media:",media,", Aprovado!")
senao
escreva("Media:",media,", Reprovado!")
fimse
fimalgoritmo

sexta-feira, 10 de setembro de 2010

Redes


Dois amigos meu fazendo redes na FATEC....

Jogos em GameMaker




Para quem quiser baixar a video aula, eu postei no megaupload:


http://www.megaupload.com/?d=N4927A7Q

O vídeo abaixo está com qualidade pequena devido à compressão que o blogger faz, se você desejar ver o vídeo com qualidade maior, pode fazer o download com qualidade maxima, ou pode acessar a rede da FATEC pois vou disponibilizar lá também.





Para quem quiser baixar a video aula, eu postei no megaupload:


http://www.megaupload.com/?d=N4927A7Q

sábado, 4 de setembro de 2010

Exercicio 21 capitulo 2

A comissão de formatura de um curso está organizando a festa de formatura de sua turma e
levantou as seguintes informações:
25
1. custo do salão (capacidade de 800 pessoas com mesas de 4 pessoas) R$ 2000.00;
2. custo da sonorização: R$ 500,00
3. custo da decoração: R$ 800,00
Além desses custos, que serão rateados igualmente entre os formandos, há custos cuja divisão é
proporcional ao número de convidados do formando. São eles:
1. segurança: necessário um segurança para cada 80 pessoas da festa;
2. garçom: um garçom consegue atender 48 pessoas (ou 12 mesas de 4 pessoas); e
3. bebida.
Escreva um algoritmo que leia o nome de cada um dos cinco formandos com seus respectivos
números de convidados. Ele também deve ler os custos de um segurança, de um garçom e da
bebida. O algoritmo deve calcular e escrever, para cada formando o número de mesas desitnadas
para seus convidados e o custo da festa para eles. As mesas poderão ser compartilhadas entre
convidados de diferentes formandos.
algoritmo "Exercicio 2-21"
var
   //Nomes
   nomeFormando1,nomeFormando2,nomeFormando3,nomeFormando4,nomeFormando5:literal
   //Qtde de convidados
   qtdeConvidadosF1,qtdeConvidadosF2,qtdeConvidadosF3,qtdeConvidadosF4,qtdeConvidadosF5,totalConvidados:inteiro
   //Servicos
   precoBebida,precoGarcom,precoSeguranca:real
   //Custos
   //custoFixoIndividual,custoVariavelIndividualF1,custoVariavelIndividualF2,custoVariavelIndividualF3,custoVariavelIndividualF4,custoVariavelIndividualF5:real
   custoFixoIndividual,custoTotalGarcom,custoTotalSeguranca,custoTotalF1,custoTotalF2,custoTotalF3,custoTotalF4,custoTotalF5:real
inicio
   escreval("Informe o nome do formando 1:")
   leia(nomeFormando1)
   
   escreval("Informe a quantidade de convidados do formando 1:")
   leia(qtdeConvidadosF1)
   
   ///////////////////////////////////////
   escreval("Informe o nome do formando 2:")
   leia(nomeFormando2)
   
   escreval("Informe a quantidade de convidados do formando 2:")
   leia(qtdeConvidadosF2)
   
   ////////////////////////////////////////
   escreval("Informe o nome do formando 3:")
   leia(nomeFormando3)
   
   escreval("Informe a quantidade de convidados do formando 3:")
   leia(qtdeConvidadosF3)
   
   ////////////////////////////////////////
   escreval("Informe o nome do formando 4:")
   leia(nomeFormando4)
   
   escreval("Informe a quantidade de convidados do formando 4:")
   leia(qtdeConvidadosF4)
   
   ////////////////////////////////////////
   escreval("Informe o nome do formando 5:")
   leia(nomeFormando5)
   
   escreval("Informe a quantidade de convidados do formando 5:")
   leia(qtdeConvidadosF5)
   
   ////////////////////////////////////////
   escreval("Informe o custo para um seguranca:")
   leia(precoSeguranca)
   
   escreval("Informe o custo para um garçom:")
   leia(precoGarcom)
   
   escreval("Informe o custo da bebida por convidado:")
   leia(precoBebida)
   
   ///////////////////////////////////////
   //Calculando custos fixos por formando:
   //400 do salao
   //100 da sonorizacao
   //800 da decoracao
   custoFixoIndividual<- 400+100+160
   
   totalConvidados<- qtdeConvidadosF1+qtdeConvidadosF2+qtdeConvidadosF3+qtdeConvidadosF4+qtdeConvidadosF5
   
   //Descobrimos quantos garçons serao necessarios e multiplicamos o custo de cada garcom
   //Por exemplo: 80 convidados no total / 48 = 1.6666666666... garcons. Nao tem como medir um garcom e meio oÔ. Entao pego o inteiro desse resultado = 1 e somo mais 1 = 2 garcons
   //Se nos ja usassemos verificacoes condicionais, daria para ver quando adicionariamos 1 ou nao. Se o total de conviddos fosse multiplo de 48, nunca precisariamos somar 1.
   custoTotalGarcom<- ((totalConvidados div 48)+1)*precoGarcom
   
   //Descobrimos quantos segurancas serao necessarios e multiplicamos o custo de cada seguranca
   //Se nos ja usassemos verificacoes condicionais, daria para ver quando adcionariamos 1 ou nao
   custoTotalSeguranca<- ((totalConvidados div 80)+1)*precoSeguranca
   
   custoTotalF1<- ((custoTotalGarcom/totalConvidados)*qtdeConvidadosF1) + ((custoTotalSeguranca/totalConvidados) + (precoBebida*qtdeConvidadosF1)*qtdeConvidadosF1)+custoFixoIndividual
   custoTotalF2<- ((custoTotalGarcom/totalConvidados)*qtdeConvidadosF2) + ((custoTotalSeguranca/totalConvidados) + (precoBebida*qtdeConvidadosF2)*qtdeConvidadosF2)+custoFixoIndividual
   custoTotalF3<- ((custoTotalGarcom/totalConvidados)*qtdeConvidadosF3) + ((custoTotalSeguranca/totalConvidados) + (precoBebida*qtdeConvidadosF3)*qtdeConvidadosF3)+custoFixoIndividual
   custoTotalF4<- ((custoTotalGarcom/totalConvidados)*qtdeConvidadosF4) + ((custoTotalSeguranca/totalConvidados) + (precoBebida*qtdeConvidadosF4)*qtdeConvidadosF4)+custoFixoIndividual
   custoTotalF5<- ((custoTotalGarcom/totalConvidados)*qtdeConvidadosF5) + ((custoTotalSeguranca/totalConvidados) + (precoBebida*qtdeConvidadosF5)*qtdeConvidadosF5)+custoFixoIndividual
   
   escreval("* * * * * * * *  C U S T O S * * * * * * * *")
   escreval("O formando ",nomeFormando1," gastará ",custoTotalF1:5:2," R$")
   escreval("O formando ",nomeFormando2," gastará ",custoTotalF2:5:2," R$")
   escreval("O formando ",nomeFormando3," gastará ",custoTotalF3:5:2," R$")
   escreval("O formando ",nomeFormando4," gastará ",custoTotalF4:5:2," R$")
   escreval("O formando ",nomeFormando5," gastará ",custoTotalF5:5:2," R$")
   escreval
   escreval("* * * * * * * * M E S A S  * * * * * * * * * ")
   escreval("O formando ",nomeFormando1," precisará de ",qtdeConvidadosF1/4)
   escreval("O formando ",nomeFormando2," precisará de ",qtdeConvidadosF2/4)
   escreval("O formando ",nomeFormando3," precisará de ",qtdeConvidadosF3/4)
   escreval("O formando ",nomeFormando4," precisará de ",qtdeConvidadosF4/4)
   escreval("O formando ",nomeFormando5," precisará de ",qtdeConvidadosF5/4)
   
fimalgoritmo

Exercicio 20 capitulo 2

O custo final de um carro é a soma do custo de fábrica com o percentual de revenda mais impostos,
ambos aplicados ao custo de fábrica. Escreva um algoritmo que leia o nome do modelo de um carro,
seu custo de fábrica e os percentuais de revenda e de impostos e escreva o custo ao consumidor do
carro.

algoritmo "2-20"
var
   nome:literal
   valorHora,qtdeHoras,salarioLiquido,salarioBruto:real
inicio
   escreval("Informe o nome do funcionário:")
   leia(nome)

   escreval("Informe a quantidade de horas trabalhadas do ",nome)
   leia(qtdeHoras)

   escreval("Informe o valor da hora:")
   leia(valorHora)

   salarioBruto<- qtdeHoras*valorHora
   salarioLiquido<- salarioBruto-(salarioBruto*0.09)-(salarioBruto*0.08)

   escreva("O salário líquido do ",nome," é: ",salarioLiquido," R$")
fimalgoritmo

Exercicio 19 capitulo 2

O custo final de um carro é a soma do custo de fábrica com o percentual de revenda mais impostos,
ambos aplicados ao custo de fábrica. Escreva um algoritmo que leia o nome do modelo de um carro,
seu custo de fábrica e os percentuais de revenda e de impostos e escreva o custo ao consumidor do
carro.
algoritmo "Exercicio 2-19"
var
   modeloCarro:literal
   precoFabrica,percentualImpostos,percentualRevenda,precoFinal:real
inicio
   escreval("Informe o modelo do veículo:")
   leia(modeloCarro)
   
   escreval("Informe o preco de fábrica:")
   leia(precoFabrica)
   
   escreval("Informe o percentual de impostos: (%)")
   leia(percentualImpostos)
   percentualImpostos<- percentualImpostos/100
   
   escreval("Informe o percentual de revenda: (%)")
   leia(percentualRevenda)
   percentualRevenda<- percentualRevenda/100
   
   precoFinal<- precoFabrica+(precoFabrica*percentualImpostos)+(precoFabrica*percentualRevenda)
   escreva("O preco final do ",modeloCarro," é:",precoFinal:5:2," R$")
fimalgoritmo

Exercicio 18 capitulo 2

Uma revenda de carros paga a seus vendedores um salário de X reais por mês, acrescido de uma
comissão de y reais para cada carro vendido e 4% do valor total de vendas. Escreva um algoritmo
que leia o nome do vendedor, seu salário, número de carros que ele vendeu no mês e o valor total
de suas vendas. O algoritmo deve escrever o nome e o salário final do vendedor.
algoritmo "Exercicio 2-18"
var
   nome:literal
   salarioFixo,valorCarrosVendidos,comissaoPorCarro,salarioLiquido:real
   qtdeCarrosVendidos:inteiro
inicio
   escreval("Informe o nome do vendedor:")
   leia(nome)
   
   escreval("Informe o salário fixo do ",nome,":")
   leia(salarioFixo)
   
   escreval("Informe a comissão por carro vendido:")
   leia(comissaoPorCarro)
   
   escreval("Informe a quantidade de carros vendidos:")
   leia(qtdeCarrosVendidos)
   
   escreval("Informe o total monetario de suas vendas:")
   leia(valorCarrosVendidos)
   
   salarioLiquido<- salarioFixo+(comissaoPorCarro*qtdeCarrosVendidos)+(valorCarrosVendidos*0.04)
   
   escreva("O salário líquido do ",nome," será de: ",salarioLiquido:5:2," R$")
fimalgoritmo

Exercicio 17 capitulo 2

Faça um algoritmo que leia o dia do mês ( valor de 1 a 31), e o dia da semana correspondente (1 a
7). O algoritmo deve calcular e escrever o dia da semana (1 a 7) correspondente ao primeiro dia do
mês.

????

Exercicio 16 capitulo 2

Escreva um algoritmo que leia um valor composto apenas de 0’s e 1’s representando um número na
base binária (com até 6 dígitos ou bits). O algoritmo deve escrever esse mesmo número na base
decimal. A conversão de binário para decimal é feita somando –se os produtos de cada digito do
número binário, por seu peso, sendo que o digito mais à direita tem peso 1 (2°), o seguinte tem
peso 2 (21), 4 (22), 8 (23), etc. Por exemplo 110101 é 53 .
2 10
(1x32 + 1x 16 + 0x8 + 1x4 + 0x 2 + 1x1 = 32 + 16 + 0 + 4 + 0 + 1 = 53)
algoritmo "Exercicio 2-16"
var
   b0,b1,b2,b3,b4,b5: inteiro
   decimal: real
inicio
   escreva("Informe 0 ou 1")
   escreval
   leia(b0)
   
   escreva("Informe 0 ou 1")
   escreval
   leia(b1)
   
   escreva("Informe 0 ou 1")
   escreval
   leia(b2)
   
   escreva("Informe 0 ou 1")
   escreval
   leia(b3)
   
   escreva("Informe 0 ou 1")
   escreval
   leia(b4)
   
   escreva("Informe 0 ou 1")
   escreval
   leia(b5)

   decimal<- (b5*2^5) + (b4*2^4) + (b3*2^3) + (b2*2^2) + (b1*2^1) + (b0*2^0)
   
   escreva("Decimal: ",decimal)
fimalgoritmo

Exercicio 15 capitulo 2

Escreva um algoritmo que leia o valor do raio e calcule a área do circulo correspondente.
algoritmo "Exercicio 2-15"
var
   raio,area:real
inicio
   escreval("Informe o raio da circunferencia:")
   leia(raio)
   
   area<- 3.14*raio^2
   escreva("A área é:",area)
fimalgoritmo

Exercicio 13 capitulo 2

Escreva um algoritmo que calcule e escreva o valor de um termo an qualquer de uma progressão
geométrica dada por:
an = a1 * q^(n-1)
onde a1, é o primeiro termo da série, an, é o enésimo termo, q é a razão e n é o numero de termos.
Os valores de a1, q e n serão fornecidos pelo usuário.
algoritmo "Exercicio 2-13"
var
   an,a1,n,q:real
inicio
   escreval("Informe o valor para 'n':")
   leia(n)
   
   escreval("Informe o valor para 'a1':")
   leia(a1)
   
   escreval("Informe o valor para 'q':")
   leia(q)
   
   an<- a1*q^(n+1)
   
   escreva("O resultado é:",an)
fimalgoritmo

Exercicio 12 capitulo 2

Escreva um algoritmo que calcule e escreva a soma Sn dos n primeiros termos de uma progressão
aritmética dada pela formula:
sn = ((a1 + an) / 2) * n
Onde a1, é o primeiro termo da progressão, an, é o ultimo e n é o numero de termos, tal que:
n = ((an – a1) / r) + 1
Os valores de a1, an e r (a razão da progressão) serão fornecidas pelo usuário.
algoritmo "Exercicio 2-12"
var
   a1,an,sn,r,n:real
inicio
   escreval("Informe o valor para 'a1':")
   leia(a1)
   
   escreval("Informe o valor para 'an':")
   leia(an)

   escreval("Informe o valor para 'r':")
   leia(r)
   
   n<- ((an - a1)/2)+1
   sn<- ((a1 + an)/2)*n
   
   escreva("O resultado é:",sn)
fimalgoritmo

Exercicio 11 capitulo 2

Em uma pizzaria, cada tulipa de chope custa R$ 2,80 e, uma pizza mista grande custa R$ 20.00 mais
R$ 1.50 por tipo de cobertura pedida (queijo, presunto, banana, etc.). Uma turma vai à pizzaria e
pede uma determinada quantidade de chopes e pizzas grandes com uma determinada quantidade
de coberturas. Escreva um algoritmo que calcula a conta e, sabendo quantas pessoas estão à mesa,
quanto cada uma deve pagar (não esqueça os 10% do garçom).
algoritmo "Exercicio 2-11"
var
   qtdeChope,qtdePizza,qtdeCobertura,qtdePessoas:inteiro
   garcom,subTotal,total,totalPorPessoa:real
inicio
   escreval("Informe a quantidade de pessoas à mesa:")
   leia(qtdePessoas)
   
   escreval("Informe a quantidede de chopes servidos:")
   leia(qtdeChope)
   
   escreval("Informe a quantidade de pizzas servidas:")
   leia(qtdePizza)
   
   escreval("Informe a quantidade de coberturas servidas com as pizzas:")
   leia(qtdeCobertura)
   
   //Precos:
   //Chope> 2,80
   //Pizza> 20,00
   //Cobertura> 1,50
   subTotal<- (qtdePizza*20) + (qtdeChope*2.80) + (qtdeCobertura*1.50)
   garcom<- subTotal*0.1 //Exemplo: 100,00 * 0.1 = 10
   total<- subTotal+garcom
   totalPorPessoa<- total/qtdePessoas
   escreva("Cada pessoa deverá pagar: ",totalPorPessoa:5:2," R$")
fimalgoritmo

Exercicio 10 capitulo 2

Escreva um algoritmo que leia o nome de um piloto, uma distância percorrida em quilômetros e o
tempo que o piloto levou para percorrê-la (em minutos). O algoritmo deve calcular a velocidade em
km/h, e exibir a seguinte frase:
A velocidade média do foi
km/h
algoritmo "Exercicio 10 capitulo 2"
var
   nome:literal
   media,distancia:real
   tempo:inteiro
inicio
   escreval("Informe o nome do piloto:")
   leia(nome)
   
   escreval("Informe a distancia percorrida em km:")
   leia(distancia)
   
   escreval("Informe o tempo gasto em minutos:")
   leia(tempo)
   
   media<- distancia/(tempo/60)
   escreva("A velocide media do piloto",nome," foi de",media," km/h")
fimalgoritmo

Exercicio 9 capitulo 2

Um representante comercial realizará uma viagem de vários dias com um automóvel, e, após,
deseja saber a quilometragem média por litro de gasolina. Para isso, ele anotará a quilometragem
no velocímetro ao sair de viagem e, depois, a quilometragem na chegada, ele também vai somar
toda gasolina (em litros) usada para abastecer o carro durante a viagem. Escreva um algoritmo que,
a partir desses dados, informe a quilometragem média por litro de gasolina.
algoritmo "exercicio 2-9 Consumo do carro"
var
   gasInicio,gasFim, kmInicio, kmFim:inteiro
   consumo:real
inicio
   escreval("Calculador de consumo de um automóvel")
   
   escreval("Informe com quantos quilômetros seu víuculo estava antes do percurso")
   leia(kmInicio)
   
   escreval("Informe quantos litros de combustível seu veículo tinha antes do percurso")
   leia(gasInicio)
   
   escreval("Informe com quantos quilômetros seu veículo ficou depois do percurso")
   leia(kmFim)

   escreval("Informe com quantos litros de combústivel seu veiculo ficou depois do percurso")
   leia(gasFim)
   
   consumo<- ((kmInicio-kmFim)/(gasFim-gasInicio))
   escreva("O consumo do carro é de",consumo:5:2," quilômetros por litro")

fimalgoritmo

Exercicio 8 capitulo 2

No seguinte algoritmo existem erros de sintaxe? Em caso afirmativo, onde ?
altoritmo "Teste"  //troque altoritmo por algoritmo
var
marca: literal
idade: numérico    //variaveis e tipos nao devem conter acentos, tire-os
letra: literal
marca : numérico   //variaveis e tipos nao devem conter acentos, tire-os. Alem disso, a variavel marca ja existe
início             //separador de estrutura nao devem conter acentos, tire-os
leia(idade)
escreva(idade)
idade = 678        //Em algoritmo, nao se usa '=' para atribuicao de valor, use '<-'
leia("letra")      //O comando 'leia()' precisa saber o nome da variavel que ira receber o valor lido, tire as aspas e o sistema verificara que existe uma variavel chamada 'letra' e atribuira o valor a ela.
leia(ABC)          //Variavel 'ABC' nao existe
escreva (letra)
letra <- 4         //Variavel letra e do tipo literal, nao pode receber numeros
fimalgoritmo

Exercicio 7 capitulo 2

Escreva um algoritmo que calcule o valor de base expoente . O algoritmo deve ler o valor da base e do
expoente. Após, ele deve escrever o valor de base expoente .
algoritmo "Exercicio 7 capitulo 2"
var
   base,expoente,resultado:real
inicio
   escreval("Informe o valor da base:")
   leia(base)
   
   //O espaco que coloco entre as etapas é somente para organizar, nao interfere
   //no funcionamento
   escreval("Informe o valor do expoente:")
   leia(expoente)
   
   resultado<- base^expoente
   //Porque 'escreva' em vez de 'escreval'? Porque nao preciso pular linha mais,
   //é a ultima vez que escreverei na tela
   escreva("O resultado é:", resultado)
fimalgoritmo

Exercicio 6 capitulo 2

Assinale com um X os comandos de atribuição considerados inválidos:

Exercicio 5 capitulo 2

Assinale com um X os nomes de variáveis válidos:


Exercicio 4 capitulo 2

Classifique os valores das constantes abaixo, de acordo com seu tipo, assinalando com N os dados
numéricos e com L os literais:

Exercício 3 capitulo 2

Resolva a expressão aritmética abaixo montando todos os passos utilizados para a obtenção da
solução:
(20%7) + 7 – 3.0 + 7/2 + (19\5) + (20 + 4)/4*3
algoritmo "Exercicio 3 capitulo 2"
var
   total:real
inicio
   total <- (20%7) + 7 - 3.0 + 7/2 + (19\5) + (20 + 4)/4*3
   escreva("O valor da expressao e: ", total)
fimalgoritmo

Exercicio 2 capitulo 2

Escreva as expressões abaixo na forma convencional:
1. (12 + 1)/ (4*a/45)^0.5                         2. (a + x^(2 + w) -3*a)/2
3. 12*x/(36 – 9^y)                                   4. (17^0.5 + 4)/3




Exercício 1 capitulo 2







1) raizq(((2+x)*x+u)/(a+b+c))
2) x^2+(3*x^(x+1))/2+raizq(x+1)
3) h-((45/7*x)-4*h*(3+a))^3
4) (-b-(raizq((b^2-4)*a*c)))/(2*a)
5) -raizq((-6^x+2*y)/3^9)
6) raizq(6)+((x*y)/(2*x))+3^2-(x^2/3)

sexta-feira, 3 de setembro de 2010

Peso ideal (IMC = 25)

Faça um algoritmo que receba a altura de uma pessoa e informe seu peso ideal:

IMC = peso/altura²

algoritmo "IMC"
var
   altura,pesoIdeal:real
inicio
      escreval("Informe a sua altura:")
      leia(altura)
      
      //Perceba como nomeei essa variável. Vairaveis nao podem conter espaco
      //entre si, entao tive que juntar as duas palavras 'peso' e 'ideal'.
      //Nesse caso, para diferenciar a segunda palavra e facilitar a compreensao,
      //a segunda palavra comeca com maiuscula. Exemplo: variavelCompostaDeVariasPalavras.
      //Lembre-se: NADA de acentos em nome de variaveis.
      pesoIdeal<- (25*altura^2)
      escreva("O seu peso ideal é: ",pesoIdeal:5:2)
      
fimalgoritmo

Converter segundos em, horas, minutos e segundos

Esse blog foi criado a muito tempo atrás como forma de divulgar os trabalhos da faculdade aos colegas de classe. Hoje ele se encontra abandonado mas você pode visitar o meu site, onde encontrará bastante conteúdo relacionado à tecnologia e informática

www.gqferreira.com.br

Faça um algoritmo que leia o tempo de duração de um evento em uma fábrica expresso em segundos e mostre-o expresso em horas, minutos e segundos.
algoritmo "Segundos em hora,minutos e segundos Ex.6"
var
   segundos,minutos,horas:inteiro
inicio
      escreval("Informe o tempo em segundos:")
      leia(segundos)
      
      horas<- segundos div 3600
      minutos<- (segundos-(horas*3600)) div 60
      segundos<- segundos-(horas*3600)-(minutos*60)
      
      escreva(horas," horas,",minutos," minutos e",segundos," segundos")
fimalgoritmo

Média ponderada

Faça um algoritmo que leia as 3 notas de um aluno e calcule a média final deste aluno.
Considerar que a média é ponderada e que o peso das notas é: 2, 3 e 5, respectivamente.
algoritmo "Media ponderada Ex.5"
var
   nota1,nota2,nota3,media:real
inicio
      escreval("Informe a nota 1:")
      leia(nota1)
      
      escreval("Informe a nota 2:")
      leia(nota2)
      
      escreval("Informe a nota 3:")
      leia(nota3)
      
      media<- (((nota1*2)+(nota2*3)+(nota3*5))/10)
      escreva("A média é:",media:5:2)
fimalgoritmo

Idade em anos para, anos, meses e dias

Esse blog foi criado a muito tempo atrás como forma de divulgar os trabalhos da faculdade aos colegas de classe. Hoje ele se encontra abandonado mas você pode visitar o meu site, onde encontrará bastante conteúdo relacionado à tecnologia e informática

www.gqferreira.com.br

Faça um algoritmo que leia a idade de uma pessoa expressa em dias, e mostre-a expressa em anos, meses e dias:
algoritmo "Pegar idade em dias e converter em anos,meses e dias Ex.4"
var
   dias,meses,anos:inteiro
inicio
      escreval("Informe quantos dias vividos você tem:")
      leia(dias)
      
      anos<- dias div 360
      meses<- (dias-(anos*360)) div 30
      dias<- dias-(anos*360)-(meses*30)
      
      escreva("Você viveu",anos," ano(s) e",meses," mês(s) e",dias," dia(s)")

fimalgoritmo

Idade para dias

Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa apenas em dias:
algoritmo "Idade Ex.3"
var
   anos,meses,dias:inteiro
inicio
      escreval("Informe quantos anos você tem:")
      leia(anos)
      
      escreval("Informe quantos meses você tem:")
      leia(meses)
      
      escreval("Informe quantos dias você tem:")
      leia(dias)
      
      escreva("Você tem:",dias+(meses*30)+(anos*360)," dias vividos")
      
fimalgoritmo

Calcular expressao

Escreva um algoritmo que leia 3 números inteiros positivos (A, B, C) e calcule a seguinte expressão:
D = (R+S)/2
Onde:
R = (A+B)^2
S = (B+C)^2
algoritmo "Calculo de expressao Ex.2"
var
   a,b,c,r,s:real
inicio
      escreval("Informe o valor de 'a':")
      leia(a)
      
      escreval("Informe o valor de 'b':")
      leia(b)
      
      escreval("Informe o valor de 'c':")
      leia(c)
      
      r<- (a+b)^2
      s<- (b+c)^2
      escreva("O resultado é:",(r+s)/2)
fimalgoritmo

Distancia entre dois pontos

Construa um algoritmo que, tendo como dados de entrada dois pontos quaisquer do plano, P(x1, y1) e P(x2,y2), escreva a distância entre eles.
A fórmula que efetua tal cálculo é:
d=raizq(((x2-x1)^2) + ((y2-y1)^2))
algoritmo "Plano cartesiano Ex.1"
var
   x1,x2,y1,y2,resultado:real
inicio
      escreval(">>Primeiro ponto(X1,Y1)")
      
      escreval("Informe o valor do X1:")
      leia(x1)

      escreval("Informe o valor do Y1:")
      leia(y1)
      
      ////////////Segundo ponto
      escreval(">>Segundo ponto(X2,Y2)")
      
      escreval("Informe o valor do X2:")
      leia(x2)
      
      escreval("Informe o valor do Y2:")
      leia(y2)
      
      resultado<- raizq(((x2-x1)^2) + ((y2-y1)^2))
      ////Realizando e mostrando o cáculo
      escreva("O resultado é:",resultado:5:2)
fimalgoritmo

Ração para gatos

Você possui 2 gatos e acabou de comprar um pacote de ração (Kg). Você deve dividir as porções da ração levando em consideração o peso de cada gato. Sabendo que para cada 1Kg de gato, deverá ser servido 50g de ração diariamente.
Faça um algoritmo que solicite o peso de cada gato e o peso (kg) do pacote de ração.
O algoritmo deverá calcular as porções diárias e mostrar o quanto (em gramas) existe no pacote de ração após 5 dias:
algoritmo "Gato"
var
   gato1,gato2,racao,gramasDiariasGato1,gramasDiariasGato2,soma: real
inicio
      //Pedindo o peso do gato 1 em quilogramas
      escreval("Informe o peso do gato 1:")
      leia(gato1)
      
      //Pedindo o peso do gato 2 em quilogramas
      escreval("Informe o peso do gato 2:")
      leia(gato2)
      
      //Pedindo o peso do pacote de ração em quilogramas
      escreval("Informe o peso do pacote de ração:")
      leia(racao)
      
      //Cada um quilo de gato equivale a 50 gramas de racao. Exemplo: 2kg de gato X 50g de ração = 100g de ração.
      gramasDiariasGato1<- gato1*50
      gramasDiariasGato2<- gato2*50
      
      //Soma é a somatoria de todo o consumo de ração de dos dois gatos durante cinco dias.
      soma<- 5*(gramasDiariasGato1+gramasDiariasGato2)
      //Mostrando o que sobrou no pacote depois de calculado o consumo para cinco dias
      escreval("Ração após cinco dias:",(racao*1000)-soma," gramas")
      escreval("Consumo diário do gato 1:",gramasDiariasGato1," gramas")
      escreva("Consumo diário do gato 2:",gramasDiariasGato2," gramas")
fimalgoritmo

Área do triângulo equilátero

Calcular a área de um triângulo equilátero, onde todos os lados sao inguais.
algoritmo "Triangulo equilatero"
var
   base,altura,area:real
inicio
      escreval("Informe a base do triangulo:")
      leia(base)
      
      altura <- (base*(raizq(3)/2))
      area<- ((base*altura)/2)
      //5:2 é para formatar. Quero dizer que farei um arredondamento para no máximo 5 digitos, sendo 2 a parte decimal(depois da vírgula)
      escreva("A area é: ",area:5:2)
fimalgoritmo

Área do triângulo

Calcular a área do triângulo:
algoritmo "Cálculo da área do triângulo"
var
   base, altura:real
inicio
      escreval("Informe a base do triângulo:")
      leia(base)
      
      escreval("Informe a altura do triângulo:")
      leia(altura)
      
      escreva("A área é: ",(base*altura)/2)
fimalgoritmo

Média

Receber tres valores e calcular a média
algoritmo "Media"
var
   n1,n2,n3,media : real
inicio

      //lembre-se: escreval(): escreve e pula uma linha
      //           escreva():  escreve e nao pula linha, ou seja, a proxima vez que voce for escrever, vai sair na frente e nao embaixo
      escreval("Informe a nota 1:")
      leia(n1)
      
      escreval("Informe a nota 2:")
      leia(n2)
      
      escreval("Informe a nota 3:")
      leia(n3)
      
      media <- (n1+n2+n3)/3
      escreva ("A média é: ", media:5:2)
      
fimalgoritmo

segunda-feira, 16 de agosto de 2010

Fundamentos da computação

1. O que você entende por Computação?
Um meio de manipular informações de forma automatizada através do uso de sistemas programados para determinados fins e usar a rede de informações mundial, internet.

2. O que é um computador? Ilustre aplicações nas quais o uso do computador se torne necessário.
É uma máquina constituída por uma série de componentes eletrônicos, baseando-se na entrada e saída de dados.
Alguns exemplos onde o computador se torna necessário são:

- Armazenamento de grandes informações de uma empresa.
- Automatização no processos de produção de produtos industriais.
- Ter acesso à internet.

3. Descreva, em linhas gerais, os termos a seguir e dê um exemplo de objeto ou dispositivo associado a cada um deles:
- Processamento
- Entrada
- Saída
- Armazenamento

A - É a capacidade de manipular os dados e tomar decisões a partir situações matemáticas. Ex: Microprocessadores.
B - É o ato de enviar dados ao computador. Ex: Teclado
C - É a capacidade de mostrar o resultado do processamento. Ex: Monitor, impressora.
D - É a capacidade de armazenamento das informações processadas. Ex: Disco rígido, pendrive.

4. Qual foi a primeira máquina capaz de realizar cálculos?
Máquina de Pascal.

5. O que caracterizou “A loucura de Babbage”?
Idealizou uma máquina que a princípio não foi projetada por falta de investimento mas que um tempo depois revolucionou o mundo que foi o computador. A ideia de Babbage apresenta todos os itens principais de operação que um computador atual realiza.

6. O que representam Ada Byron King e Grace Murray Hopper na evolução da computação?
Ada, amiga de Babbage, foi a primeira programadora de computador do mundo.
Grace desenvolveu a primeira linguagem de sistema, conhecida como Flow-Matic-Hopper.

7. Como eram os primeiros computadores?
A primeira máquina a ser considerada eletrônica foi o ENIAC, construído na universidade da Pensilvânia, em 1946. O ENIAC era produzido com válvulas assim como todos de sua geração ocupando várias salas e pesando muito.

8. Quem criou o primeiro computador mecânico? Como ele era fabricado? Como ele funcionava?
Quem criou foi Charles Babbage. A máquina tinha capacidade de ler dados de entrada, armazenar esses dados, fazer cálculos, gerar dados de saída e automaticamente controlar a operação da máquina.
Não foi fabricado por falta de verba para investir no projeto.


9. Qual o grande feito do Inglês George Boole?
Em 1848, George Inventou a álgebra binária booleana, abrindo o caminho para o desenvolvimento de computadores quase 100 anos depois.

10. O que representou Alan Turing para a computação?
Em 1943 ele auxiliou a construção do Colossus I, um equipamento eletrônico utilizado para decifrar códigos militares do alemães.

11. O que caracterizava o Teste de Turing?
O objetivo do teste era determinar se um programa de computador é ou não inteligente.
O teste consiste em uma conversa entre dois humanos e um computador onde o computador deve parecer humano e confundir os demais participantes.

12. Quais as características do primeiro computador eletromecânico?
Ele possuia gigantescas dimensões, funcionava a base de válvulas a vácuo e armazenava dados através de cartão perfurado.

13. Quais eram as características básicas da arquitetura proposta por John von Neumann?
Unidade Lógica e Aritmética, Memória Principal, Unidade de Controle e Equipamentos de entrada e saída.
- O programa passa a ser armazenado na memória do computador juntamente com os dados.
- As tarefas de controle e de operações aritméticas são separadas.
- Cria a base da estrutura dos computadores modernos usados até hoje.

14. O que significava a seguinte expressão: “O computador processaria os dados de acordo com as necessidades do usuário”?
No projeto idealizado por John von Neumann, isso significava que as instruções para o computador não viriam pré-determinadas.

15. Por que foram criadas as linguagens de programação?
Para que programadores consigam expressar suas intenções mais facilmente do que quando comparado com a linguagem que um computador entende nativamente (Linguagem de baixo-nível "código de máquina").

16. O que foi o Memex?
Uma máquina capaz de armazenar grande quantidade de informações, de forma rápida, fácil e acessível.

17. O que marcou o início da "Era do Computador”?
A criação do ENIAC, em 1946.

18. Qual foi o primeiro computador comercializado?
O UNIVAC I.

19. Qual a diferença entre linguagem de alto nível e linguagem de máquina?
A de alto nível é entendida por seres humanos, já a linguagem de máquina é entendida apenas pelo computador, que consegue identificar estados físicos distintos, produzida pela eletricidade, polaridade magnética ou pela luz refletida.

20. O código ASCII foi criado em 1963,para que ele era utilizado?
Código de 7 bits que para PC se usa o ASCII extendido de 8 bits que permite descrever 256 caracteres diferentes.

21. Quais as antecessoras da Internet?
A antecessora da internet foi a ARPAnet, desenvolvida pela empresa ARPA na década de 60 no auge na guerra fria. Nessa época os Estados Unidos e a União Soviética exerciam enorme controle e influência no mundo. Os Estados Unidos temendo um ataque da URSS cria a primeira rede de computadores baseada em comutação de pacotes.

22. Quais as características do Apple II?
O Apple II vinha com um processador MOS Technology 6502 com apenas 1MHz de clock e 4 KB de memória RAM e uma interface de fita cassete. Possuia um controlador de video de 24 linhas e 40 colunas. Seu processador tinha apenas 8 bits de endereçamento de memória.

23. Em 1981 a IBM introduziu o PC no mercado, qual o software básico deste PC?
Era o sistema operacional IBM Cassette BASIC ou o PC-DOS 1.0

24. Em 1990 a Microsoft teve um lançamento de impacto,qual?
Foi o lançamento do Windows 3.0 que conseguiu conseguiu conquistar uma grande legião de usuários passando assim a estar presente na maioria dos PCs

25. O Que quer dizer WWW? E HTML?
World Wide Web que traduzindo significa rede de alcance mundial. O “WWW” usa o protocolo de comunicação HTTP. Com o WWW é possível você digitar o domínio do site que deseja visitar e o DNS da rede retorna o IP do servidor, então resumidamente se estabelece uma comunicação com este.
HTML é a linguagem de marcação usada pelos navegadores para renderizar a parte gráfica para o usuário. A linguagem se baseia em script.

26. O que é um sistema de Computação?
É um sistema organizado em etapas com finalidade de se realizar processos de acordo com a necessidade do usuario. No computador isso ocorre pela entrada de dados, processamento, e resposta para o usuário.

27. Quais os componentes de um sistema de computação?
Hardware – Parte física do sistema, seria os componentes eletrônicos.
Software – Parte lógica do sistema, seria os programas e instruções que o computador tem quer seguir para fornecer uma resultado útil.
Peopleware – Parte humana que solicita e usufrui dos resultados do sistema.

28. Como podem ser classificados os computadores quanto à característica de construção, quanto ao princípio de construção (natureza), quanto ao âmbito e quanto ao porte? Descreva as características de cada uma das categorias.
1° geração (anos 50): Surgem os primeiros computadores, em destaque ao ENIAC. Computadores dessa geração era a base de válvulas, aquecia muito, ocupava muito espaço e consumia muita energia elétrica elem de ter manutenção complicada.
2° geração (até o meio dos anos 60): Era dos transistores, uma enorme evolução para os computadores. Tinha uma enorme diferença de tamanho entre os computadores a válvula, aquecia muito menos em consequência de consumir muito menos energia. Surgia as primeiras linguagens de programação.
3° geração (entre as décadas de 60 e 70): Surge os sistemas integrados e o LSI (Chip). Redução significativa de tamanho e aumento de poder de processamento.
4° geração (entre as décadas de 70 e 90): Era dos microprocessadores que era composto de uma pastilha de silício contendo milhares de transistores. Época em que os computadores são "miniaturizados"a ponto de surgir os computadores pessoais (PC).
5° geração (Inicio dos anos 90 aos dias atuais): Abandona-se a ideia de geração. Está compreendido os computadores atuais, com alto nível de processamento, tamanho inúmeras vezes menores e portáteis.

29. Quais são, na sua opinião, as razões pelas quais a revolução dos computadores progrediu tanto em tempo tão curto?
Basicamente nos interesses militares, o computador sempre tinha uma evolução rápida em tempos de guerra. Além disso, os interesses financeiros em produzir algo que gerasse riqueza aos desenvolvedores.

30. Para onde você acha que caminha o futuro dos computadores? Quais os fatores que você levou em consideração para formar a sua opinião?
O computador tende a aperfeiçoar a técnica de inteligência artificial, acho que esse é o próximo passo da informática. Fazer “máquinas pensantes” é a ambição da humanidade. As empresas tem grande interesse nisso pelo fato de poder agilizar suas tomadas de decisão de forma mais inteligente sem precisar de um ser humano para operar a máquina, ela será inteligente o suficiente para tomar decisões importantes. O computado não se estenderá somente a um “monte de lata” em cima da mesa, a robótica também faz parte e é onde entra a questão da inteligencia artificial.

sexta-feira, 13 de agosto de 2010

Brincando com a lógica

Não quebre a cabeça, rache a cuca!

Desafio quem conseguir esse: http://rachacuca.com.br/jogos/ponte-escura/
Se alguém conseguir posta aqui, ainda não consegui mas vi que não é simples...

Mais um, esse é para as crianças, bem baba. Para que lado este ônibus está indo?
Uma dica: A bandeira brasileira não é só para enfeite.