Escolar Documentos
Profissional Documentos
Cultura Documentos
01 de Fevereiro de 2024
Algoritmos
• Definição
– Um algoritmo é sequencia 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 com uma quantidade de
esforço finita.:
Linguagens de Programação
• :Linguagem Máquina
• Linguagem Assembly
• Linguagem de Alto nível
Python
• Lançada em 1991 na holanda
• Linguagem imperativa de alto nivel
Python
• Vantagens
– Fácil aprendizagem
– Simples de programar
– Open source
– Multi-plataforma
– Grande quantidade de bibliotecas
• Desvantagens
– Velocidade mais lento do que c/C++, java,…
– Consumo de memoria:
Constantes e variáveis
• Constantes podem ser números, valores
lógicos ou cadeia de caracteres.
• Tipos de constantes:
– Numeros inteiros
– Numeros Reais
– Valores lógicos
– Cadeia de Caracteres/string
Constantes e variáveis
Uma variável é um endereço de memória que
pode ser alterado e, quando o endereço de
memória não pode ser alterado, essa variável
é conhecida como constante. Variável é o
nome do local de memória onde os dados
são armazenados. Uma vez que uma variável
é armazenada, o espaço é alocado na
memória. Ele define uma variável usando
uma combinação de números, letras e ou
caractere.
Constantes e variáveis
• Regras para nomes de variáveis
– Tem de começar por um caracter ou por _
– Não podem começar por números
– Não pode conter espaços
– Não podem conter caracteres especiais ? / %
– Não podem ser palavras reservadas
• and def finally in or while as del for is pass with assert
elseif from lambda break else global None return
– As variáveis são case sensative, xpto, Xpto XPTO
são 3 variáveis diferentes.
Tipos de dados
• Tipo inteiro (int)
• Tipo Real (float)
• Tipo Lógico(bool)
• Cadeia de caracteres(string)
Atribuição
• A instrução de atribuição recorre à
operação embutida “=“, operador de
atribuição.
nome_variável=expressão
idade=16
• Operadores de atribuição são utilizados
para atribuirmos um valor a uma variável
• Pode ser para definir um valor inicial ou
para sobrescrever um valor já existente.
Atribuição
Operador Descrição Exemplo
Atribuição de
-= C -= A equivale a C = C – A
subtração
Atribuição de
*= C *= A equivale a C = C * A
multiplicação
\b Retrocesso de um espaço
\n Mudar de linha
\r “Return”
\t Tabulação horizontal
Exercícios
• Exercicio 1:
– Elabore um programa que imprima a mensagem
“Bem-vindos ao python”, precedida por uma linha
em branco
• Exercicio 2:
– Elabore um programa que atribua a mensagem a
uma variável “mensagem” e , em seguida,
imprima o valor da variavel
Exercícios
• Exercício 3:
– Elabore um programa que intercale a designação da
linguagem de programação e o nome do
formando(guardar “python” e nome do formando em
variáveis) “bem-vindos ao python, nuno”
• Exercício 4
– Elabore um programe que calcule
• 4+3(15-2)
• 23
• 40 a dividir por 9
• Resto de divisão 40 por 3
• Divisao inteira de 30 por 4
Exercícios
• Exercício 5:
– Elabore um programa que calcule o valor lógico
das seguinte proposições:
• 4==5
• 4 diferente 6
• 4 menor que 5 e 6 maior que 10
• 40 menor que 50 ou 60 maior ou igual que 90
• Negação da proposição anterior
Exercícios
• Exercicio6:
– Elabore um programa que receba um inteiro, o multiplique por
12 e mostre o seu resultado e o numero de dígitos do numero.
Dicas: int(string) || str(int) || len(string)
• Exercício 7:
– Elabore um programa que pede ao utilizador que lhe forneça
um inteiro correspondente a um numero de segundos e calcula
o numero de dia, horas, min e segundos correspondentes a esse
numero de segundos
Dica 1: utilizar resto de divisão e divisão inteira
Dica 2: 1 dia = 86400s x_dias=seg//86400
1 hora=3600s
1 min=60s
Estruturas de Seleção
• A instrução if permite a seleção entre duas ou mais
alternativas. Dependendo do valor de uma condição,
esta instrução permite-nos selecionar uma de duas ou
mais instruções para serem executadas.
• Sintaxe da função if
• If condição: if condição :
– Instruções- -Instruções-
– Instruções- elif condição
-Instruções-
else:
-Instruções-
Exercícios
• Exercício 8:
– Elabore um programa que imprima o maior de
dois números reais
• Exercício 9:
– Elabore um programa que calcule o maior e
menor de 3 números.
Dicas: comparar 2 a 2
Dicas: ou camparar os 3 usando o and
Exercícios
• Exercício 10:
– Os salários-base dos funcionários de determinada empresa
estão tabelados segundo a categoria profissional:
Categoria Salário-Base
A 2500
B 2000
C 1750
D 1250
OUTRA 750
• Exercicio 14
– Imprima todos os números pares e não divisíveis por 3 de
1 até 100
• Exercicio 15
– Elabore um programa que recebe a idade de 10 pessoas e
que imprima quantas pessoas tem idade superior a 18
Exercícios
• Exercício 16
– Faça um programa que recebe a idade de 15 pessoas e que
no final mostre a distribuição conforme a sua faixa etária
• 1 Até 15 anos
• 2 De 16 a 30 anos
• 3 De 31 a 45 anos
• 4 De 46 a 60 anos
• 5 Acima de 61 anos
• Exercicio 17
– Receba um numero e calcule o fatorial desse numero
• por de feito 0!=1
• n! = 1*2*3*…*(n-1)!*n!
Funções
• Exercício 20
– Escreva uma função num_divisores que recebe
um n e devolve o numero de divisores de n.
• O programa devera correr sempre até o utilizador
introduzir o numero 9999
Exceções
• A introdução e o processamento de dados
podem gerar erros que alteram a execução
dos programas.:
• Estes erros são designados por exceções, uma
vez que resultam de situações extraordinárias
que alteram a execução geral do programa.
Exceções
Estrutura de tratamento de dados
try:
instruções
except:
instruções
else:
instrução
finaly:
instrução
Exercícios
• Exercício 20
Escreva uma função que calcule a seguinte função
x/(Y-6)
Mas que imprima uma mensagem sempre que o
denominador for igual a zero
• Exercício 21
Elabore uma função que valide a idade, em anos, digitada
por um estudante. A idade tem de ser um inteiro, igual
ou superior a 17 anos e inferior a 77 anos
Listas
• Os diversos tipos de dados primitivos podem
agregar-se em estruturas mais complexas para
simplificar o processamento algoritmo
• As listas são conjuntos de dados.
• As listas são identificadas pelos respetivos
nomes e seus elementos são identificados
individualmente através do nome da lista
seguido do índice:
Listas
• Sintaxe
Lista= [1,2,3,”a”]
• Funçoes de listas
list.append(x) list.count(x)
list.extend() list.sort()
list.insert(i, x) list.reverse()
list.remove(x)
list.pop([i])
list.clear()
Exercícios
• Exercicio 22
– Elabore um programa que imprima os nomes da
equipa de um projeto ordenada por ordem
inversa alfabética
• Considere os elementos da equipa antonio, ana ,
teresa, telmo, joao, guilherme, luis
• Exercicio 23
– Dada a lista de cidades abaixo substitua uma
cidade indicada pelo utilizador por Porto
• Cidades=[“Aveiro”, “Braga”, “Bragança”, “Regua”]
• #Ex24
• #Elabore um programa que conte o número de
vezes que cada elemento aparece na lista
• #Por exemplo
• # -Lista[4,2,5,4,3,5,2,2,4]
• # - Output
• # - 4 ocorre 3 vezes
• # -2 ocorre 3 vezes
• # - 5 ocorre 2 vezes
• # -3 ocorre 1 vez
Dicionarios
• São estruturas de dados que implementam
mapeamentos
• Um mapeamento é uma coleção de
associações entre pares de valores
– O primeiro elemento do par é chamado de chave
e o outro de valor
Dicionários
• 1. Faça um programa, utilizando Dicionários,
que peça para o utilizador inserir o nome de
três produtos de mercado e seus respectivos
preços e os mostre na tela.
• 2. Faça um programa,
utilizando Dicionários, que peça para o
utilizador inserir quatro notas e mostre na tela
as notas e a média entre elas.
• Crie um dicionário que é uma agenda e
coloque nele os seguintes dados: chave (nif),
nome, idade, telefone. O programa deve ler
um número indeterminado de dados, criar a
agenda e imprimir todos os itens do dicionário
Exercícios
• Exercicio24
– Elabore um programa que conte o numero de
vezes que cada elemento aparece na lista
• Por exemplo
– Lista= [4,2,5,4,3,5,2,2,4]
– Output
– 4 ocorre 3vezes
– 2 ocorre 3 vezes
– 5 ocorre 2 vezes
– 3 ocorre 1 vez
Ficheiros
• Um ficheiro é um tipo estruturado de dados
constituído por uma sequencia de elementos
todos do mesmo tipo.
• Os ficheiros são entidades que existem fora do
nosso programa.:
• A operação através da qual identificamos a
localização do ficheiro e o modo como queremos
utiliza-lo é conhecida por operação de
aberturado ficheiro.:
– open(<caminho+nome>, <modo>, <encoding>)
Ficheiros
• Leitura de ficheiros
– f=open(‘exemplo.txt’,r)
– ln1=f.readline() #readline lê só uma linha(1º)
– ln2=f.readlines() #lista de todas as linhas
– rtln=f.read(8) #lê 8 caracteres
– rtln=f.read() #lê todoo ficheiro(da 2º linha ate
final)
– f.close()
Ficheiros
• Escrita em ficheiros
– f=open(‘exemplo.txt’,r)
– f.write(“uma linha de teste”)
– f.close()
Exercícios
• Exercício 24
– Elabore um programa com um menu que permite
ao utilizador escolher escrever uma lista de
compras, ler a lista de compras e sair.
Exercicios
• Exercício 25
Escreva um a função conta vogais que recebe o
nome do ficheiro, lê esse ficheiro linha a linha e
calcula quantas vezes aparece cada uma das vogais,