• Nenhum resultado encontrado

Introdução à Computação para Engenharia

N/A
N/A
Protected

Academic year: 2022

Share "Introdução à Computação para Engenharia"

Copied!
64
0
0

Texto

(1)

Mauro Cesar Bernardes 25/Fevereiro/2014

MAC2166

Introdução à Computação para Engenharia

- aulas 01 e 02 -

(2)

Agenda

Página graúna

Instalação do Python

Python Shell

Variáveis

Operadores relacionais

Operadores numéricos

Comando de saída print()

Comando de entrada input()

Conversor de tipo int()

Exemplos de problemas

Comando while

Comando if, elif, else

(3)

http://grauna.ime.usp.br

(4)

http://python.org/download/

(5)

Python Shell

(6)

Python Shell

(7)

Variáveis

São nomes dados a áreas de memória

Esses nomes podem ser compostos de algarismos, letras ou _

O primeiro caractere não pode ser um algarismo

Palavras reservadas (print, if, while, etc) não podem ser utilizadas para variáveis (veremos isso mais à frente...)

Exemplos de nomes de variáveis:

Após definidas, armazenam informações que podem ser alteradas.

Servem para:

Guardar valores intermediários

Construir estruturas de dados

nota  (correto) aluno01  (correto) 1aluno  (incorreto) _x  (correto) nota!01  (incorreto) nota 01  (incorreto)

(8)

Atribuição

Uma variável é modificada usando o comando de atribuição:

<var> = <expressão>

É possível também atribuir a várias variáveis simultaneamente:

var1,var2,...,varN = expr1,expr2,...,exprN

Exemplos:

nota_maxima = 10

a = 2

c = a

b = c

soma = nota_maxima

fator = 3

x1, x2, x3 = 5,4,7

(9)

Atribuição

(10)

Variáveis: revisão

• Nomes de variáveis devem obrigatoriamente iniciar com uma letra ou sublinhado (_).

• Podem conter números e o símbolo sublinhado (_)

Exemplos de nomes válidos e inválidos

Nome Válido?

a1

velocidade Velocidade90 Salario medio Salario_medio

_b 1a

sim

sim

sim

não

sim

sim

não

(11)

Operadores numéricos

Operador Descrição

+ Adição

- Subtração

* Multiplicação

/ Divisão

// Divisão inteira

% Módulo (resto da divisão)

** Potência

(12)

Operadores numéricos

(13)

Operadores relacionais

Utilizados para realização de comparações Também chamados expressões lógicas

Resultam em verdadeiro (True) ou falso (False)

Símbolo matemático

Operador Python

operação

= = = Igualdade

> > Maior que

< < Menor que

≠ != diferente

≥ >= Maior ou igual

≤ <= Menor ou igual

(14)

Operadores relacionais

Utilizado para realização de comparações

(15)

Primeiros comandos em Python

Saída de dados: print()

Entrada de dados: input()

(16)

Saída: print()

Forma geral: print (expr,expr,...)

Os valores das expressões são escritos um após o outro sem pular de linha:

>>> print ("1.001 ao quadrado é ",1.001**2) 1.001 ao quadrado é 1.002001

Por exemplo:

>>> aluno = 1234

>>> nota = 8.5

>>> print ("A nota do aluno", aluno, "é", nota A nota do aluno 1234 é 8.50

(17)

Entrada: input()

• O input() permite interagir com o usuário (normalmente atribuindo valor a uma variável)‏

– Formato: input("mensagem")‏

– onde mensagem é uma string opcional que será exibida para orientar quanto ao valor que se espera.

Exemplo:

– >>> a = input("Entre com um número: ")‏

– Entre com um número: 21 – >>> print (a)

– 21

(18)

O comando input() espera que se digite algo que faça sentido do lado direito de um sinal de atribuição.

Exemplo:

– >>> print (a) – 19

– >>> b = input()‏

– 15

– >>> b – 15

– >>> c = input("entre com um número: ")‏

– entre com um número: 37

Entrada: input()

(19)

Mas Atenção!!!!

Analise o trecho abaixo

Entrada: input()

Algo errado??

(20)

O comando input() lê o que for digitado no

teclado como uma sequência de caracteres (string), incluindo os números.

Entrada: input()

Para a conversão de um caractere em um número inteiro, devemos utilizar

int()

(21)

Entrada: input()

(22)

Entrada: input()

(23)

Python Shell

(24)

Python Shell

(25)

Python

(26)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Primeira tentativa:

a = 3 b = 4

soma = a + b

print("A soma de a + b é igual a soma")

(27)

Python: Edição

(28)

Python: Execução

(29)

Python: Resultado

(30)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Segunda tentativa:

a = 3 b = 4

soma = a + b

print("A soma de a + b é igual a", soma)

(31)

Python: Resultado

(32)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Terceira tentativa:

a = 3 b = 4

soma = a + b

print("A soma de", a, "+", b, "é igual a", soma)

(33)

Python: Resultado

(34)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Quarta tentativa:

a = input("Digite o primeiro número: ") b = input("Digite o segundo número: ") soma = a + b

print("A soma de", a, "+", b, "é igual a", soma)

(35)

Python: Resultado

(36)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Quinta tentativa:

atexto = input("Digite o primeiro número: ") btexto = input("Digite o segundo número: ") a = int(atexto)

b = int(btexto) soma = a + b

print("A soma de", a, "+", b, "é igual a", soma)

(37)

Python: Resultado

(38)

PROBLEMA 0:

Dados dois inteiros, calcular a sua soma.

• Sexta tentativa:

a = int(input("Digite o primeiro número: ")) b = int(input("Digite o segundo número: ")) soma = a + b

print("A soma de", a, "+", b, "é igual a", soma)

(39)

Python: Resultado

(40)

Exercício

• Faça um programa que leia dois valores inteiros, armazene os valores nas variáveis y e z, calcule o valor de x de acordo com a fórmula abaixo e

apresente o resultado.

x = y^2 + z/5

(41)

Estrutura de repetição: while

• Utilizadas para executar partes de um programa várias vezes, normalmente dependendo de uma condição.

while <condição>:

comando_1 comando_2 comando_3

comando_fora_do_while

x=1

while x<3:

print(x) x = x + 1

print("fim do programa")

while

:

repete um bloco de comandos enquanto uma condição for verdadeira.

Exercício1: Faça um programa que imprima os números pares de 1 a 10

Exercício2: Faça um programa que leia um número n e imprima os valores pares de 0 a n

(42)

Problema 1:

Leia uma sequência de números inteiros diferentes de zero e calcule sua soma. O programa deverá terminar quando for

digitado um zero.

Por exemplo, para a sequência:

12 17 4 -6 8 0

o seu programa deve escrever o número

35

.

num = int(input("Digite um inteiro: ")) soma = 0

while num != 0:

soma = soma + num

num = int(input("Digite um inteiro: ")) print("A soma é", soma)

(43)

Python: Resultado

(44)

Problema 2:

Dados números inteiros n e k, com k>=0, determinar n

k

. Por exemplo, dados os números 3 e 4 o seu programa

deve escrever o número 81.

n = int(input("Digite o valor de n: ")) k = int(input("Digite o valor de k: ")) pot = 1

i = 1

while i <= k:

pot = pot*n i = i + 1

print("A potencia é", pot)

print("O valor de %d elevado a %d é %d" %(n, k, pot))

(45)

Python: Resultado

(46)

Problema 3:

Dado um número inteiro n >= 0, calcular n! .

n = int(input("Digite o valor de n: ")) fat = 1

i = 2

while i <= n:

fat = fat*i i = i + 1

print("O valor de %d! é =" % n, fat)

(47)

Python: Resultado

(48)

Condições: if, else

• Condições servem para selecionar quando uma parte do programa deve ser executada ou quando deve ser

simplesmente ignorada

if <condição>:

comando_1 comando_2

comando_fora_do_if

a=int(input("valor 1:")) b=int(input("valor 2:")) if a > b:

print("maior valor:", a) print("fim do programa")

if <condição>:

comando_1 comando_2 else:

comando_3 comando_4

comando_fora_do_if_else

a=int(input("valor 1:")) b=int(input("valor 2:")) if a>b:

print("maior valor:", a) else:

print("maior valor:", b) print("fim do programa")

Mas e se a for igual a b????

(49)

Condições: if, elif, else

if <condição>:

comando_1 comando_2

elif <condição>:

comando_3 comando_4

elif <condição>:

comando_5 comando_6 else:

comando_7 comando_8

comando_fora_do_if_else

a=int(input("valor 1:")) b=int(input("valor 2:")) if a > b:

print("maior valor:", a) elif a==b:

print(a,"=",b) else:

print("maior valor:", b) print("fim do programa")

(50)

Problema 4:

Dados um número inteiro n, n>0, e uma sequência com n números inteiros, determinar a soma dos inteiros positivos

da sequência. Por exemplo, para a sequência de 6 números

-2 7 0 -5 8 4

o seu programa deve escrever o número 19.

n = int(input("Digite o tam da seq: ")) soma = 0

while n > 0:

num = int(input("Digite um num da seq: ")) n = n - 1

if num > 0:

soma = soma + num

print("A soma dos positivos é", soma)

(51)

Python: Resultado

(52)

Problema 5:

Dados um número inteiro n, n>0, e uma sequência com n números inteiros, determinar a soma dos inteiros positivos e a soma dos inteiros negativos da sequência. Por exemplo, para a sequência

6

-2 7 0 -5 8 4

o seu programa deve escrever os números 19 e -7.

n = int(input("Digite o tam da seq: ")) somap = 0

soman = 0

while n > 0:

num = int(input("Digite um num da seq: ")) if num > 0:

somap = somap + num else:

soman = soman + num n = n – 1

print("A soma dos positivos é", somap) print("A soma dos negativos é", soman)

(53)

Python: Resultado

(54)

Tabela Verdade: Operador and (e)

O resultado é verdadeiro apenas quando todos os operadores forem verdadeiros

v1 V2 v1 and v2

True True

True False False True False False

True

False

False

False

(55)

Tabela Verdade: Operador or (ou)

O resultado é falso apenas quando todos os operadores forem falsos

v1 V2 v1 or v2

True True

True False False True False False

True

True

True

False

(56)

Tabela Verdade: Operador not (não)

O resultado é uma inversão do valor

v1 not v1

True False

False True

(57)

Operadores lógicos

• Utilizados para agrupar operações com lógica booleana

• Python permite a utilização de três operadores lógicos:

and (e), or (ou), not (não)

Operador Python Operação

and e

or ou

not não

(58)

Problema 6:

Dados um número inteiro n>0 e as notas de n alunos, determinar quantos ficaram de recuperação. Um aluno está de recuperação se sua

nota estiver entre 30 e 50 (nota máxima é 100).

n = int(input("Digite n: ")) rec = 0

cont = 0

while cont < n:

media = int(input("Digite uma nota: ")) if media >= 30 and media < 50:

rec = rec + 1 cont = cont + 1

print(rec, "alunos ficaram de recuperação")

(59)

Python: Resultado

(60)

Exercícios:

(Entregar em 11/03)

(variáveis, input e print)

1. Faça um programa que leia 2 números inteiros (entrada) e imprima (saída) a sua média aritmética.

2. Faça um programa que leia um número inteiro e imprima o seu antecedente e o seu sucessor.

3. Faça um programa que leia um valor (inteiro) de uma conta em uma lanchonete, representando o gasto realizado pelo cliente e imprima o valor total a ser pago, considerando que o restaurante cobra 10% para o garçom.

4. Faça um programa que leia dois valores inteiros, sendo um para hora e outro para minutos, que representam a hora corrente e informe quantos segundos se passaram deste o início do dia (0h).

(61)

Exercícios: Entregar em 11/03

de Segunda a Quinta (2, 3, 4 e 5) Sexta, Sábado e Domingo (6, 7 e 1)

acima de 65 ou abaixo de 12 anos

60% 40%

entre 12 e 65 anos 35% 5%

5. Faça um programa que leia um número e diga se ele é par ou ímpar

6. Faça um programa que leia 2 números e imprima uma mensagem informando maior deles. Detalhe: se os números forem iguais, imprima uma mensagem avisando ao usuário que são iguais.

7. Faça um programa que informe o maior valor de 3 números lidos.

8. Faça um programa que leia três notas de um aluno, calcule sua média aritmética e imprima uma mensagem dizendo se o aluno foi aprovado, reprovado ou deverá fazer prova de recuperação. O critério de aprovação é o seguinte:

aprovado (média  5); reprovado (média < 3) e prova de recuperação( 3  média < 5).

9. Faça um programa que leia 3 números e imprima uma das seguintes mensagens:

todos os números são iguais;

todos os números são diferentes; ou apenas dois números são iguais.

10. Faça um programa que leia 3 números e imprima o valor intermediário, entre o menor e o maior número. Suponha que o usuário irá fornecer três números diferentes.

11. Faça um programa que leia 3 números e os imprima em ordem decrescente.

12. Um cinema faz descontos no seu preço relativos ao dia da semana e a idade dos clientes. Faça um programa que leia o preço normal de um ingresso, o dia na semana e a idade do cliente e informe o preço final. As datas da semana são representados por números de 1 a 7 e os descontos seguem a tabela abaixo

(62)

Exercícios para estudo

• Resolver os exercícios de 1 a 6 disponíveis em:

• http://www.ime.usp.br/~macmulti/exercicios/

inteiros/index.html

(63)

Atenção!!!

• Fiquem atentos à publicação do primeiro Exercício Programa (EP1) na página graúna.

• Data para entrega: 15/03

(64)

Para mais informações

• http://grauna.ime.usp.br

• http://www.greenteapress.com/thinkpython/t hinkpython.html

• http://www.ime.usp.br/~mcesar

• mcesar@usp.br

Referências

Documentos relacionados

 Averiguar se os alunos do Ensino Fundamental, que estão cursando o 8º ano, compreenderam o conteúdo dos Números Inteiros e se os mesmos sabem fazer cálculos simples,

Números inteiros: conjunto Z e seus subconjuntos, representação dos números inteiros na reta numerada, valor absoluto de um número inteiro, operações com números inteiros

Números inteiros: conjunto Z e seus subconjuntos, representação dos números inteiros na reta numerada, valor absoluto de um número inteiro, operações com números inteiros

Para cada número inteiro N  1 , existe um sistema matemático no qual dizemos que dois ou mais números inteiros positivos são congruentes quando eles deixam o mesmo

Desenvolva um algoritmo que leia uma sequência de números inteiros, calcule e imprima a soma dos valores lidos... Desenvolva um algoritmo que leia uma sequência de números

● Quantos bits precisamos para representar 1 bilhão de valores distintos?... ○ Como

acessíveis, compatível com o plano diretor no qual está inserido, que disponha sobre os passeios públicos a serem implantados ou reformados pelo poder público, com vistas a

Para isso, o Grupo de Estudos Arqueométrico do IPEN-CNEN/SP, vêm estudando os resultados por meio de diversos métodos estatísticos tais como análise de agrupamento, análise