0% acharam este documento útil (0 voto)
53 visualizações52 páginas

Apresentação Da 10793 - Fundamentos de Python Nuno Miguel Guedes 01 de Fevereiro de 2024

O documento apresenta os fundamentos da linguagem de programação Python, abordando tópicos como algoritmos, linguagens de programação, características e vantagens de Python, constantes e variáveis, tipos de dados, operadores, estruturas de seleção e repetição.

Enviado por

hdamiani
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
53 visualizações52 páginas

Apresentação Da 10793 - Fundamentos de Python Nuno Miguel Guedes 01 de Fevereiro de 2024

O documento apresenta os fundamentos da linguagem de programação Python, abordando tópicos como algoritmos, linguagens de programação, características e vantagens de Python, constantes e variáveis, tipos de dados, operadores, estruturas de seleção e repetição.

Enviado por

hdamiani
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 52

Apresentação da 10793 – Fundamentos de Python

Nuno Miguel Guedes

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 C = A + B atribui o valor de A + B em C

+= Atribuição de soma C += A equivale a C = C + A

Atribuição de
-= C -= A equivale a C = C – A
subtração
Atribuição de
*= C *= A equivale a C = C * A
multiplicação

/= Atribuição de divisão C /= A equivale a C = C / A

%= Atribuição de resto C %= A equivale a C = C % A


Operadores
• Operadores Aritméticos
Os operadores aritméticos são
aqueles que executam operações
matemáticas
Operador Descrição Exemplo
+ Adição A + B = 30
– Subtração A – B = -10
* Multiplicação A * B = 200
/ Divisão B/A=2
Módulo (resto da
% B%A=0
divisão)
** Exponenciação A**2 = 100
Operadores
• Operadores Lògicos
Os operadores lógicos mais
importantes são not and or
Operador Descrição Exemplo
and e true and true
Or ou true or true
not não not true
Operadores
• Operadores Relacionais

Operador Descrição Exemplo


== igual 5==2 false
!= Diferente 5!=2 true

< menor 5<2 false


> maior 5>2 true
<= Menor ou igual 5<=2 false
>= Maior ou igual 5>=2 true
Entrada e Saída de Dados
• :A obtenção de valores do exterior é feita
através de operações de leitura de dados.
• Uma operação de leitura de dados é a função
“input”
– input()
– input(“informação”)
– input(“qual a sua idade”)
– eval(input()):
Entrada e Saída de Dados
• ::A comunicação de valores para o exterior é
feita através de operações de escrita de
dados.
• Uma operação de escrita de dados é a função
“print”
– print()
– print(“informação”)
– print(“o seu IMC é”)
– Print(“a= ”,a, “b=“,b)
Entrada e Saída de Dados
• Funções escape
Caracter escape Significado
\\ Barra ao contrario (\)
\’ Plica (´)

\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

Elabore um programa que, a partir da leitura da categoria


profissional, imprima o respetivo salário-base
Estruturas de Repetição
Condicionais
• :Em programação, uma sequencia de instruções
executadas repetidamente é chamada um ciclo.
• Ciclos while, permite especificar a execução
repetitiva de um conjunto de instruções
enquanto uma determinada condição tiver o
valor verdadeiro
• Sintaxe
• while condição:
– Instrução
– instrução
Estruturas de Repetição
• :Instrução break apenas pode aparecer dentro
do corpo de um ciclo.
• Ao encontrar uma instrução break, o ciclo
termina independentemente da condição que
controla o ciclo
Exercícios
• Exercício 11:
– Faça um programa que peça uma nota, entre zero e vinte.
Mostre uma mensagem caso o valor seja inválido e continue
pedindo introduza um valor correto,
• Exercicio12:
– Faça um programa que receba e valide as seguintes informações:
• Nome: maior que 3 caracteres;
• idade: entre 0 e 100;
• Salário: maior que zero;
• Sexo: 'f' ou 'm’;
• Estado Civil: 's', 'c', 'v', 'd’;
– Use a função len(string) para saber o tamanho de um texto (número
de caracteres).
Estruturas de Repetição controladas
por contador automático
• Nas estruturas repetitivas controladas por
contador automático, a instrução de controlo de
ciclo indica explicitamente quantas vezes o ciclo
será executado.:
• Contador:
– Assume um valor inicial
– É incrementado (ou decrementado)
automaticamente, cada vez que o ciclo se executa até
atingir o valor final
– Toma o valor final e o ciclo é executado pela ultima
vez.
Estruturas de Repetição controladas
por contador automático
• :Numero de vezes que o ciclo é executado
– Int((final-inicial)/passo)-1
• Sintaxe
– For contador in range(inicial, final, passo):
Instruçao
instrução
Exercícios
• Exercício 13
– Imprima todos os números de 100 até 1

• 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

• Funções são blocos de código que realizam


determinadas tarefas.:
• A sintaxe de uma função é definida por
três partes: nome, parâmetros e corpo, o
qual agrupa uma sequência de linhas que
representa algum comportamento.
• No corpo de uma função pode ser
utilizada uma instrução adicional retun::
Funções
• Sintaxe
Def nome_função (parametros)
corpo
Exercícios
• Exercício 18
– Escreva uma função que tem o valor true se o seu
argumento for 5 e false no caso contrario.
• Exercício 19
– Escreva a função bissexto que determina se um
ano é bissexto.
• Divisível por 4 e não divisível por 100 a não ser que seja
divisível por 400
– Teste 1984 e 2000 é bissexto
– 1100 não é bissexto
Exercícios

• 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,

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy