quarta-feira, 18 de fevereiro de 2009

Algoritmos

INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO

ALGORITMOS
Definimos Algoritmo como a seqüência de passos que visam atingir um objetivo bem definido.
Os algoritmos são utilizados no dia-a-dia para a solução dos mais diversos problemas.
Alguns exemplos genéricos de algoritmos usados no nosso cotidiano são: uma coreografia, um manual de instruções, uma receita de bolo, a solução de uma equação do 2º grau, uma pesquisa na lista telefônica, etc.
Assim, outra definição para algoritmos poderia ser:

Algoritmo é a descrição de um conjunto de ações que, obedecidas, resultam numa sucessão finita de passos, atingindo um objetivo esperado.
vSão propriedades de algoritmos:
• ações simples e bem definidas (não ambíguas);
• seqüência ordenada de ações;
• seqüência finita de passos.
Construindo um Algoritmo

RESOLUÇÃO DE PROBLEMAS ATRAVÉS DE COMPUTADORES

Os computadores podem ser usados de forma eficiente na solução de certos tipos de problemas. Os problemas que suportam tratamento por computador, em geral, envolvem grandes quantidades de dados ou são problemas de natureza complexa, exigindo a execução de um grande número de passos para alcançar a solução. Basicamente são problemas na área de processamento de dados e na área científica.
O Computador é uma ferramenta que permite a realização do processamento automático (ou eletrônico) de dados.

Dados de Entrada--------Dados de Saída-------Processamento(transformação)

Define-se por Processamento de Dados qualquer atividade que, utilizando informações (ou dados), efetua transformações para obter novas informações (ou dados) como resultado.
Porém, a tarefa desempenhada pelos computadores é apenas parte do processo de solução de problemas.
As etapas na solução de problemas são:
i) Entendimento do problema;
ii) Criação de uma seqüência de operações (ou ações) que, quando executadas, produzem a solução para o problema;

iii) Execução desta seqüência de operações.

iv) Verificação da adequação da solução.

As etapas de entendimento do problema, criação de seqüência de ações e verificação da adequação da solução são tarefas desempenhadas por pessoas. Já a execução das operações pode ser desempenhada por computadores.
Os computadores têm a capacidade de executar processos complicados e com grande quantidade de informações com rapidez e confiabilidade.
Os dados existem nas mais variadas formas, tanto no mundo real quanto nos computadores, mas para este curso usaremos três tipos, que serão suficientes embora não representem toda a gama possível. Estes tipos são:


Dados Numéricos - são quantidades como o peso de uma pessoa, o número de alunos em uma sala de aula, o preço de uma mercadoria, uma temperatura, etc. Nos algoritmos são representados como na escrita corrente, com a exceção de que se usa o ponto e não a vírgula para se separar a parte decimal, e não se separam as casas de milhares, milhões, etc.
Exemplos: 1.23 -3 45657 0.66 -897.06 etc.
Nos nossos exemplos daremos a todas as variáveis que armazenam valores numéricos o tipo numérico (assim mesmo, sem acento).


Dados Literais - são letras, nomes, sinais de pontuação, etc. Outros nomes comuns para este tipo de dados são caracteres e strings (por causa do inglês). Nos algoritmos são representados por letras, números, espaços e sinais entre aspas.
Exemplos: "Rio de Janeiro" "Computador" "A" "?" "Fora!" "1234"
Nos nossos exemplos daremos a todas as variáveis que armazenam valores literais o tipo caracter.


Dados Lógicos - podem assumir apenas dois valores: Falso ou Verdadeiro. Também são chamados de dados booleanos. Vamos estudar com mais profundidade este tipo à frente no curso. Ele é importante porque dá a "inteligência" ao computador, mas neste momento podemos ficar só com esta pequena explicação.
Nos nossos exemplos daremos a todas as variáveis que armazenam valores lógicos o tipo logico (assim mesmo, sem acento).
E como os dados estão representados nos algoritmos? De duas maneiras: como constantes, ou seja, o dado escrito como ele é, como nos exemplos acima, e armazenados em variáveis.

Variáveis são locais de armazenamento temporário para os dados. É um conceito parecido com os famosos x, y e z que usamos na Álgebra. Elas têm três características:

Nome: é como nos referimos às variáveis. Os nomes geralmente descrevem a função das variáveis no programa; por exemplo, se você tem um programa para calcular a média aritmética de dois valores, teria as variáveis PrimeiroValor, SegundoValor, e Media; já em um outro, poderia ter a variável Salario, para armazenar o salário de um funcionário, etc.

Regras para a formação de nomes de variáveis
Toda linguagem de programação tem regras para a formação de nomes de variáveis, e nós também teremos: neste curso, os nomes de variáveis deverão começar com uma letra, e depois poderão ter qualquer combinação de letras, números e sublinhado ("_"). Não pode haver espaços no interior dos nomes, e não haverá diferenciação entre maiúsculas e minúsculas (ou seja, os nomes "Salario", "SALARIO", e "salario" se referem à mesma variável. Exemplos: Nomes Válidos: Valor1, Valor2, Nota_do_Aluno, Salario Nomes Inválidos: 1Valor, 2Valor, _Salario, Nota.do.Aluno, Media-Aritmetica

Tipo: indica o tipo de dado que aquela variável armazena. Assim, uma variável pode ser do tipo numérico, literal ou lógico. Quando se define uma variável para uso no programa (os programadores dizem "declarar uma variável"), temos que indicar ao computador não só o seu nome, mas também o tipo de dados que ela vai armazenar.


Conteúdo: É o valor armazenado na variável em determinado momento. Podemos fazer duas coisas com o conteúdo de uma variável: examiná-lo, ou seja "ver o que ela contém, para usar ou não", e modificá-lo. Quando criamos uma variável em um programa, ela está "vazia", ou seja, seu conteúdo é indeterminado. Para que ela tenha utilidade, devemos dar-lhe valores que tenham a ver com o problema em questão (os programadores usam a expressão "atribuir valores a ela").

Um comentário:

  1. e aew Pró Jamille?

    conteudo muito bom viu?
    peguei muitas coisas aki...

    parabens

    bjOo

    Ass: Otto

    ResponderExcluir