2025/2026
Sistemas de Informação
UFCD 9950 – Conceitos fundamentais de programação
11.º Uu
Curso Profissional de Técnico/a de Multimédia
Professora: Paula Almeida
Conteúdos
- Alguns conceitos
- Linguagens estruturadas, sintaxe e semântica
- Estruturas lógicas e controlo
- Tipos de dados
- Entrada e saída de dados
- Construção de algoritmos
- Noções de lógica (interpretação da linguagem comum, transposição para algoritmo em pseudocódigo)
- Identificação de tipos básicos de algoritmos
- Seleção de algoritmo por situação
- Programação por objetivos
- Noção de gerações de linguagens de programação
- Noção, conceito e uso de objetos em programação
- Fluxogramas
- Noção de fluxograma
- Transposição de algoritmos para fluxogramas
- Desenvolvimento de fluxograma
1. Alguns Conceitos
1.1. Linguagem
“A linguagem deriva do francês antigo langage e é um sistema estruturado de comunicação que consiste em gramática e vocabulário. “
https://pt.wikipedia.org/wiki/Linguagem
Assim, pode-se definir linguagem como um sistema de comunicação que combina símbolos e regras para expressar ideias e transmitir informações.
1.1. Linguagem
As linguagens podem ser classificadas em:
- Linguagem natural – usada na comunicação humana, como o português ou o inglês.
- Linguagem formal – baseada em símbolos e regras rigorosas, utilizada em áreas como a matemática, a lógica e a programação.
- Linguagem gestual ou visual – comunicação por sinais, gestos ou símbolos gráficos, como a língua gestual ou sinais de trânsito.
1.2. Linguagem de programação
Uma linguagem de programação é um sistema formal composto por regras, símbolos e instruções que permitem escrever programas de computador.
Serve para comunicar com a máquina, descrevendo de forma precisa as operações que devem ser executadas para resolver problemas ou realizar tarefas.
1.3. Programa
Conjunto de instruções numa linguagem de programação.
1.4. Instrução
Especificação ao processador da ação a executar.
1.5. Classificação das linguagens de programação
As linguagens de programação podem ser classificadas em relação a cinco critérios:
Baixo e alto nível.
1.ª, 2.ª, 3.ª, 4.ª, 5.º e 6.ª geração.
Imperativo, Funcional, Lógica, Orientada a objetos, …
- Em relação ao método de implementação:
Compilada, Interpretada e Híbrida.
Forte, fraca e dinâmica.
1.6. Níveis de linguagens de programação:
Baixo nível – quando a sua linguagem se aproxima da linguagem máquina.
Alto nível – quando a sua linguagem se aproxima da linguagem humana. Necessitam de um interpretador para converter em linguagem máquina, de forma que o computador compreenda as instruções.
1.6. Níveis de linguagens de programação – Baixo Nível
Vantagens:
- Os programas são executados com maior velocidade de processamento;
- Os programas ocupam menos espaço na memória.
Desvantagens:
- Em geral, os programas em Assembly têm pouca portabilidade, isto é, um código gerado para um tipo de processador não serve para outro;
- Códigos não estruturados, tornando a programação mais difícil.
Exemplo de um programa em Assembly:
Figura 1 – Exemplo de um programa em Assembly
1.6. Níveis de linguagens de programação – Alto Nível
- Linguagens voltadas para o ser humano.
- Em geral, utilizam uma sintaxe estruturada, tornando o código mais fácil de entender.
- São linguagens independentes de arquitetura (um programa escrito em uma linguagem de alto nível, pode ser migrado de uma máquina para outra, sem qualquer tipo de problema.
- Permite que o programador se esqueça completamente do funcionamento interno da máquina (é necessário um tradutor que entenda o código fonte as caraterísticas da máquina).
1.6. Níveis de linguagens de programação – Alto Nível
Vantagens:
- Por ser compiladas ou interpretadas, têm uma maior portabilidade, podendo ser executadas em várias plataformas com poucas modificações;
- Em geral, a programação é mais fácil.
Desvantagens:
- As rotinas geradas (em linguagem de máquina) são genéricas, por isso, mais complexas, o que ocasiona serem mais lentas e ocuparem mais memórias.
Ilustração de um programa em linguagem de alto nível
Figura 2 – Exemplo de um programa em Python
1.7. Gerações das Linguagens de Programação
As linguagens de programação evoluíram em diferentes gerações, cada uma aumentando o nível de abstração em relação ao hardware e facilitando o desenvolvimento de software.
Figura 3 – Figura com as gerações das linguagens de programação
1.7. Gerações das Linguagens de Programação
Figura 4 – Vídeo alusivo às gerações das linguagens de programação
1.7. Gerações das Linguagens de Programação
- Primeira geração (1GL) – Linguagem de Máquina
- Composta apenas por códigos binários (0 e 1) diretamente compreendidos pelo processador.
- Extremamente rápida, mas difícil de escrever e manter.
- Exemplo: códigos binários puros, como 10110000.
- Segunda geração (2GL) – Assembly
- Usa mnemónicos (ex.: MOV, ADD) para representar instruções de máquina.
- Mais legível que o binário, mas ainda dependente do hardware.
- Exige um assembler para converter o código em linguagem de máquina.
1.7. Gerações das Linguagens de Programação
- Terceira geração (3GL) – Alto Nível
- Mais próxima da linguagem humana, independente do hardware.
- Facilita a leitura, escrita e manutenção.
- Exemplos: C, Pascal, Java, Python, C++.
- Quarta geração (4GL) – Alta Produtividade
- Focada em resolver problemas específicos com menos linhas de código.
- Muito usada em bases de dados, relatórios e aplicações empresariais.
- Exemplos: SQL, MATLAB, Oracle Forms.
1.7. Gerações das Linguagens de Programação
- Quinta geração (5GL) – Baseada em Restrições e IA
- Destina-se a inteligência artificial, sistemas especialistas e lógica declarativa.
- O programador define o problema e as condições; o sistema encontra a solução.
- Exemplos: Prolog, Mercury, linguagens de desenvolvimento em IA.
1.8. Paradigmas de Programação
Figura 5 – Vídeo alusivo às paradigmas de programação
1.8. Paradigmas das Linguagens de Programação
- Os paradigmas de programação são estilos ou modelos que definem a forma de pensar e estruturar a solução de problemas num programa.
- Eles influenciam a organização do código, o modo como os dados são tratados e como as instruções são executadas.
- Uma linguagem de programação pode seguir um ou vários paradigmas.
Príncipais Paradigmas
- Imperativo ou Procedimentos
- Baseia-se na execução de instruções passo a passo, que alteram o estado do programa. - Usa estruturas de sequência, decisão e repetição. - Exemplos: C, Pascal, Fortran.
- Orientado a Objetos (OOP)
- Organiza o programa em objetos que combinam dados (atributos) e comportamentos (métodos). - Facilita a reutilização de código, encapsulamento e herança. - Exemplos: Java, Python, C++, C#.
Príncipais Paradigmas
- Baseia-se em funções matemáticas puras, sem alterar o estado (sem variáveis mutáveis). - Foca-se em composição de funções e imutabilidade. - Exemplos: Haskell, Lisp, Scala, F#.
- Descreve o que o programa deve fazer, e não como fazê-lo. - Muito usado em inteligência artificial e bases de conhecimento. - Exemplos: Prolog, Mercury.
Príncipais Paradigmas
- Centrado na execução simultânea de tarefas ou processos. - Presente em linguagens como Go, Erlang, Rust e também em bibliotecas de Python ou Java.
2. Linguagens estruturadas, sintaxe e semântica
A programação é fundamental para o desenvolvimento tecnológico, possibilitando a criação de aplicações simples ou sistemas complexos em áreas como ciência, indústria e entretenimento. Por meio de linguagens de programação, ideias transformam-se em instruções lógicas que os computadores executam para automatizar processos e resolver problemas.
2.1. LINGUAGENS ESTRUTURADAS
As linguagens estruturadas organizam o código em blocos definidos, tornando-o mais claro, legível e fácil de manter. Seguem o paradigma da programação estruturada, baseado em sequência, decisão e repetição para controlar o fluxo do programa.
2.1. LINGUAGENS ESTRUTURADAS
As principais vantagens incluem legibilidade, menor propensão a erros, reutilização de código e maior eficiência no desenvolvimento. Este modelo evita saltos desordenados, como o uso de goto, e é suportado por linguagens como C, Pascal, Java e Python, utilizadas em aplicações que vão de programas simples a sistemas complexos.
2.2. SINTAXE
A sintaxe é o conjunto de regras que define a forma correta de escrever instruções, garantindo que o compilador ou interpretador compreenda e execute o código. Tal como a gramática de uma língua, estabelece como declarar variáveis, usar operadores e estruturar comandos. Cada linguagem tem normas próprias — por exemplo, em C e Java cada instrução termina com ;, enquanto em Python a indentação define blocos. Respeitar a sintaxe é essencial para criar programas claros, consistentes e sem erros de execução.
Exemplo de sintaxe em Python
Neste exemplo:
• numero é lido como float para aceitar decimais.
• A estrutura if / elif / else avalia:
o numero > 0: imprime que é positivo.
o numero < 0: imprime que é negativo.
o Caso contrário (else): imprime que é zero.
• if __name__ == "__main__": garante que a função main() só é executada quando o ficheiro é corrido diretamente.
Figura 6 – Exemplo de sintaxe em Python
2.3. SEMÂNTICA
A semântica refere-se ao significado das instruções de um programa, ou seja, ao comportamento real do código durante a execução. Mesmo que o código esteja sintaticamente correto, um erro semântico pode fazer com que produza resultados incorretos ou não funcione como pretendido.
3. Estruturas Lógicas e Controlo
3.1. Estruturas Lógicas
As estruturas lógicas e de controlo determinam o fluxo de execução de um programa, isto é, a ordem em que as instruções são processadas. As três principais são:
- Sequência: instruções executadas uma após a outra, na ordem em que aparecem.
- Decisão (condicionais): escolha de caminhos diferentes consoante uma condição, usando estruturas como if, else ou switch.
- Repetição (ciclos ou loops): execução de um conjunto de instruções enquanto uma condição se mantiver verdadeira, com comandos como for, while ou do-while.
3.2. CONTROLO
O controlo diz respeito à forma como as estruturas lógicas orientam o fluxo do programa, permitindo que diferentes instruções sejam executadas conforme as condições estabelecidas. É através do controlo que o código pode tomar decisões, repetir ações ou seguir caminhos distintos de acordo com os dados ou situações encontradas.
4. TIPOS DE DADOS
Em Python, os tipos de dados representam as diferentes naturezas de valores que podem ser armazenados e manipulados pelo programa.
4. TIPOS DE DADOS
Entre os mais comuns estão:
• int – números inteiros, positivos ou negativos, sem parte decimal.
Ex.: idade = 25
• float – números com parte decimal.
Ex.: preco = 19.99
• str – cadeias de caracteres (texto).
Ex.: nome = "Maria"
• bool – valores lógicos True ou False, usados em condições e decisões.
Ex.: ativo = True
• list – coleções mutáveis de elementos ordenados.
Ex.: notas = [14, 15, 18]
4. TIPOS DE DADOS
• tuple – coleções ordenadas e imutáveis. Ex.: coordenadas = (10, 20)
• dict – pares chave-valor para representar dados associados.
Ex.: aluno = {"nome": "Ana", "idade": 20}
• set – conjuntos de elementos únicos e não ordenados.
Ex.: cores = {"vermelho", "azul", "verde"}
Python faz inferência de tipo, ou seja, não é necessário declarar o tipo antes de atribuir um valor. O tipo pode ser verificado com a função type() e convertido com funções como int(), float(), str().
Exemplo – Tipos de dados em Python
Neste exemplo:
- Cria variáveis de diferentes tipos (int, float, str, bool, list, tuple, dict, set).
- Usa a função type() para mostrar o tipo de cada variável.
- Demonstra a inferência de tipo do Python, que reconhece automaticamente o tipo com base no valor atribuído.
Figura 7 – Exemplo de tipos de dados em Python
5. ENTRADA E SAÍDA DE DADOS
5.1. ENTRADA DE DADOS
A entrada de dados permite que o programa receba informações do utilizador ou de outra fonte.
Em Python, essa leitura é feita principalmente com a função input(), que retorna sempre uma string.
Quando é necessário outro tipo de dado, como números inteiros ou decimais, é comum converter o valor usando funções como int() ou float().
Exemplo – Entrada de dados
Neste exemplo:
• input() lê dados do utilizador como texto.
• int() e float() convertem a entrada para números inteiros ou decimais.
• print() exibe o resultado no ecrã.
Figura 8 – Exemplo de entrada de dados
5.2. SAÍDA DE DADOS
A saída de dados é o processo de apresentar informações ao utilizador ou de gravá-las em ficheiros.
Em Python, a exibição no ecrã é normalmente feita com a função print(), que permite mostrar texto, números e resultados de cálculos. Para guardar dados, podem ser usadas funções de escrita em ficheiros, como write().
Exemplo – Saída de dados
Neste exemplo:
• Usa print() para mostrar texto e variáveis no ecrã.
• Usa open() com o modo "w" (escrita) e write() para gravar as mesmas informações num ficheiro chamado dados.txt.
• O bloco with garante que o ficheiro é fechado automaticamente após a escrita.
Figura 9 – Exemplo de saída de dados
6. CONSTRUÇÃO DE ALGORITMOS
Um algoritmo é um conjunto ordenado de passos que descrevem como resolver um problema ou realizar uma tarefa específica. Na programação, a criação de algoritmos é fundamental, pois o programa é a tradução desses passos para uma linguagem de programação. Um bom algoritmo deve ser simples, lógico e eficiente, facilitando a compreensão, a implementação e a manutenção do código.
6. CONSTRUÇÃO DE ALGORITMOS
Os passos básicos para construir um algoritmo são:
- Definir o problema – compreender claramente o que deve ser resolvido e quais são as entradas e saídas esperadas.
- Analisar os dados – identificar as informações necessárias, variáveis envolvidas e possíveis restrições.
- Planear a solução – organizar as etapas lógicas em ordem, escolhendo estruturas de sequência, decisão e repetição adequadas.
- Escrever o pseudocódigo ou fluxograma – representar o algoritmo de forma clara e estruturada, facilitando a leitura e verificação.
- Testar e validar – verificar se o algoritmo produz os resultados corretos para diferentes casos, incluindo situações limite.
- Otimizar – melhorar a eficiência, simplificando passos e reduzindo tempo de execução quando possível.
Passos básicos para construir um algoritmo
Figura 10 – Passos básicos para construir um algoritmo
7. NOÇÕES DE LÓGICA
A lógica é a base de qualquer programa de computador. Permite ao programador definir o fluxo do programa, realizar verificações e tomar decisões com base em condições específicas.
Para construir um algoritmo lógico, é importante:
- Interpretar a linguagem comum – converter a descrição do problema numa sequência de ações lógicas.
- Transpor para pseudocódigo – escrever o algoritmo de forma estruturada e próxima do código, mas sem depender de uma linguagem de programação específica.
Exemplo completo e simples, mostrando nas três etapas: linguagem comum, pseudocódigo e fluxograma:
Problema: Ler dois números, somá-los e mostrar o resultado.Linguagem comum: “Pedir ao utilizador dois números, somar esses números e apresentar a soma no ecrã.”
Pseudocódigo:
Início
Ler número1
Ler número2
soma ← número1 + número2
Escrever "A soma é:", soma
Fim
Exemplo completo e simples, mostrando nas três etapas: linguagem comum, pseudocódigo e fluxograma:
Fluxograma:
Figura 11 – Fluxograma do Exemplo
Símbolos utilizados no desenho de fluxogramas
Figura 12 – Símbolos utilizados no desenho de fluxogramas(Quadro retirado do Manual Aplicações Informáticas B)
Ferramentas auxiliares na criação de fluxograma
- Flowgorithm
- Lucidchart
- Miro
Flowgorithm
- Ferramenta que permite aos utilizadores escreverem e executar programas usando fluxogramas.
http://www.flowgorithm.org/download/index.html
Criação do algoritmo “Olá, Mundo!”
Problema: Escrever no ecrã "Olá, Mundo!" Linguagem natural Início Escrever “Olá, Mundo!” Fim
Criação do algoritmo “Olá, Mundo!”
Fluxograma
Criação do algoritmo “Olá, Mundo!”
Pseudocódigo
Criação do algoritmo “Olá, Mundo!”
Linguagem de programação Pyton
Visualg
- É um programa que edita, interpreta e executa algoritmos em português.
- Possui recursos como simulação do ecrã do computador, visualização de variáveis, “breakpoints”
- Existem duas versões: 2.5 e a 3.* A versão 2.5 é standalone, não é necessário instalar no PC.
Visualg 2.5 – Ambiente de trabalho
Algoritmo “Olá Mundo!”
Referências
Fonseca, D., Pacheco, D., Marques, F., & Soares, R. (2019). Aplicações Informáticas B - 12.º ano. Porto Editora.
Sebesta, R. (2011). Conceitos de Linguagens de Programação (Vol. 9ª Edição). Bookman Companhia Editora Ltda.
Silva, F., Leite, M., & Oliveira, D. (2019). Paradigmas de Programação. Grupo A.
UFCD 9950 11Uu
Alexandra Almeida
Created on September 12, 2025
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Teaching Challenge: Transform Your Classroom
View
Frayer Model
View
Math Calculations
View
Interactive QR Code Generator
View
Piñata Challenge
View
Interactive Scoreboard
View
Interactive Bingo
Explore all templates
Transcript
2025/2026
Sistemas de Informação
UFCD 9950 – Conceitos fundamentais de programação
11.º Uu
Curso Profissional de Técnico/a de Multimédia
Professora: Paula Almeida
Conteúdos
1. Alguns Conceitos
1.1. Linguagem
“A linguagem deriva do francês antigo langage e é um sistema estruturado de comunicação que consiste em gramática e vocabulário. “
https://pt.wikipedia.org/wiki/Linguagem
Assim, pode-se definir linguagem como um sistema de comunicação que combina símbolos e regras para expressar ideias e transmitir informações.
1.1. Linguagem
As linguagens podem ser classificadas em:
1.2. Linguagem de programação
Uma linguagem de programação é um sistema formal composto por regras, símbolos e instruções que permitem escrever programas de computador. Serve para comunicar com a máquina, descrevendo de forma precisa as operações que devem ser executadas para resolver problemas ou realizar tarefas.
1.3. Programa
Conjunto de instruções numa linguagem de programação.
1.4. Instrução
Especificação ao processador da ação a executar.
1.5. Classificação das linguagens de programação
As linguagens de programação podem ser classificadas em relação a cinco critérios:
- Em relação ao nível:
Baixo e alto nível.- Em relação à geração:
1.ª, 2.ª, 3.ª, 4.ª, 5.º e 6.ª geração.- Em relação ao paradigma:
Imperativo, Funcional, Lógica, Orientada a objetos, …- Em relação ao método de implementação:
Compilada, Interpretada e Híbrida.- Em relação à tipologia:
Forte, fraca e dinâmica.1.6. Níveis de linguagens de programação:
Baixo nível – quando a sua linguagem se aproxima da linguagem máquina. Alto nível – quando a sua linguagem se aproxima da linguagem humana. Necessitam de um interpretador para converter em linguagem máquina, de forma que o computador compreenda as instruções.
1.6. Níveis de linguagens de programação – Baixo Nível
Vantagens:
- Os programas são executados com maior velocidade de processamento;
- Os programas ocupam menos espaço na memória.
Desvantagens:Exemplo de um programa em Assembly:
Figura 1 – Exemplo de um programa em Assembly
1.6. Níveis de linguagens de programação – Alto Nível
1.6. Níveis de linguagens de programação – Alto Nível
Vantagens:
- Por ser compiladas ou interpretadas, têm uma maior portabilidade, podendo ser executadas em várias plataformas com poucas modificações;
- Em geral, a programação é mais fácil.
Desvantagens:Ilustração de um programa em linguagem de alto nível
Figura 2 – Exemplo de um programa em Python
1.7. Gerações das Linguagens de Programação
As linguagens de programação evoluíram em diferentes gerações, cada uma aumentando o nível de abstração em relação ao hardware e facilitando o desenvolvimento de software.
Figura 3 – Figura com as gerações das linguagens de programação
1.7. Gerações das Linguagens de Programação
Figura 4 – Vídeo alusivo às gerações das linguagens de programação
1.7. Gerações das Linguagens de Programação
- Primeira geração (1GL) – Linguagem de Máquina
- Composta apenas por códigos binários (0 e 1) diretamente compreendidos pelo processador. - Extremamente rápida, mas difícil de escrever e manter. - Exemplo: códigos binários puros, como 10110000.- Segunda geração (2GL) – Assembly
- Usa mnemónicos (ex.: MOV, ADD) para representar instruções de máquina. - Mais legível que o binário, mas ainda dependente do hardware. - Exige um assembler para converter o código em linguagem de máquina.1.7. Gerações das Linguagens de Programação
- Terceira geração (3GL) – Alto Nível
- Mais próxima da linguagem humana, independente do hardware. - Facilita a leitura, escrita e manutenção. - Exemplos: C, Pascal, Java, Python, C++.- Quarta geração (4GL) – Alta Produtividade
- Focada em resolver problemas específicos com menos linhas de código. - Muito usada em bases de dados, relatórios e aplicações empresariais. - Exemplos: SQL, MATLAB, Oracle Forms.1.7. Gerações das Linguagens de Programação
- Quinta geração (5GL) – Baseada em Restrições e IA
- Destina-se a inteligência artificial, sistemas especialistas e lógica declarativa. - O programador define o problema e as condições; o sistema encontra a solução. - Exemplos: Prolog, Mercury, linguagens de desenvolvimento em IA.1.8. Paradigmas de Programação
Figura 5 – Vídeo alusivo às paradigmas de programação
1.8. Paradigmas das Linguagens de Programação
Príncipais Paradigmas
- Imperativo ou Procedimentos
- Baseia-se na execução de instruções passo a passo, que alteram o estado do programa. - Usa estruturas de sequência, decisão e repetição. - Exemplos: C, Pascal, Fortran.- Orientado a Objetos (OOP)
- Organiza o programa em objetos que combinam dados (atributos) e comportamentos (métodos). - Facilita a reutilização de código, encapsulamento e herança. - Exemplos: Java, Python, C++, C#.Príncipais Paradigmas
- Funcional
- Baseia-se em funções matemáticas puras, sem alterar o estado (sem variáveis mutáveis). - Foca-se em composição de funções e imutabilidade. - Exemplos: Haskell, Lisp, Scala, F#.- Lógico ou Declarativo
- Descreve o que o programa deve fazer, e não como fazê-lo. - Muito usado em inteligência artificial e bases de conhecimento. - Exemplos: Prolog, Mercury.Príncipais Paradigmas
- Concorrente / Paralelo
- Centrado na execução simultânea de tarefas ou processos. - Presente em linguagens como Go, Erlang, Rust e também em bibliotecas de Python ou Java.2. Linguagens estruturadas, sintaxe e semântica
A programação é fundamental para o desenvolvimento tecnológico, possibilitando a criação de aplicações simples ou sistemas complexos em áreas como ciência, indústria e entretenimento. Por meio de linguagens de programação, ideias transformam-se em instruções lógicas que os computadores executam para automatizar processos e resolver problemas.
2.1. LINGUAGENS ESTRUTURADAS
As linguagens estruturadas organizam o código em blocos definidos, tornando-o mais claro, legível e fácil de manter. Seguem o paradigma da programação estruturada, baseado em sequência, decisão e repetição para controlar o fluxo do programa.
2.1. LINGUAGENS ESTRUTURADAS
As principais vantagens incluem legibilidade, menor propensão a erros, reutilização de código e maior eficiência no desenvolvimento. Este modelo evita saltos desordenados, como o uso de goto, e é suportado por linguagens como C, Pascal, Java e Python, utilizadas em aplicações que vão de programas simples a sistemas complexos.
2.2. SINTAXE
A sintaxe é o conjunto de regras que define a forma correta de escrever instruções, garantindo que o compilador ou interpretador compreenda e execute o código. Tal como a gramática de uma língua, estabelece como declarar variáveis, usar operadores e estruturar comandos. Cada linguagem tem normas próprias — por exemplo, em C e Java cada instrução termina com ;, enquanto em Python a indentação define blocos. Respeitar a sintaxe é essencial para criar programas claros, consistentes e sem erros de execução.
Exemplo de sintaxe em Python
Neste exemplo: • numero é lido como float para aceitar decimais. • A estrutura if / elif / else avalia: o numero > 0: imprime que é positivo. o numero < 0: imprime que é negativo. o Caso contrário (else): imprime que é zero. • if __name__ == "__main__": garante que a função main() só é executada quando o ficheiro é corrido diretamente.
Figura 6 – Exemplo de sintaxe em Python
2.3. SEMÂNTICA
A semântica refere-se ao significado das instruções de um programa, ou seja, ao comportamento real do código durante a execução. Mesmo que o código esteja sintaticamente correto, um erro semântico pode fazer com que produza resultados incorretos ou não funcione como pretendido.
3. Estruturas Lógicas e Controlo
3.1. Estruturas Lógicas
As estruturas lógicas e de controlo determinam o fluxo de execução de um programa, isto é, a ordem em que as instruções são processadas. As três principais são:
3.2. CONTROLO
O controlo diz respeito à forma como as estruturas lógicas orientam o fluxo do programa, permitindo que diferentes instruções sejam executadas conforme as condições estabelecidas. É através do controlo que o código pode tomar decisões, repetir ações ou seguir caminhos distintos de acordo com os dados ou situações encontradas.
4. TIPOS DE DADOS
Em Python, os tipos de dados representam as diferentes naturezas de valores que podem ser armazenados e manipulados pelo programa.
4. TIPOS DE DADOS
Entre os mais comuns estão:
• int – números inteiros, positivos ou negativos, sem parte decimal. Ex.: idade = 25 • float – números com parte decimal. Ex.: preco = 19.99 • str – cadeias de caracteres (texto). Ex.: nome = "Maria" • bool – valores lógicos True ou False, usados em condições e decisões. Ex.: ativo = True • list – coleções mutáveis de elementos ordenados. Ex.: notas = [14, 15, 18]
4. TIPOS DE DADOS
• tuple – coleções ordenadas e imutáveis. Ex.: coordenadas = (10, 20) • dict – pares chave-valor para representar dados associados. Ex.: aluno = {"nome": "Ana", "idade": 20} • set – conjuntos de elementos únicos e não ordenados. Ex.: cores = {"vermelho", "azul", "verde"} Python faz inferência de tipo, ou seja, não é necessário declarar o tipo antes de atribuir um valor. O tipo pode ser verificado com a função type() e convertido com funções como int(), float(), str().
Exemplo – Tipos de dados em Python
Neste exemplo:
Figura 7 – Exemplo de tipos de dados em Python
5. ENTRADA E SAÍDA DE DADOS
5.1. ENTRADA DE DADOS
A entrada de dados permite que o programa receba informações do utilizador ou de outra fonte. Em Python, essa leitura é feita principalmente com a função input(), que retorna sempre uma string. Quando é necessário outro tipo de dado, como números inteiros ou decimais, é comum converter o valor usando funções como int() ou float().
Exemplo – Entrada de dados
Neste exemplo: • input() lê dados do utilizador como texto. • int() e float() convertem a entrada para números inteiros ou decimais. • print() exibe o resultado no ecrã.
Figura 8 – Exemplo de entrada de dados
5.2. SAÍDA DE DADOS
A saída de dados é o processo de apresentar informações ao utilizador ou de gravá-las em ficheiros. Em Python, a exibição no ecrã é normalmente feita com a função print(), que permite mostrar texto, números e resultados de cálculos. Para guardar dados, podem ser usadas funções de escrita em ficheiros, como write().
Exemplo – Saída de dados
Neste exemplo: • Usa print() para mostrar texto e variáveis no ecrã. • Usa open() com o modo "w" (escrita) e write() para gravar as mesmas informações num ficheiro chamado dados.txt. • O bloco with garante que o ficheiro é fechado automaticamente após a escrita.
Figura 9 – Exemplo de saída de dados
6. CONSTRUÇÃO DE ALGORITMOS
Um algoritmo é um conjunto ordenado de passos que descrevem como resolver um problema ou realizar uma tarefa específica. Na programação, a criação de algoritmos é fundamental, pois o programa é a tradução desses passos para uma linguagem de programação. Um bom algoritmo deve ser simples, lógico e eficiente, facilitando a compreensão, a implementação e a manutenção do código.
6. CONSTRUÇÃO DE ALGORITMOS
Os passos básicos para construir um algoritmo são:
Passos básicos para construir um algoritmo
Figura 10 – Passos básicos para construir um algoritmo
7. NOÇÕES DE LÓGICA
A lógica é a base de qualquer programa de computador. Permite ao programador definir o fluxo do programa, realizar verificações e tomar decisões com base em condições específicas.
Para construir um algoritmo lógico, é importante:
Exemplo completo e simples, mostrando nas três etapas: linguagem comum, pseudocódigo e fluxograma:
Problema: Ler dois números, somá-los e mostrar o resultado.Linguagem comum: “Pedir ao utilizador dois números, somar esses números e apresentar a soma no ecrã.” Pseudocódigo: Início Ler número1 Ler número2 soma ← número1 + número2 Escrever "A soma é:", soma Fim
Exemplo completo e simples, mostrando nas três etapas: linguagem comum, pseudocódigo e fluxograma:
Fluxograma:
Figura 11 – Fluxograma do Exemplo
Símbolos utilizados no desenho de fluxogramas
Figura 12 – Símbolos utilizados no desenho de fluxogramas(Quadro retirado do Manual Aplicações Informáticas B)
Ferramentas auxiliares na criação de fluxograma
Flowgorithm
- Download
http://www.flowgorithm.org/download/index.htmlCriação do algoritmo “Olá, Mundo!”
Problema: Escrever no ecrã "Olá, Mundo!" Linguagem natural Início Escrever “Olá, Mundo!” Fim
Criação do algoritmo “Olá, Mundo!”
Fluxograma
Criação do algoritmo “Olá, Mundo!”
Pseudocódigo
Criação do algoritmo “Olá, Mundo!”
Linguagem de programação Pyton
Visualg
Visualg 2.5 – Ambiente de trabalho
Algoritmo “Olá Mundo!”
Referências
Fonseca, D., Pacheco, D., Marques, F., & Soares, R. (2019). Aplicações Informáticas B - 12.º ano. Porto Editora. Sebesta, R. (2011). Conceitos de Linguagens de Programação (Vol. 9ª Edição). Bookman Companhia Editora Ltda. Silva, F., Leite, M., & Oliveira, D. (2019). Paradigmas de Programação. Grupo A.