Algoritmo Estruturado
Universidade Federal de SergipeDepartamento de ComputaçãoIntrodução a Ciência da Computação
Última Atualização em Outubro de 2011
Felipe J. R. Vieira
2103201 - Introdução a Ciência da Computação
Sumário
➢ Conceitos;
➢ Programação Estruturada;
➢ Constantes;
➢ Variáveis; e
➢ Comentários.
3
Atividade da Última Aula
103201 - Introdução a Ciência da Computação
4
Conceitos
➢ É uma descrição detalhada e não ambígua, de ações que devem ser realizadas para a solução de um problema; ou
➢ É uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.
103201 - Introdução a Ciência da Computação
5
Conceitos
➢ Frequentemente existe mais que um algoritmo para resolver o mesmo problema.
103201 - Introdução a Ciência da Computação
6
Propriedades
➢ Um algoritmo deve ter um único ponto de “início” e sua execução se faz de passo a passo, até atingir o ponto de “parada” (fim);
➢ Cada passo do algoritmo deve ser simples e objetivo, para que ele possa ser corretamente executado por uma máquina;
➢ Para garantir que um algoritmo termina, cada passo deve ser executado em um espaço de tempo finito;
103201 - Introdução a Ciência da Computação
7
Propriedades
➢ Já que partes da descrição do algoritmo vão ser “lidas” e executadas mais de uma vez, um algoritmo contém no mínimo um ciclo. Como a execução do algoritmo deve terminar em um tempo finito, deve haver uma maneira para encerrar cada ciclo;
➢ Todo algoritmo deve conter no mínimo uma variável com um domínio de valores. Se um algoritmo não tem variáveis, só será necessário executá-lo uma única vez.
103201 - Introdução a Ciência da Computação
8
Solução de Problema Genérico – Passo 1
➢ Entender completamente a descrição do problema;
103201 - Introdução a Ciência da Computação
9
Solução de Problema Genérico – Passo 2
➢ Fazer um esboço geral do algoritmo para a solução do problema dado, sem se preocupar com detalhes específicos. Assegurar que a estratégia esteja correta, rastreando o algoritmo esboçado com amostra de dados. Se não estiver correta, revisá-la;
103201 - Introdução a Ciência da Computação
10
Solução de Problema Genérico – Passo 3
➢ Identificar e declarar qualquer variável que seja necessária. Por identificação escreva o nome da variável, seu tipo e uma descrição de seu propósito. Esta lista de variáveis pode ser aumentada ou diminuída segundo a necessidade;
103201 - Introdução a Ciência da Computação
11
Solução de Problema Genérico – Passo 4
➢ Refinar os passos individuais do algoritmo esboçado. O nível de detalhamento deve ser aquele onde as instruções descritas nos passos do algoritmo tenham mapeamento quase imediato para a linguagem de programação;
103201 - Introdução a Ciência da Computação
12
Solução de Problema Genérico – Passo 5
➢ Sentindo que o algoritmo está detalhado adequadamente, proceda seu rastreamento a fim de comprovar sua obediência à especificação; e
103201 - Introdução a Ciência da Computação
13
Solução de Problema Genérico – Passo 6
➢ Implementação do algoritmo numa linguagem de programação particular.
103201 - Introdução a Ciência da Computação
14
Programação Estruturada
➢ Devido a evolução das máquinas, os sistemas desenvolvidos podem ser maiores e de maior complexidade.
➢ Porém, os algoritmos são ainda desenvolvidos pelo ser humano, mas podem ultrapassar os limites de sua compreensão.
➢ Por esta razão, surgiram técnicas que permitem sistematizar e ajudar o desenvolvimento de algoritmos para a resolução de grandes e complexos problemas nos computadores.
103201 - Introdução a Ciência da Computação
15
Motivação
➢ Facilitar a escrita dos programas;
➢ Facilitar a leitura dos programas;
➢ Permitir a verificação a priori dos programas;
➢ Facilitar a manutenção e modificação dos programas; e
➢ Permitir que o seu desenvolvimento possa ser empreendido simultaneamente por uma equipe de pessoas.
103201 - Introdução a Ciência da Computação
16
Consequências das Técnicas
➢ Desenvolvimento do programa em diferentes fases por refinamento sucessivo;
➢ Decomposição do programa total em módulos funcionais, organizados num sistema hierárquico;
➢ Dentro de cada módulo um número muito limitado de estruturas básicas de fluxo de controle.
103201 - Introdução a Ciência da Computação
17
Constantes
➢ Caracterizam-se por não se modificarem durante a execução do programa. Podem ser classificadas em numérica, literal e lógica.
103201 - Introdução a Ciência da Computação
18
Constantes - Numéricas
➢ É definida a partir do sistema decimal, podendo ser um número inteiro ou fracionário.
➢ As constantes numéricas podem participar de operações aritméticas.
➢ Exemplos: 25, 3.14, 8.5 x 10², -2.6
103201 - Introdução a Ciência da Computação
19
Constantes - Literal
➢ É definida a partir de uma sequência qualquer de caracteres (letras, dígitos ou símbolos especiais) com algum significado para o problema em estudo.
➢ Sempre será colocada entre aspas para não seja confundida com outro item.
➢ Não podem participar de operações aritméticas.
➢ Exemplos: “José da Silva”, “123456”, “teste...”
103201 - Introdução a Ciência da Computação
20
Constantes - Lógica
➢ É um valor lógico que só pode ser verdadeiro ou falso e são representadas pelas palavras: verdadeiro e falso.
103201 - Introdução a Ciência da Computação
21
Variáveis
➢ Grande parte dos computadores adotam o modelo da Máquina de Von Neumann, matemático que introduziu o conceito de “programa armazenado”, onde variáveis são usadas para representar células de memória e atribuições são usadas para simular armazenamento.
103201 - Introdução a Ciência da Computação
22
Variáveis
➢ Uma variável é uma entidade que possui um valor, sendo conhecida no programa por um identificador. As variáveis são valoradas com dados do mesmo tipo.
➢ Ela corresponde a uma posição de memória (RAM). Seu conteúdo pode variar ao longo do tempo durante a execução de um programa.
103201 - Introdução a Ciência da Computação
23
Variáveis
➢ A variável é identificada por um nome ou identificador.
➢ Exemplo: Para calcular as raízes de uma equação do 2º grau (ax² + bx + c = 0), os identificadores a, b e c podem representar as posições de memória que armazenam os coeficientes da equação.
103201 - Introdução a Ciência da Computação
24
Variáveis
103201 - Introdução a Ciência da Computação
A B C
RAM
25
Variáveis – Regra para nomes
➢ Pode ser formado por um ou mais caracteres;
➢ Obrigatoriamente, o primeiro caractere tem que ser uma letra; e
➢ É permitido o uso de letras e dígitos e não o de símbolos especiais.
103201 - Introdução a Ciência da Computação
26
Variáveis – Regra para nomes
103201 - Introdução a Ciência da Computação
Nomes Válidos Nomes Não Válidos
AAA 6NOME
X RUA-ALUNO
NOTAALUNO CEP ALUNO
NOMEPECA SEXO%EMPREG
27
Variáveis – Declaração
➢ Só armazena valores de um mesmo tipo. Logo, são classificadas em numéricas, literais ou lógicas;
➢ A declaração é utilizada para indicar o tipo da variável. Além disso, no momento da declaração é associado um nome a variável (posição de memória); e
➢ Qualquer referência que se faça a variável implica na referência ao seu conteúdo do local da memória que a representa.
103201 - Introdução a Ciência da Computação
28
Variáveis - Sintaxe
➢ declare listadevariaveis tipo
103201 - Introdução a Ciência da Computação
29
Variáveis – Sintaxe
➢ declare: palavra-chave do algoritmo;
➢ listadevariaveis : nomes escolhidos para as variáveis, usar vírgulas; e
➢ tipo: palavra-chave que indica o tipo das variáveis .
103201 - Introdução a Ciência da Computação
30
Variáveis – Sintaxe
➢ Exemplos:• declare NOTA, CODIGO, X5 numerico• declare TESTE, SIM logico➢ declare NOME, ENDERECO literal
103201 - Introdução a Ciência da Computação
31
Comentários
➢ A clareza é uma das principais características de um algoritmo e o comentário é um dos instrumentos para cumprir esta finalidade. O comentário pode ser um texto ou uma frase, deve vir delimitado por chaves e podem ser colocados em qualquer parte do algoritmo.
➢ Exemplo: Mat, {Número da Matrícula}, Nota, {Nota do aluno} Cod {Código do Curso}
103201 - Introdução a Ciência da Computação
32
Referências
➢ Material Base: Programação I – Lógica de Programação (Material do Curso Técnico de Desenvolvimento de Sistemas do IFS).
103201 - Introdução a Ciência da Computação
http://qacademico.cefetse.edu.br/Uploads/MATERIAIS_AULAS/435-PI_Programa%C3%A7%C3%A3o_I_Prof._Sozzi.pdf