PS 2023-2 Lab 08
PS 2023-2 Lab 08
Programação Script
Turmas B1/B2
Prof. Dr. Igor Peretta
2023/2
Nesta lista, você tem 5 programas de nível básico, 3 programas de nível médio e 2
programas de nível superior e 1 programa extra. Para obter a nota máxima neste
laboratório (10.0 pontos), você precisa desenvolver os seguintes programas:
- Os 5 programas de nível básico, valendo 0.75 pontos cada que estiver correto
- Os 3 programas de nível médio, valendo 1.25 pontos cada que estiver correto
- Um único programa superior, à sua escolha, valendo 2.5 pontos se correto
Note que o programa superior (A ou B) que não for escolhido poderá ser desenvolvido para
exercitar sua capacidade de programação, mas sem adicionar pontos na nota. Já o
programa extra serve apenas para você aprofundar seus conhecimentos em programação;
execute-o, modifique-o e teste-o à vontade.
Arquivo:
Básico 01 lab08_b1.py
Escreva um programa em Python que solicite ao usuário a entrada de números inteiros. O
programa deve continuar solicitando números até que o usuário insira 0 (zero), momento
em que a entrada deve ser encerrada.
Após encerrar a entrada, o programa deve verificar quais números são pares e exibir esses
números em uma lista. Se não houver pares, informe isso.
Resultado:
Nenhum número informado é par.
1
Digite um número (0 encerra): 9
Digite um número (0 encerra): 1
Digite um número (0 encerra): 0
Resultado:
Dos números informados, esses são os pares: [8, 34, 22]
Arquivo:
Básico 02 lab08_b2.py
Escreva um programa em Python que solicite ao usuário a entrada de uma sequência de
números inteiros separados por vírgula. O programa deve criar uma lista com esses
números.
Em seguida, o programa deve solicitar ao usuário que escolha um número da lista para
remover. Após a remoção, o programa deve exibir a lista atualizada na tela.
Resultado:
Os números informados ficaram assim:
[5, 3, 7, 8, 22, 501, 23, 2]
Arquivo:
Básico 03 lab08_b3.py
Escreva um programa em Python que escolha aleatoriamente cinco números diferentes
entre 1 e 30 e os armazene em uma lista.
Em seguida, o programa deve pedir ao usuário para tentar adivinhar um desses números. O
programa deve continuar pedindo ao usuário para adivinhar até que ele acerte um dos
números escolhidos.
DICA: randint é uma função da biblioteca random em Python que gera números inteiros
aleatórios dentro de um intervalo especificado (você deve iniciar seu programa com a
diretriz (from random import randint). Ela recebe dois argumentos: o valor mínimo do
intervalo (inclusive) e o valor máximo do intervalo (inclusive), e retorna um número inteiro
aleatório dentro desse intervalo. Por exemplo, randint(1, 10) pode retornar qualquer
número inteiro entre 1 e 10, inclusive.
2
Exemplos de saída do programa
Estou pensando em cinco números, de 1 a 30.
Tente acertar algum deles: 13
Ainda não
Tente acertar algum deles: 22
Ainda não
Tente acertar algum deles: 6
Resultado:
Você acertou! Eu estava pensando em [9, 6, 20, 18, 16]
Arquivo:
Básico 04 lab08_b4.py
Escreva um programa que solicite ao usuário uma sequência de números separados por
vírgula. O programa deve ler a entrada, identificar os números e armazená-los em uma lista.
Em seguida, o programa deve ordenar os números em ordem crescente e exibir o
resultado.
Resultado:
Os números ordenados em ordem crescente é:
[2, 3, 11, 23, 42, 43, 55, 76, 98]
Arquivo:
Básico 05 lab08_b5.py
Escreva um programa que solicite ao usuário uma sequência de números separados por
vírgula. O programa deve ler a entrada, identificar os números e armazená-los em uma lista.
Em seguida, o programa deve exibir os números informados em ordem reversa.
Resultado:
Os números informados em ordem reversa é:
[42, 23, 55, 98, 2, 11, 43, 76, 3]
3
Arquivo:
Médio 01 lab08_m1.py
Escreva um programa que permita ao usuário informar o número de linhas e colunas de
uma matriz, bem como os elementos da matriz. O programa deve gerar a matriz com base
nos elementos fornecidos e exibi-la na tela. O usuário deve informar os elementos da matriz
separados por vírgula. Você pode usar as seguintes funções, se desejar, ou criar as suas
próprias para a entrada e saída de dados:
def inputInt(msg):
while True:
numero = input(msg)
if numero.isnumeric():
numero = int(numero)
break
return numero
def inputListInt(msg):
if not "vírgula" in msg:
msg += " [separação por vírgulas] "
lista = list()
while True:
numeros = input(msg).split(',')
for i in range(len(numeros)):
if numeros[i].strip().isnumeric():
lista.append(int(numeros[i].strip()))
if len(lista) > 0:
break
return lista
def printMatriz(matriz):
m, n = len(matriz), len(matriz[0])
for i in range(m):
print("|", end=" ")
for j in range(n):
print(f"{str(matriz[i][j]):^6s}", end=" ")
print("|")
Resultado:
A matriz ficou assim:
| 1 2 3 4 |
| 5 6 7 8 |
| 9 10 11 121 |
4
Arquivo:
Médio 02 lab08_m2.py
Resultado:
| 1 2 3 |
| 4 5 6 |
| 7 8 9 |
+
| 2 8 14 |
| 4 10 16 |
| 6 12 18 |
=
| 3 10 17 |
| 8 15 22 |
| 13 20 27 |
Arquivo:
Médio 03 lab08_m3.py
5
Exemplos de saída do programa
Informe o número de linhas: 3
Informe o número de colunas: 3
Informe os 9 elementos, separados por vírgula: 1,2,3,4,5,6,7,8,9
Resultado:
A matriz:
| 1 2 3 |
| 4 5 6 |
| 7 8 9 |
NÃO É simétrica
Resultado:
A matriz:
| 1 4 5 |
| 4 2 6 |
| 5 6 3 |
É simétrica
Arquivo:
Superior A lab08_sa.py
Dicas:
6
Exemplos de saída do programa
Informe o número de linhas de A: 2
Informe o número de colunas de A: 4
Informe os 8 elementos da matriz 'A', separados por vírgula:
1,2,3,4,5,6,7,8
Informe o número de linhas de B: 4
Informe o número de colunas de B: 3
Informe os 12 elementos da matriz 'B', separados por vírgula:
1,2,3,4,5,6,7,8,9,10,11,12
Resultado:
| 1 2 3 4 |
| 5 6 7 8 |
*
| 1 2 3 |
| 4 5 6 |
| 7 8 9 |
| 10 11 12 |
=
| 70 80 90 |
| 158 184 210 |
Arquivo:
Superior B lab08_sb.py
Escreva um programa em Python que calcule o determinante de uma matriz quadrada
(https://pt.wikipedia.org/wiki/Determinante). Para cálculo de determinantes de matrizes de
ordens variáveis, utilize o Teorema de Laplace em conjunto com o cálculo de cofatores
matriciais (https://pt.wikipedia.org/wiki/Determinante#Determinantes_de_matrizes_de_ordem_maior_que_3).
Dicas
7
Exemplo de saída do programa
Resultado:
A matriz:
| 1 4 5 |
| 4 2 6 |
| 5 6 3 |