Escolar Documentos
Profissional Documentos
Cultura Documentos
LÓGICA E PYTHON
2
Sumário
Capítulo 01 ..................................................................................................................................... 4
A) O que são algoritmos? Aplicações e oportunidades de emprego. ...................... 4
C) Variáveis .................................................................................................................. 6
B) Strings .................................................................................................................... 19
Capítulo 05 ................................................................................................................................... 23
A) Comandos de Repetição ....................................................................................... 23
Capítulo 06 ................................................................................................................................... 28
A) Funções .................................................................................................................. 28
B) Recursão ................................................................................................................ 31
Capítulo 07 ................................................................................................................................... 33
A) Exceções ................................................................................................................ 33
B) Manipulação de arquivos...................................................................................... 33
Capítulo 08 ................................................................................................................................... 34
A) Matrizes ................................................................................................................. 34
Capítulo 09 ................................................................................................................................... 35
B) Programação orientada a objetos........................................................................ 35
Capítulo 10 ................................................................................................................................... 36
3
Capítulo 01
A) O que são algoritmos? Aplicações e oportunidades de emprego.
Exercício
B) O que é Python?
Além disso, Python é uma linguagem interpretada, o que significa que o código
é executado diretamente pelo interpretador Python, sem a necessidade de compilar o
código em um arquivo executável separado. Isso torna o processo de desenvolvimento
mais rápido e menos propenso a erros.
Python também tem uma grande biblioteca padrão, com muitas funções úteis e
módulos para uma ampla variedade de tarefas, como manipulação de arquivos, conexão
de banco de dados, processamento de texto, entre outros. Isso reduz a necessidade de
escrever código do zero para cada tarefa e permite que os desenvolvedores criem
aplicativos mais rapidamente.
Outra vantagem de Python é sua versatilidade. Python pode ser usado para uma
ampla variedade de tarefas, desde desenvolvimento web até ciência de dados e
aprendizado de máquina, tornando-o uma linguagem de programação popular em muitas
indústrias e campos.
Por fim, Python é uma linguagem de programação de código aberto, com uma
grande comunidade de desenvolvedores e recursos disponíveis on-line gratuitamente, o
que a torna acessível e acessível para novos desenvolvedores que desejam aprender a
programar.
6
Exercício
C) Variáveis
x= 5
y= "John tem"
w="anos"
7
print(x)
print(y)
print(w)
print(y,x,w)
Exercícios
3) Crie uma variável com um nome de uma pessoa e outra com sua idade.
4) Tente colocar os seguintes caracteres no nome de uma variável e diga quais geram
erros e quais não geram erros: Letras de A-z, números de 0 até 9, _, - , espaço entre
palavras, #, @, $, &, \, etc.
Exemplo: Você fala para o programa quantos anos que você tem e ele diz em
qual ano você nasceu
idade = input("Qual sua idade: ")
idade_int = int(idade)
ano_nascimento = 2023‐idade_int
ano_nascimento_texto = str(ano_nascimento)
resposta = "Você nasceu no ano de "+ ano_nascimento_texto
print (resposta)
Exercício
5) Crie um programa que pergunte seu nome e depois de bom dia e pergunte se você
está bem.
8
E) Tipos de Dados
tipo_int = 13 # Variável que armazena um número inteiro
tipo_string = "é um número legal" # Variável que armazena uma string de texto
tipo_float = 13.5 # Variável que armazena um número de ponto flutuante
tipo_boolean = True # Variável a que pode ser True (verdadeiro) ou False (falso)
Exercício
6) Crie uma variável para cada tipo (int, float, string, boolean) e faca a conversão de uma
para os outros tipos de variáveis usando as funções int(), float(), str(), bool(); e salve
a resposta em outra variável. Use o comando type() para ver se realmente a variável
foi convertida.
Exemplo: Agora iremos imprimir o tipo das variáveis usando o comando type().
print(type(tipo_int))
print(type(tipo_string))
print(type(tipo_float))
print(type(tipo_boolean))
9
Capítulo 02
A) Operações Matemáticas
num1 = 3
num2 = 2
op_adicao = num1+num2 # Adição
op_sub = num1‐num2 # Subtração
op_div = num1/num2 # Divisão
op_multp = num1*num2 # Multiplicação
op_expo = num1**num2 # Expeneciação
op_resto = num1%num2 # Resto da divisão
print("O resultado da adição é: ", op_adicao)
print("O resultado da subtração é: ", op_sub)
print("O resultado da divisão é:", op_div,)
print("O resultado da multiplicação é: ", op_multp)
print("O resultado da exponenciação é: ", op_expo)
print("O resto da operação da divisão: ", op_resto)
Exercícios
1) Faça um programa que leia dois numeros inteiros e um real e o imprima a soma
deles.
10
4) Leia um número inteiro e imprima a soma do seu antecessor com o triplo do seu
sucessor.
5) Faça um programa que leia o valor de um produto e imprima o valor com desconto,
tendo em vista que o desconto foi de 12%.
6) Uma empresa contrata um encanador a R$ 30,00 por dia. Faça um programa que
solicite o número de dias trabalhados pelo encanador e imprima a quantia líquida
que deverá ser paga, sabendo-se que são descontados 8% para imposto de renda.
7) Três amigos jogaram na loteria. Caso eles ganhem, o prêmio deve ser repartido
proporcionalmente ao valor que cada deu para a realização da aposta. Faça um
programa que leia quanto cada apostador investiu, o valor do prêmio, e imprima
quanto cada um ganharia do prêmio com base no valor investido.
11
Capítulo 03
A) Operações de Comparação
num1 = 5
num2 = 5
op_menor = num1<num2
op_maior = num1>num2
op_igual = num1==num2
op_dife = num1!=num2
op_maior_igual = num1>=num2
op_menor_igual = num1<=num2
print(num1,"é menor que",num2,"?",'\n',op_menor)
print (num1,"é maior que",num2,"?",op_maior)
print(num1,"é igual",num2, "?",op_igual)
print(num1, 'é diferente' ,num2, "?",op_dife)
print(num1,"é maior ou igual a", num2,"?",op_maior_igual)
print(num1,"é menor ou igual a", num2,"?",op_menor_igual)
12
Exercício
1) Complete a tabela abaixo com as palavras True e False. Caso tenha dúvida faça o
teste usando a linguagem Python
5==”5”
-4<=0
5 != (10/2)
6>2
9<=9
B) Operadores Lógicos
#AND
print (True and True)
print (True and False)
print (False and False)
#OR
print (True or True)
print (True or False)
print (False or False)
#NOT
print (not(True or False)) # modifique para mudar o resultado adicionado outro
not
13
Exercícios
2) Complete a tabela abaixo com as palavras True e False. Caso tenha dúvida faça o
teste usando a linguagem Python
not 6>2
5<6 or 1==10
C) Comandos Condicionais
IF
if condição:
Além disso, a estrutura do if também pode ser expandida com outras instruções
de controle de fluxo, como else e elif (abreviação de else if). Isso permite que o código
tome diferentes decisões com base em várias condições.
14
idade = int(input("Digite a sua idade: "))
aniversario = input("Você já fez aniversário este ano? (S ou N):")
#processamento
if (aniversario == "S"):
ano = 2023 ‐ idade
else:
ano = 2022 ‐ idade
print ("O seu ano de nascimento é:", ano)
0
ELIF
vida = 100
dano = int(input("Dano: "))
#processamento e saída
vida = vida ‐ dano
if (vida >= 80):
print("\033[92m█"*vida)
elif (vida > 40 and vida < 80):
print("\033[33m█"*vida)
elif (vida <= 40):
print("\033[31m█"*vida)
else:
print("valor incorreto")
Exercícios
3) Faça um programa que receba dois números e mostre o maior. Se por acaso, os dois
números forem iguais, imprima a mensagem números iguais.
5) Faça um programa que receba um número inteiro e verifique se este número é par
ou ímpar.
8) Faça um algoritmo que calcule a média ponderada das notas de 3 provas. A primeira
e a segunda prova têm peso 1 e a terceira tem peso 2. Ao final, mostrar a média do
aluno e indicar se o aluno foi aprovado ou reprovado. A nota para aprovação deve
ser igual ou superior a 60 pontos.
9) Faça um programa que receba a altura e o sexo de uma pessoa e calcule e mostre
seu peso ideal, utilizando as seguintes formulas (onde h corresponde à altura):
Homens: (72.7 ∗ h) − 58
Mulheres: (62, 1 ∗ h) − 44, 7
10) Faça um programa que mostre ao usuário um menu com 4 opções de operações
matemáticas (as básicas, por exemplo). O usuário escolhe uma das opções e o seu
pro grama então pede dois valores numéricos e realiza a operação, mostrando o
resultado e saindo.
11) Leia a idade e o tempo de serviço de um trabalhador e escreva se ele pode ou não se
aposentar. As condições para aposentadoria são
Ter pelo menos 65 anos,
Ou ter trabalhado pelo menos 30 anos,
Ou ter pelo menos 60 anos e trabalhado pelo menos 25 anos
12) Uma empresa vende o mesmo produto para quatro diferentes estados. Cada estado
possui uma taxa diferente de imposto sobre o produto (MG 7%; SP 12%; RJ 15%; MS
8%). Faça um programa em que o usuário entre com o valor e o estado destino do ´
produto e o programa retorne o preço final do produto acrescido do imposto do
estado e
13) m que ele será vendido. Se o estado digitado não for valido, mostrar uma mensagem
´ de erro.
16
14) Leia uma data de nascimento de uma pessoa fornecida através de três números
inteiros: Dia, Mês e Ano. Teste a validade desta data para saber se está e uma data
válida. Teste ´ se o dia fornecido e um dia valido: dia > 0, dia ≤ 28 para o mês de
fevereiro (29 se o ano for bissexto), dia ≤ 30 em abril, junho, setembro e novembro,
dia ≤ 31 nos outros meses. Teste a validade do mês: mês> 0 e mês< 13. Teste a
validade do ano: ano ≤ ano atual (use uma constante definida com o valor igual a
2008). Imprimir: “data valida” ´ ou “data invalida” no final da execução do programa.
17
Capítulo 04
A) Vetores (Listas e Dicionários)
Os vetores são úteis para armazenar dados que precisam ser acessados de
forma sequencial ou para armazenar um conjunto de dados do mesmo tipo. Por exemplo,
um vetor pode ser usado para armazenar as notas de um conjunto de alunos, onde cada
elemento do vetor representa a nota de um aluno específico.
Vale lembrar que os vetores têm tamanho fixo e uma vez criados, não podem ser
alterados. No entanto, em algumas linguagens de programação, existem estruturas de
dados semelhantes aos vetores que permitem adicionar e remover elementos
dinamicamente, como as listas em Python ou os vetores dinâmicos em C++.
idades = ['Ana',14, 'Bruno',20, 'Camila',18]
print(idades)
print(type(idades))
idades[3]=21
print(idades)
idades.append(“Julia”)
idades.append(16)
print(lista_numeros)
lista_numeros.pop(2)
lista_numeros.pop(3)
print(lista_numeros)
frutas = {
“Maçã” : “vermelha”,
“Banana” : “amarela”,
“Morango” : “vermelho”,
“Laranja” : “laranja”,
“Uva” : “roxa”
}
print(frutas)
print(type(frutas))
fru = input(“Qual fruta você quer saber a colar?”)
cor = frutas[fru]
print(“A cor do(a) ”, fru, “é”, cor)
frutas[“Maçã”]=verde
print(frutas)
frutas[“Limão”] = verde
print(frutas)
frutas.pop(“Uva”)
print(frutas)
Exercícios
1) Faça um programa para ler a nota da prova de 3 alunos e armazene num vetor,
calcule e imprima a média geral.
2) Crie lista X com cinco números que o usuário deve digitar e mostre ela. Depois crie
outra lista Y cujo o primeiro elemento deve ser o último de X, o segundo de Y seja
igual ao penúltimo de X, até que o último de Y seja o primeiro de X.
3) Peça para o usuário digitar três números, salve-os em um vetor, e pergunte se para
o usuário se ele quer ordenar os números em ordem crescente ou decrescente, salve
os números ordenados no vetor e depois mostre para o usuário.
4) Faça um programa que leia dois vetores de quatro posições e calcule outro vetor
contendo, nas posições pares os valores do primeiro e nas posições impares os
valores do segundo.
5) Crie um uma lista de cinco números e o programa deve falar qual é menor valor e o
maior.
19
6) Crie um dicionário cuja chave é o nome de uma pessoa e dos dados armazenados
em um vetor de 3 elementos que são: idade, e-mail e telefone. O programa deve
perguntar para o usuário de qual pessoa ele quer saber as informações e depois
mostrar o nome, idade, e-mail e telefone da pessoa escolhida.
8) Crie um dicionário cuja chave é o nome do aluno e o valor é a altura dele. O programa
deve dizer qual aluno é o mais baixo e quem é o mais alto, mostre também a idade
deles.
9) Faça um programa que leia dois vetores de 10 elementos. Crie um vetor que seja a
união entre os 2 vetores anteriores, ou seja, que contenha os números dos dois
vetores. Não deve conter números repetidos.
10) Receba cinco números do usuário, crie três vetores X, Y e W para salva-los, onde:
X: irá conter os números múltiplos de 10;
Y: irá conter os números pares;
W: irá conter os ´números impares.
B) Strings
Uma string é uma sequência de caracteres, como uma palavra ou uma frase, que
pode ser armazenada em uma variável ou em um vetor de caracteres. As strings são
tratadas como vetores de caracteres, onde cada elemento do vetor representa um
caractere da string.
Assim como nos vetores, cada caractere de uma string é acessado através de
um índice, começando em 0. Por exemplo, em Python, podemos acessar o terceiro
caractere de uma string chamada "hello" usando o índice 2:
s = "hello"
print(s[2]) # saída: "l"
Da mesma forma, podemos iterar sobre os caracteres de uma string usando um
loop, como um loop for:
20
s = "hello"
print(s[0])
print(s[1])
print(s[2])
print(s[3])
print(s[4])
print(s[5])
Nesse caso, a saída será:
h
e
l
l
o
Aqui está uma tabela com alguns caracteres especiais de strings do Python:
Caractere Descrição
\n Nova linha
\t Tabulação
\r Retorno do carro
\b Retrocesso
\f Avanço de página
string = input("Digite uma string: ")
tamanho = len(string)
print("O tamanho da string é:", tamanho)
texto = "Não tenha medo de falhar e crie algo incrível."
if “falhar” in texto:
print(“A palavra falhar esta presente no texto”)
else:
print(“A palavra falhar não esta presente no texto”)
print(texto[0:15], texto[15:])
print(texto.upper())
print(texto.lower())
print(texto.strip())
print(texto.replace("falhar", "fracassar")))
texto2 = “porque você tem o poder de aprender e crescer”
texto3 = texto + texto2
22
print(texto3)
# o que acontecerá?
print 3 * “Hero”
# o que acontecerá?
print 3 * “\nHero”
Exercícios
12) Escreva uma função que: ▪ receba uma frase como parâmetro. ▪ Retorne uma nova
frase com cada palavra com as letras invertidas.
13) Faça um programa que então leia uma string e a imprima e imprima o seu
comprimento.
14) Faça um programa que leia um nome e imprima as 4 primeiras letras do nome
15) Entre com um nome e imprima o nome somente se a primeira letra do nome for “a”
(maiúscula ou minúscula).
16) Faça um programa que receba do usuário uma string. O programa imprime a string
sem suas vogais.
17) Faça um programa que receba uma palavra e calcule quantas vogais e consoantes
possui essa palavra.
23
Capítulo 05
A) Comandos de Repetição
While
while condição:
código a ser repetido enquanto a condição for verdadeira
Onde "condição" é uma expressão booleana que é avaliada em cada iteração do
loop. Enquanto a condição for verdadeira, o bloco de código dentro do loop será
executado. Quando a condição se torna falsa, o loop é encerrado e a execução continua
a partir do ponto após o loop.
x = 0
while x <= 10:
print(x)
x = x+1
24
vida = 100
while(vida_dano>0):
dano = int(input("Dano: "))
vida = vida ‐ dano
if (vida >= 80):
print("\033[92m█"*vida)
elif (vida_dano > 40 and vida_dano < 80):
print("\033[33m█"*vida_dano)
elif (vida_dano <= 40):
print("\033[31m█"*vida_dano)
elif (vida_dano == 0)
print("GAME OVER!")
For
for elemento in sequência:
código a ser executado para cada elemento da sequência
Onde "elemento" é uma variável que assume o valor de cada elemento da
sequência em cada iteração do loop, e "sequência" é a sequência de elementos a ser
percorrida.
Por exemplo, para percorrer uma lista de números e imprimir cada número na
tela, pode-se usar o seguinte código:
numeros = [1, 2, 3, 4, 5]
for numero in numeros:
print(numero)
for x in range(10):
print (x)
herois = [“Homem de Ferro”, “Homem Aranha”, “Batman”]
print(“Lista de Heróis:”)
for h in herois:
if h==“Homem Aranha”:
print(“ ‐ ”,h,”este é o meu favorito!”)
else:
print(“ ‐ ”,h)
Exercícios
4) Escreva um programa que leia 10 números e escreva o menor valor lido e o maior
valor lido.
6) Faça um programa que calcule e mostre a soma dos 50 primeiros números pares.
7) Faça um algoritmo que leia um número positivo e imprima seus divisores. Por
exemplo: os divisores de 10 são 2 e 5.
8) Leia uma sequência de números inteiros 'n' e determine se eles são pares ou não.
Deverá ser informado o número de dados lidos e o número de valores pares. O
processo termina quando for digitado o número 1000.
10) Escreva um programa completo que permita a qualquer aluno introduzir, pelo
teclado, uma sequência arbitrária de notas (válidas no intervalo de 10 a 20) e que
mostre na tela como resultado a correspondente média aritmética. O número de
notas com que o aluno pretenda efetuar o cálculo não será fornecido ao programa,
o qual terminará quando for introduzido um valor que não seja válido como nota de
aprovação.
11) Faça um programa que simula o lançamento de dois dados, d1 e d2, n vezes, e tem
como saída o número de cada dado e a relação entre eles (> , < ou =)
12) Elabore um programa que faça a leitura de vários números inteiros, até que se digite
um número negativo. O programa deve retornar o maior e o menor número lido.
15) Faça um programa que gere um número aleatório de 1 a 1000. O usuário deve tentar
acertar qual o número foi gerado, e a cada tentativa o programa deverá informar se
o chute é menor ou maior do que o número gerado. O programa acaba quando o
usuário acerta o número gerado, e deve informar em quantas tentativas o número foi
descoberto.
16) Faça um algoritmo que converta uma velocidade expressa em km/h para m/s e vice-
versa. Você deve criar um menu com as duas opções de conversão e uma opção
para finalizar o programa. O usuário poderá fazer quantas conversões desejar, sendo
que o programa só será finalizado quando a opção de finalizar for escolhida.
17) Faça um programa que apresente um menu de opções para o cálculo das seguintes
operações entre dois números:
adição (opção 1);
subtração (opção 2);
multiplicação (opção 3);
divisão (opção 4);
saída (opção 5).
19) Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metros
e cresce 3 centímetros por ano. Escreva um programa que calcule e imprima em
quantos anos será necessário para que Zé seja mais alto que Chico.
27
20) Um funcionário recebe aumento anual. Em 1995, foi contratado por R$2000. Em
1996, ele recebeu um aumento de 1,5%. A partir de 1997, os aumentos sempre
correspondem ao dobro do ano anterior. Faça um programa que determine o salário
atual do funcionário
21) Escreva um programa que receba como entrada o valor do saque realizado pelo
cliente de um banco e retorne quantas notas de cada valor serão necessárias para
atender ao saque com a menor quantidade de notas possível. Serão utilizadas notas
de 100, 50, 20, 10, 5, 2 e 1 real.
22) Escreva um programa que leia um número inteiro positivo ´ n e em seguida imprima
n linhas do chamado Triangulo de Floyd. Para n = 6, temos:
1
23
456
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
23) Faça um programa que receba um número inteiro maior do que 1 e verifique se o
número fornecido é primo ou não.
28
Capítulo 06
A) Funções
Uma função é um bloco de código que executa uma tarefa específica quando é
chamado ou invocado. Ela é uma parte fundamental da estrutura de programação
modular e é usada para organizar e reutilizar o código.
def soma(a, b):
resultado = a + b
return resultado
numero_1 = 2
numero_2 = 3
r = soma(numero_1, numero_2)
29
print("A soma de", numero_1, "com", numero_2, "é", r)
Exercícios
1) Crie uma função que recebe como parâmetro um número inteiro e devolve o seu
dobro.
3) Faça uma função que receba 3 números inteiros como parâmetro, representando
horas, minutos e segundos, e os converta em segundos.
4) Faça uma função que receba uma temperatura como float e sua escala (Celsius ou
Fahrenheit) como string e converta-a para a outra escala. A fórmula de conversão é:
F = C * (9/5) + 32, sendo F a temperatura em Fahrenheit e C a temperatura em Celsius.
5) Elabore uma função que receba três notas de um aluno como parâmetros e uma
letra. Se a letra for 'A', a função deverá calcular a média aritmética das notas do
aluno. Se for 'P', deverá calcular a média ponderada, considerando pesos 5, 3 e 2.
6) Faça uma função que receba a data atual (dia, mês e ano em formato inteiro) e a
exiba na tela no formato textual por extenso. Por exemplo, para a data 01/01/2000,
imprima: '1 de janeiro de 2000'.
7) Escreva uma função que receba um número inteiro maior do que zero e retorne a
soma de todos os seus algarismos. Por exemplo, para o número 251, a soma seria 8
(2 + 5 + 1). Se o número lido não for maior do que zero, o programa terminará com a
mensagem 'Número inválido'.
8) Faça uma função que receba dois números inteiros positivos como parâmetros e
retorne a soma dos números inteiros existentes entre eles.
9) Crie uma função que receba como parâmetro um valor inteiro e gere como saída n
linhas com pontos de exclamação, conforme o exemplo abaixo (para n = 5):
!
!!
!!!
!!!!
!!!!!
10) Escreva uma função que gera um triângulo de altura n e lados com 2n-1 caracteres
na base. Por exemplo, a saída para n = 6 seria:
*
***
*****
*******
*********
***********
30
11) Faça uma função que receba um vetor de inteiros e retorne a quantidade de valores
pares que ele possui.
12) Faça uma função que receba um número n que é int e retorne uma lista com n
números aleatórios.
13) Crie uma função que receba dois vetores e retorne duas listas, uma contendo
somente os números pares das duas listas e outras contendo os números ímpares.
14) Crie uma função que receba uma frase e retorne a frase invertida, mas as palavras
não podem estar invertidas. Exemplo:
“Medir o progresso da programação por linhas de código é como medir o progresso
da construção de aeronaves em termos de peso.” – Bill Gates
"Peso de termos em aeronaves de construção da progresso o medir como é código
de linhas por programação da progresso o medir." - Bill Gates
15) Um professor aplicou quatro provas, cada uma valendo 25 pontos, ao longo do ano
para 100 alunos. As notas da primeira prova foram armazenadas em um vetor
separado, assim como as notas da segunda, terceira e quarta prova. Nesse caso, as
notas do primeiro aluno estão nas posições 0 de cada vetor. Agora, deseja-se criar
uma função que receba esses quatro vetores de 100 elementos e retorne um novo
vetor contendo a palavra "aprovado" na posição 0 se a soma das notas do primeiro
aluno em todas as provas for maior que 60. Caso contrário, a palavra "reprovado"
deve ser incluída na posição 0 do vetor de retorno.
16) Escreva uma função que compare duas strings e retorne verdadeiro caso uma seja
um anagrama da outra, e falso caso contrário.
17) Faça uma função que, dado um caractere qualquer, retorne o mesmo caractere
sempre em maiúsculo.
18) Crie uma função que receba qualquer quantidade de strings, float e int e em qualquer
ordem e retorne um texto com todos estes parâmetros na ordem em foram enviados.
Por exemplo, o código:
t1 = "Em "
n1 = 2022
t2 = ", o país registrou um aumento de "
n2 = 5
t3 = "% na produção industrial, alcançando um total de "
n3 = 3.2
t4 = " milhões de unidades fabricadas"
concatenando(t1, n1,t2 , n2, t3, n4, t4)
19) Crie uma função que é escreva um parágrafo de texto em uma língua estranha. A
função deve receber a quantidade de letras que a frase deve ter. Dica: use a função
random para escolher letras aleatórias, primeira letra deve ser maiúscula, defina um
tamanho máximo para as palavras, coloque vogais depois das consoantes. Exemplo:
“Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Etiam sit amet luctus ex. Donec
sit amet mattis quam, at interdum nunc. Fusce
diam mauris, imperdiet ac augue eget,
vestibulum rhoncus augue.”
B) Recursão
Caso Base: É a condição de parada que define quando a recursão deve terminar.
Quando a condição do caso base é atingida, a função recursiva para de chamar a si
mesma e retorna um resultado.
No entanto, é importante ter cuidado ao usar a recursão, pois ela pode levar a um
consumo excessivo de memória ou a um loop infinito se não for implementada
corretamente. Além disso, em alguns casos, pode ser mais eficiente usar uma
abordagem iterativa em vez de recursiva.
?a fazer?
Exercícios
20) Crie uma função recursiva que receba um número inteiro positivo N e calcule a soma
dos números de 1 a N.
21) Faça uma função recursiva que receba um número inteiro positivo N e imprima todos
os números naturais de 0 até N em ordem decrescente.
22) A multiplicação de dois números inteiros pode ser feita através de somas
sucessivas. Proponha um algoritmo recursivo, chamado MultipRec(n1, n2), que
calcule a multiplicação de dois inteiros.
23) Faça uma função recursiva que calcule e retorne o fatorial de um número inteiro N.
24) Crie uma função recursiva que receba dois inteiros positivos k e n e calcule k^n.
25) Faça uma função recursiva que calcule e retorne o N-ésimo termo da sequência
Fibonacci. Alguns números desta sequência são: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89...
26) Faça uma função recursiva que receba um número inteiro positivo N e imprima todos
os números naturais de 0 até N em ordem decrescente.
27) Dado um número n na base decimal, escreva uma função recursiva que converta este
número para binário.
28) Faça uma função recursiva que receba um o valor do troco que deve ser dado e
depois fale a quantidades de moedas e notas que devem ser dadas no troco.
33
Capítulo 07
A) Exceções
B) Manipulação de arquivos
XXX
34
Capítulo 08
A) Matrizes
XXX
35
Capítulo 09
Capítulo 10
C) Interface gráfica
37
38
Capítulo 11
Capítulo 12
Capítulo 13
F) Trabalho de Conclusão de Curso (TCC)