- é uma sequência ordenada de instruções que visa resolver determinado problema.
- algoritmos e programas não são sinônimos.
- formas mais comuns de representação algorítmica na computação:
- fluxogramas (diagramas de blocos).
- pseudocódigos (através de texto, com uma linguagem que apresenta estrutura formasl).
É composto de ao menos duas partes: IDE e interpretador (ou compilador, dependendo da linguagem).
a. Compilada
: o código é transformado em um arquivo executável que está em código de máquina e pode ser executado por ela. Ou seja, precisamos gerar um código de máquina para cada arquitetura em que quisermo rodar nosso software (Windows, MacOS, Linux).
b.Interpretada
: o código original não é transformado em código de máquina; é interpretado, ou seja, qualquer máquina que tiver um interpretador instalado conseguirá rodar o código original!
No caso do Python, há duas versões da linguagem: Python 2.x e Python 3.x. Será utilizada a versão 3.
O download pode ser realizado aqui.
Toda linguagem de programação possui algumas palavras reservadas
, que têm algum significado dentro daquela linguagem (podem ser comandos, por exemplo, que realizam tarefas específicas).
Outro conceito importante é o de variável
, que comsiste em um espaço que um programa pode reservar na memória RAM do computador, para armazenar temporariamente alguns dados. O Python entende que uma palavra escrita do lado esquerdo do sinal de igual é uma variável, e cria automaticamente!
Comentários
: não serão executados, mas facilitam a compreensão/organização do código. Podemos utilizar o sinal # (cerquilha) e, para comentários com mais de uma linha, aspas triplas:"""texto""".
Usado para exibir uma mensagem na tela do computador.
print ("Olá, mundo!")
Utilizado para para permitir que os usuários digitem informações dentro de variáveis.
Sintaxe:
nome_variavel = input (“Mensagem de texto :”)
Exemplo:
nome = input("Por favor, digite seu nome: ")
print(nome + "é um programador incrível!")
Exibe os tipos das variáveis indicadas.
Exemplo:
valor1 = input("Por favor, digite o primeiro valor: ")
valor2 = input("Por favor, digite o segundo valor: ")
soma = valor1 + valor2
print("A soma entre os valores é " + soma)
print(type(valor1))
print(type(valor2))
# nesse caso, a execução do script indica que as variáveis estão sendo tratadas como strings!
IDEs (Integrated Development Environment):
- ferramentas usadas para escrever programas em uma linguagem de programação específica.
- não contêm apenas os editores de texto, mas ferramentas que permitem verificar erros no código, executar o programa diretamente no interpretador ou compilador e, em alguns casos, montar interfaces gráficas.
print("Esse programa exibirá seu nome completo. ")
nome = input("Por favor, digite seu primeiro nome: ")
sobrenome = input("Por favor, digite seu sobrenome: ")
nome_completo = nome + " " + sobrenome
print("Seu nome completo é: " + nome_completo)
diretório fase01 > projetos > PrimeiroProjeto, arquivo nome_sobrenome.py
Em Python, os principais são: de atribuição, aritméticos, relacionais, lógicos, de identidade e de associação.
Utilizados para incluir/associar valores a uma variável ou objeto.
Operador | Exemplo | Equivalência |
---|---|---|
= | x = 3 | x = 3 |
+= | x += 1 | x = x + 1 |
-= | x -= 1 | x = x - 1 |
*= | x *= 2 | x = x * 2 |
/= | x /= 2 | x = x / 2 |
%= | x %= 2 | x = x % 2 |
Exemplos:
# Atribuição da soma de dois números inteiros:
resultado = 2 + 3
print("Resultado:", resultado)
# Somando dois ao valor anterior da variável
resultado += 2
print("Resultado:", resultado)
# Atribuição de um texto (string)
nome = "Pedro"
print("Olá,", nome, ", tudo bem?")
# Saída f"string" com a variável entre chaves
nome2= "Maria"
print(f"Olá, {nome2}. Tudo bem?")
diretório fase01 > projetos > Operadores, arquivo operadores_de_atribuicao.py
Utilizados quando precisamos realizar cálculos aritméticos.
Operador | Operação | Precedência |
---|---|---|
+ | Adição | Menor prioridade |
- | Subtração | - |
* | Multiplicação | - |
/ | Divisão | - |
// | Divisão inteira | - |
% | Resto da divisão ou módulo | - |
** | Exponenciação ou potenciação | Maior prioridade |
Observações:
- Quando utilizados operadores aritméticos de mesma prioridade, as operações são realizadas da esquerda para direita.
- Parênteses podem ser utilizados para priorizar uma operação.
- A linguagem utiliza ponto (e não vírgula) para representar a parte fracionária de um número do tipo real.
# Sem parênteses, operações por ordem de prioridade:
resultado = 2 + 3 / 2
print("Resultado: ", resultado)
# Utilizando parênteses:
resultado = (2 + 3) / 2
print("Resultado: ", resultado)
diretório fase01 > projetos > Operadores, arquivo operadores_aritmeticos.py
Utilizados quando precisamos realizar comparações.
O resultado de uma comparação será True ou False. Na linguagem Python, são utilizadas as palavras-chaves True e False, que são objetos que armazenam, respectivamente, os valores 1 e 0.
Operador | Função | Exemplo |
---|---|---|
== | Igual | 5 == 5 |
!= | Diferente | 5 != 5 |
> | Maior que | 5 > 5 |
< | Menor que | 5 < 5 |
>= | Maior igual | 5 >= 5 |
<= | Menor igual | 5 <= 5 |
print(1 == 5)
print(1 != 5)
print(1 > 2)
print(1 < 2)
print(1 >= 2)
print(2 <= 2)
print(1 == True)
print(0 == False)
diretório fase01 > projetos > Operadores, arquivo operadores_relacionais.py
Operador | Exemplo | Equivalência |
---|---|---|
or | A or B | ou |
and | A and B | e |
not | not A | não |
A = 1 == 2
B = 2 > 3
print(A)
print(B)
#Operações
print(A and B)
print(A or B)
print(not A)
print(not B)
print(8 >= 5 and 8 <= 10)
diretório fase01 > projetos > Operadores, arquivo operadores_logicos.py
- conhecido como inversor.
- representa a negação do valor de entrada (inverso).
- se a entrada for True, a saída será False, e vice-versa.
A | not A |
---|---|
True | False |
False | True |
- conhecido como conjunção.
- terá como saída o valor True apenas se ambos os operandos forem True.
A | B | A and B |
---|---|---|
False | False | False |
False | True | False |
True | False | False |
True | True | True |
- conhecido como disjunção.
- a saída será False apenas se ambos os operandos forem False. Nos demais casos, a saída será True.
A | B | A or B |
---|---|---|
False | False | False |
False | True | True |
True | False | True |
True | True | True |
Utilizados para averiguarse um objeto está contido em uma sequência.
Operador | Exemplo |
---|---|
in | "s" in resposta |
not in | "s" not in resposta |
Exemplo:
resposta = "sim"
texto = "Brasil"
print("s" in resposta)
print("n" not in resposta)
print("b" in texto)
print("B" in texto)
diretório fase01 > projetos > Operadores, arquivo operadores_de_associacao.py
Utilizados quando precisamos comparar se dois objetos utilizam a mesma posição de memória no Python.
Operador | Exemplo |
---|---|
is | n1 is n2 |
is not | n1 is not n2 |
O método id()
retorna o endereço de memória de um objeto, portanto podemos utilizá-lo em conjunto com o comando print para exibir este endereço em tela!
Exemplo:
cidade_p1 = "São Paulo"
cidade_p2 = "São Paulo"
cidade_p3 = "Rio de Janeiro"
print(id(cidade_p1))
print(id(cidade_p2))
print(id(cidade_p3))
print(cidade_p1 is cidade_p2)
print(cidade_p1 is not cidade_p3)
print(cidade_p1 is cidade_p3)
Operador | Função | Precedência |
---|---|---|
( ) | Parênteses | Maior prioridade |
** | Exponenciação | - |
+x, -x | Sinal | - |
*, /, //, % | Multiplicação, divisão, divisão inteira e módulo | - |
+, - | Soma e subtração | - |
<, <=, >, >= | Relacionais | - |
==, != | Igual e diferente | - |
is, is not | Identidade | - |
in, not in | Associação | - |
not | não | - |
and | e | - |
or | ou | - |
=, +=, -=, *=. /=, %= | Atribuição | Menor prioridade |
Tipos básicos | Descrição | Exemplo |
---|---|---|
int | Números inteiros | 1, 2, 100 |
float | Números reais (ponto flutuante) | 1.5, 2.07, 50.29 |
complex | Números complexos | 4j, 5+2j, 15j |
bool | Valores lógicos | True, False, 1, 0 |
string | Textos | "a", "texto", "10" |
- receber dois valores do usuário;
- realizar as 4 operações básicas: soma, subtração, divisão e multiplicação.
Algoritmo "Soma"
Variáveis
valor1, valor2, soma, divisao, subtracao, multiplicacao: real
Início
Escreva "Digite o primeiro valor"
Leia valor1
Escreva "Digite o segundo valor"
Leia valor2
soma = valor1 + valor2
Escreva "A soma é ", soma
subtracao = valor1 -valor2
Escreva "A subtração é ", subtracao
divisao = valor1 / valor2
Escreva "A divisão é ", divisao
multiplicacao = valor1 * valor2
Escreva "A multiplicação é ", multiplicacao
Fim
valor1 = input("Digite o primeiro número: ")
valor2 = input("Digite o segundo número: ")
# print(type(valor1))
# print(type(valor2))
# indicam que as variáveis são strings
# portanto, convertê-las para float:
soma = float(valor1) + float(valor2)
print("A soma entre os dois valores é igual a {}".format(soma))
# .format() é um recurso do Python que permite escrever um texto,
# indicando os locais onde serão incluídos valores de variáveis!
subtracao = float(valor1) - float(valor2)
print("A subtração entre os dois valores é igual a {}".format(subtracao))
multiplicacao = float(valor1) * float(valor2)
print("A multiplicação entre os dois valores é igual a {}".format(multiplicacao))
divisao = float(valor1) / float(valor2)
print("A divisão entre os dois valores é igual a {}".format(divisao))
diretório fase01 > projetos > calculadora, arquivo calculadora.py
Criar um algoritmo que calcule a velocidade média, a partir de duas informações: a distância que o patinete percorreu e o tempo que demorou.
print("Este programa calcula a velocidade média de um patinete elético!")
distancia = input("Informe a distância percorrida pelo patinete (em metros): ")
tempo = input("Quantos minutos demorou para percorrer essa distância? ")
velocidade_media = float(distancia) / float(tempo)
# print("O patinete atingiu uma velocidade média de {} m/min".format(velocidade_media))
# para limitar a quantidade de casas decimais da variável velocidade_media:
# para exibir 2 casas, indicar {0:.2f}, para exibir 1 casa {0:.1f}, etc
print("O patinete atingiu uma velocidade de {0:.2f} m/min".format(velocidade_media))
diretório fase01 > projetos > patineteEletrico, arquivo patinete.py
A linguagem compilada gera um executável que está em linguagem de máquina e precisa ser gerado de acordo com a arquitetura em que quisermos rodar o software. A linguagem interpretada não altera o código-fonte e necessita de um interpretador instalado para que possa executar o software.
2. A palavra "algoritmo" é muito utilizada no meio tecnológico. Assinale a alternativa que melhor define a palavra "algoritmo".
Algoritmo é qualquer sequência de instruções para atingir um objetivo, por exemplo: Cálculo do Máximo Divisor Comum.
Operadores relacionais são utilizados quando precisamos realizar comparações.
4. As linguagens de programação possuem algumas palavras reservadas. Selecione a alternativa que define melhor o conceito.
Palavras reservadas são palavras que possuem algum significado dentro de uma linguagem de programação. Por exemplo, comandos.
Os operadores de associação são utilizados para verificar se um objeto está contido em uma sequència.