Avançar para o conteúdo principal

Conceitos gerais e sintaxe

Como qualquel outra ciência, a lógica de programação, uma das áreas da ciência da computação possui alguns conceitos gerais que nos permitirão compreender melhor o desenvolvimento de algoritmos ou programas.

Nesta aula estudaremos os conceitos gerais e a sintaxe de construção de algoritmos.






LIÇÃO #2 - Conceitos Gerais e Sintaxe Algoritmica em pseúdo-códico

Como qualquel outra ciência, a lógica de programação, uma das áreas da ciência da computação possui alguns conceitos gerais que nos permitirão compreender melhor o desenvolvimento de algoritmos ou programas.

  1.  Programa
  2. Tipos de dados
  3. Variaveis e tipos de variaveis
  4. Sintaxe algoritmica em pseudo-codigo
  5. Declaração de variaveis
  6. Inicialização de variaveis
  7. Estrutura de um algoritmo
  8. Documentação


Programa

Um programa é o resultado do desenvolvimento, verificação e correcção de um algoritmo, que posteriormente é codificado para uma determinada linguagem de programação, compilado, carregado e executado por um computador. Ou seja um programa é na verdade a tradução de um ou mais algoritmos em linguagem de programação, compilada ou interpretado e executado por um computador.

Tipos de Dados

Os tipos de dados definem o dominio dos dados a serem utilizados num dado algoritmo. As linguagens de programação necessitam de tipos de dados para possibilita-las definir o tipo de tratamento a ser dado a cada dado recebido.

Os tipos de dados estão classificados em :

  • Simples: define os valores individuas de cada dado;
     Ex: Inteiro, Real, Lógico ou Caractére 
  • Estruturado: define uma colecção ou agregação de valores de tipos diferentes, ou seja um dado estruturado pode conter valores inteiros, reais, lógicos, caractéres e ou apontadores, ao mesmo tempo.
       EX: Dados do tipo Pessoa(nome, idade, sexo, altura, ...., *pais ); onde:
       nome, sexo: é do tipo caractére;
       idade: é do tipo inteiro;
       altura: é do tipo real;
       *pais: é do tipo apontador.
  • Apontador: Faz referência a um endereço de memória, ou seja, um apontador armazena um endereço de memória onde se encontra alocado o valor que se pretende aceder.
      EX: Um apontador funciona como uma placa de endereço na estrada, o facto de estar escrito na placa a palavra "CIDADE DE TALATONA", não quer dizer que estejas realmente nesta cidade, mas ela terá uma seta a indicar onde seguir para chegar a cidade de talatona. Logo a nossa placa seria no caso um apontador que aponta para a Cidade de talatona.

Variáveis e tipos de variáveis


Variáveis(identificadores): Em programação, uma variável é um objeto (uma posição, frequentemente localizada na memória) capaz de reter e representar um valor ou expressão. 
Enquanto as variáveis só "existem" em tempo de execução, elas são associadas a "nomes", chamados identificadores, durante o tempo de desenvolvimento.
Quando nos referimos à variável, do ponto de vista da programação, estamos tratando de uma “região de memória (do computador) previamente identificada cuja finalidade é armazenar os dados ou informações de um programa por um determinado espaço de tempo”.


tipos de variáveis: As variaveis podem ser:

  • Global: Uma variável é chamada global quando está visível em todo o algoritmo ou programa.


  • Local: Uma variável é local quando declarada dentro de um subalgoritmo(função ou procedimento), pois sua visibilidade limita-se unica e exclusivamente ao método(função ou procedimento) em que foi definido.
  • Constante: Independentemente de a variáver ser local ou global, é chamada constante quando em todo o algoritmo ou subalgoritmo o seu valor é imutavel( não muda, não sofre alteração, é estático ).

Sintaxe algoritmica em pseudo-codigo


Na linguística, a sintaxe é o ramo que estuda os processos generativos ou combinatórios das frases das línguas naturais, tendo em vista especificar a sua estrutura interna e funcionamento. O termo "sintaxe" também é usado para referir o estudo das regras que regem o comportamento de sistemas matemáticos, como a lógica, e as linguagens de programação de computadores.


A sintaxe algoritmica é nada mais, nada menos que a gramatica estrutural do pseúdo-código, ou seja define as regras para se criar um algoritmo, como são usados os comandos, os literais, definição do inicio e fim do algoritmo... A sintaxe algoritmica define a forma como usaremos as instruções para  o nosso algoritmo.


  • Sinal de atribuição: seta contraria( ← );
  • Inicio e fim de um bloco de instruções: chavetas ({ <instruções> });
  • Declaração de variaveis: (<tipo> <nome da variavel>;);
  • Comentários: slash duplo para comentários na mesma linha ( // ) ou /*...*/ para comentários em bloco


Declaração de variaveis

Consiste na alocação de espaço em memória a ser utilizado pelo tipo de dados da variável, o tamanho a ser ocupado na mémória vai depender do tipo do tamanho que o tipo de dados ocupa em memória.

Para declarar uma variável define-se a seguinte sintaxe:

<tipo> <nome da variavel>;

Se a mesma for uma constante define-se da seguinte forma:

const <tipo> <nome da variavel>;

EX:

  • int numero;
  • const int numero.

Inicialização de variaveis

Consiste na atribuição de um valor inicial a variável declarada, a mesma deve apenas receber valores do seu tipo de dados suportado.

EX:

  • int numero ⟵ 5;
  • char nome ⟵ 'Maria';
  • bool aceso ⟵ falso;
  • real pi ⟵ 3.1415;


Estrutura de um algoritmo

Asintaxe abaixo representa a sintaxe básica a ser usada para a criação de algoritmos.

algoritmo < nome>; // definição do nome do algoritmo
{                      
   < Declaração dos identificadores globais >; //declarações
   
   < Corpo do algoritmo>; //instruções que compõem o nosso algoritmo          
 }   

Ex:

algoritmo elemmax1; 
{     
    int maior, dado;
    const int sentinela = 0;  
    maior ← 0;     

    leia(dado);
    enquanto (dado <> sentinela)
         faça {
               se  maior < dado  então  maior ← dado
               leia(dado);
         }
         imprime(‘maior valor sequência = ’,maior); 



Documentação


Muitos programadores pensam que uma boa documentação consiste em colocar muitos comentários no código do programa. Este princípio está totalmente errado. Uma boa documentação, limita-se a explicar o que cada função do programa faz, não perde tempo a explicar como uma função faz o que faz, porque o leitor interessado nesse assunto, é capaz de ler o código do programa. Uma documentação é um mini-manual que dá instruções precisas e completas de sua utilização. A primeira parte desse minimanual deve dizer o que o algoritmo recebe e o que devolve. 
   
 Uma documentação correcta é uma atitude de honestidade intelectual, pois coloca nas mãos do leitor a real possibilidade de encontrar erros que o autor tenha, porventura cometido ao escrever o programa. Para aprofundar este tema leia: Software documentation no Wikipédia.  
 Entendemos por comentário todas as palavras que estão entre os simbolos /*   e */ . Vejamos o exemplo:  


bool função  crescente(a); 
/*------------------------------------------------------------- 
Recebe:  Vector com n elementos 
Objectivo: Verificar se os elementos do vector estão na ordem crescente 
Devolve : Verdadeiro ou Falso 
Data        : dd-mm-aaaa 
Autor      : Manuel Meneses 
 -------------------------------------------------------------*/ 

parm int a[1..n];     
{
     int  i;
    para i de 1 até n-1  faça se a[i] > a[i+1]  então retorna falso;
    retorna verdadeiro;  
}  



NOTA: Esta aula baseada no capitulo 1, do manual de Introdução a análise de algoritmos do professor Eng. Manuel Meneses, escrito em 2010.

Seguiremos a sintaxe definida neste manual por se aproximar muito da sintaxe da linguagem C e Portugol.


Bom Proveito...

Veja a aula completa aqui... 

Comentários

Mensagens populares deste blogue

Introdução a lógica de Programação

A lógica de Programação é o primeiro passo para todo e qualquer individuo que pretende aprender a programar, nesta pagina encontraremos lições de lógica de programação que ajudarão-nos a marcar os primeiros passos em programação. Introdução a lógica de Programação. A lógica de Programação é o primeiro passo para todo e qualquer individuo que pretende aprender a programar, nesta pagina encontraremos lições de lógica de programação que ajudarão-nos a marcar os primeiros passos em programação. LIÇÃO #I A lógica de programação não é uma linguagem de programação, não depende de uma linguagem de programação. A lógica de programação é um conceito de estruturação de passos finitos que tem por objectivo a resolução parcial ou completa de um problema, tendo como base a construção de algoritimos capazes de dar respostas satisfatórias na resolução de problemas. Algoritmo É uma sequência finita de instruções bem definidas e não ambiguas, com o prop...