8 de jul. de 2010

Peso ideal de um homem e de uma mulher

program calculaPesoIdealHomemMulher;
 
  var alturaHomem: real; {altura de um homem que se queira saber o peso ideal}
      alturaMulher: real; {altura de uma mulher que se queira saber o peso ideal}
  function calculaPesoIdealHomem(altura: real): real;
    begin
      calculaPesoIdealHomem := 22*(altura*altura);
    end;
  function calculaPesoIdealMulher(alt: real): real;
    begin
      calculaPesoIdealMulher := (20.8)*(alt*alt);
    end;


begin
    writeln('Digite a altura de um homem: ');
    readln(alturaHomem);
    writeln('O peso ideal é: ', calculaPesoIdealHomem(alturaHomem));
    writeln('Digite a altura de uma mulher: ');
    readln(alturaMulher);
    writeln('O peso ideal é: ', calculaPesoIdealHomem(alturaMulher));
end.

Peso ideal de um homem

program calculaPesoIdealHomemAmpliado;

  var alturaHomem: real; {altura do homem que se quer saber o peso ideal}
      pesoHomem: real; {peso do real homem}
      porcentagem: real; {porcentagem acima ou abaixo do peso ideal}
  function calculaPesoIdealHomem(altura: real): real; {função que retorna o valor do peso ideal de um homem}
   
    begin
      calculaPesoIdealHomem := 22*(altura*altura);
    end;

begin
    writeln('Digite a altura de um homem: ');
    readln(alturaHomem);
    writeln('O peso ideal é: ', calculaPesoIdealHomem(alturaHomem)); {retorna o valor do peso ideal de um homem}
    writeln('Digite o peso de um homem: ');
    readln(pesoHomem);
    porcentagem := (((pesoHomem*100)/calculaPesoIdealHomem(alturaHomem)) - 100);
    if porcentagem < 0 then
       writeln('O homem está abaixo do peso ideal e a porcentagem é: ', porcentagem);
    if porcentagem > 0 then
       writeln('O homem está acima do peso ideal e a porcentagem é: ', porcentagem);
    if porcentagem = 0 then
       writeln('O homem está no peso ideal: ', porcentagem);

end.

Area de um triangulo

program areatriangulo;
{Declarações}
Var
    area, altura, base: real;
begin
  write ('Digite a altura do triangulo: ');
  Readln(altura);
  write ('Digite a base do triangulo: ');
  Readln(base);
  area := (altura*base)/2;
  writeln ('A área do triângulo é igual a: ',area);
end.

Area da circunferência

program areacircunferencia;
    var A, r:real;
  begin
    writeln('forneça o valor do raio');
    readln(r);
    A:=(PI*r*r);
    writeln('o valor da area da circunferencia é:', A);
  end.

Achar o menor e maior número

program achamaioremenor;

   var

     numero:integer;

     maior:integer;

     menor:integer;

begin

  write('Forneca um valor');

  readln(numero);

  writeln(numero);

  maior:=numero;

  menor:=numero;

  while (numero>0) do

     begin

       if numero>maior then

          maior:=numero;

       if numero

          menor:=numero;

       write('Forneca outro valor ou 0 para parar:');

       readln(numero);

     end;

  writeln('O maior valor e:', maior);

  writeln('O menor valor e:', menor);

end.

Achar o maior número

program achamaior;

var
    numero:integer;
    maior:integer;

begin
     write('Forneca um valor');
     readln(numero);
     writeln(numero);
     maior:=0;
     while (numero>0) do
            begin
                  if numero>maior then
                        maior:=numero;
                        write('Forneca outro valor ou 0 para parar:');
                        readln(numero);
            end;

     writeln('O maior valor e:', maior);

end.

30 de abr. de 2010

Resumo do que foi aprendido até hoje

   Neste guia de estudos 1 aprendemos os primeiros comandos do pascaL. Comandos estes que determinavam o que o robô do pascaL deveria fazer. Aprendemos a fazer figuras como polígonos, desenhos e simples retas com a expessura diferenciada. No guia de estudos 1 o desafio mais difícil que achei foi o próprio desafio da temperatura, em que se convertiam temperaturas em farhenheit e kelvin em celsius. Já os mais fáceis foram os desafios de retas, quando começamos a trabalhar com os comandos. O que mais gostei foi o da temperatura mesmo, pois foi o que mais precisou de atenção e um pouco mais de trabalho, o que menos gostei foi o desafio 10 do faça você mesmo, no qual deveriamos fazer um cubo. A proposta é legal, mas como ainda não usávamos um comando de repetição que simplificasse o programa do cubo, não foi muito bom repetir os mesmos comandos o tempo todo.
   No Guia de Estudos 2 vimos que um programa de computador é formado por um conjunto de comandos em uma linguagem que o computador consegue ler, interpretar e executar. Mas antes de começar a fazer os programas de computador aprendemos a fazer o algoritmo do programa, que é a lógica da solução para um determinado problema. Depois do algoritmo, há a estrutura de dados associada, que é a organização dos dados na memória do computador para acomodar a solução, e ainda temos uma interface, descrição de como o usuário do programa irá interagir com o programa. Vimos que existem diferentes formas de resolver um problema com uma programação, assim como existem vários algoritmos para um mesmo problema. Não achei nenhum desafio deste guia de estudo mais difícil, mas o que achei um pouco mais complicado foi o desfio do leão, cabra e grama que deviam ir de um lado ao outro de um rio. O mais fácil foi o de fazer um algoritmo para trocar uma lâmpada, porque você simplesmente tem que pensar nos passos que você realizar para realizar esta troca. Gostei muito dos jogos open doors e shift, que são até um pouco viciantes! Não teve
nenhum que não gostei de fazer, todos foram bem bacanas.
   O guia de estudos 3, explorando o pascaL, ensinou o uso das variáveis e da estrutura de repetição FOR. Uma variável representa uma posição na memória do computador, possui um nome e um tipo além de poder ter o seu valor variado ao longo do tempo, durante a execução do programa. E a estrutura de repetição FOR é um programa que repete os comandos pelo tanto de vezes que você precisar, evitando assim que você digite os mesmos comandos no programa diversas vezes. Quando o comando se repete inúmeras vezes se torna inviável que você faça o programa sem a estrutura FOR. O desafio que mais gostei foi o da maquina do tempo, que pude testar varias idades diferentes e o que menos gostei foi do cálculo da área da circunferencia que deu uns probleminhas enquanto eu tentava compilar que demorei um pouco para resolver. Os mais fáceis foram os exercícios do passo a passo, pois a gente já tinha os algoritmos deles. O mais dificl na verdade foi o que me deu mais trabalho, o calculo de circunferencia.
   O guia de estudos 4, de estruturas de controle, para mim, foi o mais difícil e complicado. Ele apresenta os comandos mais elaborados e comandos novos que ainda não tínhamos aprendido. Nele vimos os comandos de controle sequencial, em que formam os comandos em sequencia. Os comandos de controle repetitivos, nos quais temos o grupo com as estruturas de for, while e repeat. O comando for implementa uma estrutura de controle repetitiva onde um conjunto de instruções é executado repetitivamente até que uma dada condição ocorra. O comando while é uma forma mais geral do FOR, uma vez que no FOR só aceita acréscimos de +1 e -1, enquanto no while os acréscimos podem ser de outros valores. O repeat faz a implementação do bloco de controle de repetição com a sentinela no final. Nos comandos de controle alternativo está o if-then-else, que é usado do seguinte modo. Dependendo de uma condição, um determinado conjunto de instruções é executado. Dependendo de outras condições, um conjunto alternativo de questões é executado. E gostei do desafio da sequencia que é um desafio bem curioso e cheio de detalhes, não gostei muito do desafio do troco, porque foi exatamente o mais fácil deles. Já o mais dificil foi o das estatisticas das idades que não consegui fazer o programa ainda.
   Eu gosto deste método de estudo porque faz você realmente pensar e pesquisar a respeito para conseguir fazer o desafio. O que eu tenho para sugerir é que não coloque tanta matéria nova em um mesmo guia de estudo como houve no quarto guia de estudo, pois confunde muito uma com a outra. Quanto ao video aprender a aprender eu gostei muito e consegui ver a relação com minha vida estudantil, pois assim como a personagem tenho que aprender as coisas mais fáceis e simples para poder aprender a fazer coisas mais difíceis. Além disso pude ver também que não se pode desistir tão facilmente, você pode não conseguir de primeira mas se você continuar a tentar você irá conseguir.