Teórica
Transcrição
Teórica
Computação 1 - Python Aula 11 - Teórica Interação com o usuário e programa principal João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 29 Interação com o Usuário print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 >>> print "A soma de 2 e 3 é ",soma(2,3) A soma de 2 e 3 é 5 João Carlos, Carla Delgado, Ana Luisa Duboc 2/ 29 Interação com o Usuário print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return print numero1 + numero2 ATENÇÃO: NÃO USE O PRINT DESTA FORMA ! João Carlos, Carla Delgado, Ana Luisa Duboc 3/ 29 Interação com o Usuário print exp1,exp2,exp3 → próximo print na linha seguinte. print exp1,exp2,exp3, → próximo print na mesma linha. print "Eu" print "saio", "no bloco" print "Suvaco do Cristo" Eu saio no bloco Suvaco do Cristo print "Eu" print "saio", "no bloco", print "Suvaco do Cristo" Eu saio no bloco Suvaco do Cristo João Carlos, Carla Delgado, Ana Luisa Duboc 4/ 29 Interação com o Usuário ”\n” é usado para quebra de linha quando usado dentro de uma string. >>> print "Meu nome é José \n e eu tenho 10 anos" Meu nome é José e eu tenho 10 anos >>> print "A soma de 2 e 3 é : \n", soma(2,3) A soma de 2 e 3 é : 5 >>> print "A soma de 2 e 3 é : ", soma(2,3) A soma de 2 e 3 é : 5 João Carlos, Carla Delgado, Ana Luisa Duboc 5/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. João Carlos, Carla Delgado, Ana Luisa Duboc 6/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 João Carlos, Carla Delgado, Ana Luisa Duboc 6/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 vamos definir a função principal do nosso programa. João Carlos, Carla Delgado, Ana Luisa Duboc 6/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 vamos definir a função principal do nosso programa. # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 6/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 vamos definir a função principal do nosso programa. # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() Observe que ao executar o programa, o resultado aparece direto na tela, sem precisar chamar a função main(). João Carlos, Carla Delgado, Ana Luisa Duboc 6/ 29 Interação com o Usuário Por que função main() ? Considere que você salvou as funções soma e main no arquivo MeuPrograma.py # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 7/ 29 Interação com o Usuário Por que função main() ? Considere que você salvou as funções soma e main no arquivo MeuPrograma.py # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() Suponha que você fez a função vezes5, salvando-a no arquivo Auxiliar.py: from MeuPrograma import * # Multiplica por 5 o resultado da função soma # int,int → int def vezes5(numero1,numero2): return 5*soma(numero1,numero2) João Carlos, Carla Delgado, Ana Luisa Duboc 7/ 29 Interação com o Usuário Por que função main() ? Note que ao invés de copiar a função soma do arquivo MeuPrograma.py para Auxiliar.py, apenas importamos as funções de MeuPrograma.py para Auxiliar.py # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() from MeuPrograma import * # Multiplica por 5 o resultado da função soma # int,int → int def vezes5(numero1,numero2): return 5*soma(numero1,numero2) João Carlos, Carla Delgado, Ana Luisa Duboc 8/ 29 Interação com o Usuário Por que função main() ? Se você executar MeuPrograma.py, aparecerá ”A soma de 2 e 3 é: 5”. Se você executar Auxiliar.py, nada acontecerá, a menos que você chame a função vezes5. Por exemplo, vezes5(2,3) retornará 25. Por que isto ocorre ? # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() from MeuPrograma import * # Multiplica por 5 o resultado da função soma # int,int → int def vezes5(numero1,numero2): return 5*soma(numero1,numero2) João Carlos, Carla Delgado, Ana Luisa Duboc 9/ 29 Interação com o Usuário Por que função main() ? Ao definir a função main() em MeuPrograma.py, estamos requerendo que os comandos dentro dela sejam executados ao executarmos este arquivo. O comando ”if name == ” main :” serve para verificar se estamos ou não rodando MeuPrograma.py diretamente. Se estivermos, o teste do if será True e a função main() será executada. É isso que ocorre quando executamos MeuPrograma.py. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 10/ 29 Interação com o Usuário Por que função main() ? Já quando estamos executando Auxiliar.py, importamos as funções do arquivo MeuPrograma.py. Mas o comando ”if name == ” main :” não será satisfeito (será False), uma vez que quem está sendo executado é Auxiliar.py e não MeuPrograma.py. Logo a função main() não será executada, e a resposta de Auxiliar.py será nada a menos que se chame a função vezes5 , ou alguma função do arquivo importado. from MeuPrograma import * # Multiplica por 5 o resultado da função soma # int,int → int def vezes5(numero1,numero2): return 5*soma(numero1,numero2) João Carlos, Carla Delgado, Ana Luisa Duboc 11/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): print ”A soma de 2 e 3 é:”,soma(2,3) if name == ” main ”: main() Note que chamamos a função soma com valores fixos (2 e 3). Como fazer para que o usuário possa entrar com dois valores quaisquer? João Carlos, Carla Delgado, Ana Luisa Duboc 12/ 29 Interação com o Usuário input(texto) : permite que você entre com um valor >>> numero1= input("Qual o primeiro número? ") João Carlos, Carla Delgado, Ana Luisa Duboc 13/ 29 Interação com o Usuário input(texto) : permite que você entre com um valor >>> numero1= input("Qual o primeiro número? ") Qual o primeiro número? João Carlos, Carla Delgado, Ana Luisa Duboc 14/ 29 Interação com o Usuário input(texto) : permite que você entre com um valor >>> numero1= input("Qual o primeiro número? ") Qual o primeiro número? 7 João Carlos, Carla Delgado, Ana Luisa Duboc 15/ 29 Interação com o Usuário input(texto) : permite que você entre com um valor >>> numero1= input("Qual o primeiro número? ") Qual o primeiro número? 7 >>> numero1 7 João Carlos, Carla Delgado, Ana Luisa Duboc 16/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar 2 números inteiros e imprima na tela o resultado da função soma para estes dois números. # Função que soma dois números inteiros # int,int → int def soma(numero1,numero2): return numero1 + numero2 # Função Principal def main(): numero1 = input( ”Qual o primeiro número? ” ) numero2 = input( ”Qual o segundo número? ” ) print ”A soma de ”,numero1,” e ”, numero2, ” é ”, soma(numero1,numero2) if name == ” main ”: main() Execute o programa ! João Carlos, Carla Delgado, Ana Luisa Duboc 17/ 29 Interação com o Usuário input : Armazena o valor passado (int, long, float, complex, str) raw input (versões 2.x): É usado para ler uma string na versão 2.x; João Carlos, Carla Delgado, Ana Luisa Duboc 18/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar uma quantidade indeterminada de números até que seja digitado um número negativo. O programa deve armazenar os números lidos numa lista. Depois disso, o programa deve imprimir a lista e a soma de todos os números da lista. João Carlos, Carla Delgado, Ana Luisa Duboc 19/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar uma quantidade indeterminada de números até que seja digitado um número negativo. O programa deve armazenar os números lidos numa lista. Depois disso, o programa deve imprimir a lista e a soma de todos os números da lista. # # # # Programa que lê uma quantidade indeterminada de números e os armazena em uma lista Imprime a soma de todos os números da lista Função Principal def main(): lista = [ ] numero = input( ”Digite um número: ”) while numero >= 0: list.append(lista,numero) numero = input( ”Digite um número: ”) print lista print ”A soma dos números é ”,sum(lista) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 19/ 29 Interação com o Usuário Faça um programa que peça ao usuário para digitar uma quantidade indeterminada de números até que seja digitado um número negativo. O programa deve armazenar os números lidos numa lista. Depois disso, o programa deve imprimir a lista e a soma de todos os números da lista. João Carlos, Carla Delgado, Ana Luisa Duboc 20/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. João Carlos, Carla Delgado, Ana Luisa Duboc 21/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 1o Passo: Como ler usando o input() ? João Carlos, Carla Delgado, Ana Luisa Duboc 21/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 1o Passo: Como ler usando o input() ? Lendo no formato de lista: João Carlos, Carla Delgado, Ana Luisa Duboc 21/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 1o Passo: Como ler usando o input() ? Lendo no formato de lista: # Primeira Opção de Programa # Função Principal def main(): matriz = input( ”Digite uma matriz : ”) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 21/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 1o Passo: Como ler usando o input() ? Lendo elemento por elemento: João Carlos, Carla Delgado, Ana Luisa Duboc 22/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 1o Passo: Como ler usando o input() ? Lendo elemento por elemento: # Segunda Opção de Programa # Função Principal def main(): matriz = [] numLinhas, numColunas = input( ”Digite o número de linhas e colunas : ”) for i in range(numLinhas): linha = [ ] for j in range(numColunas): valor = input( ”Digite o elemento [”+str(i)+”] [”+ str(j)+”]: ”) list.append(linha,valor) list.append(matriz,linha) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 22/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 2o Passo: Fazer uma função para contar o número de elementos pares de uma matriz. João Carlos, Carla Delgado, Ana Luisa Duboc 23/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 2o Passo: Fazer uma função para contar o número de elementos pares de uma matriz. # Função que conta o número de elementos # pares em uma matriz # list → int def contaPares(matriz): total = 0 for i in range(len(matriz)): for j in range(len(matriz[0])): if matriz[i][j] % 2 == 0: total += 1 return total # Primeira Opção de Programa # Função Principal def main(): matriz = input( ”Digite uma matriz : ”) pares = contaPares(matriz) print ”O total de números pares é ”,pares if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 23/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? João Carlos, Carla Delgado, Ana Luisa Duboc 24/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? Imprimindo no formato de lista: João Carlos, Carla Delgado, Ana Luisa Duboc 24/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? Imprimindo no formato de lista: # Primeira Opção de Programa # Função Principal def main(): matriz = input( ”Digite uma matriz : ”) pares = contaPares(matriz) print ”O total de números pares é ”,pares print ”A matriz lida foi: \n ”,matriz if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 24/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? Imprimindo no formato de matriz: João Carlos, Carla Delgado, Ana Luisa Duboc 25/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? Imprimindo no formato de matriz: # Função para imprimir em formato de matriz # list → sem saida def imprimirMatriz(matriz): for i in range(len(matriz)): for j in range(len(matriz[0])): print matriz[i][j], #um número ao lado do outro print #pula linha return # Primeira Opção de Programa # Função Principal def main(): matriz = input( ”Digite uma matriz : ”) pares = contaPares(matriz) print ”O total de números pares é ”,pares print ”A matriz lida foi: ” imprimirMatriz(matriz) if name == ” main ”: main() João Carlos, Carla Delgado, Ana Luisa Duboc 25/ 29 Interação com o Usuário - Matrizes Faça um programa que leia uma matriz digitada pelo usuário e conte quantos números pares existe na matriz, imprimindo o resultado na tela. Imprima a matriz na tela também. 3o Passo: Como imprimir a matriz na tela ? Imprimindo no formato de matriz: # Função para imprimir em formato de matriz # list → sem saida def imprimirMatriz(matriz): for i in range(len(matriz)): for j in range(len(matriz[0])): print matriz[i][j], #um número ao lado do outro print #pula linha return João Carlos, Carla Delgado, Ana Luisa Duboc 26/ 29 Interação com o Usuário Faça o programa do jogo: “Acerte os números”. Inicialmente, leia diversos números inteiros entrados pelo dono da casa de aposta, guardando numa lista. A leitura termina quando o dono digitar um número negativo. Em seguida o apostador poderá entrar com vários números para verificar o seu acerto. Caso acerte um dos números da lista, informe do acerto e diga quantos números faltam acertar. O programa termina caso o apostador erre 10 vezes ou até ele acertar todos os números. Obs.: caso o dono da casa de apostas tenha entrado com um número que já exista, ignore-o. João Carlos, Carla Delgado, Ana Luisa Duboc 27/ 29 Autores João C. P. da Silva Carla Delgado Lattes Lattes Ana Luisa Duboc Lattes Colaboradores Fabio Mascarenhas Lattes Anamaria Martins Moreira Lattes Leonardo de Oliveira Carvalho Charles Figueiredo de Barros Fabrı́cio Firmino de Faria João Carlos, Carla Delgado, Ana Luisa Duboc 28/ 29 Lattes Lattes Lattes Computação 1 - Python Aula 11 - Teórica Interação com o usuário e programa principal João Carlos, Carla Delgado, Ana Luisa Duboc 29/ 29
Documentos relacionados
Princ´ıpios de Desenvolvimento de Algoritmos 1 Objetivo 2
Certifique-se que o programa compila com o gcc caso queira ter certeza que não haverá problemas na correção. 2. Faça um arquivo README (arquivo texto sem formatação) contendo: o seu nome com...
Leia mais