Baixe o app para aproveitar ainda mais
Prévia do material em texto
LÓGICA DE PROGRAMAÇÃO E ESTRUTURAS DE DADOS Professor Marcelo Ferreira Zochio 2 2 INTRODUÇÃO À PROGRAMAÇÃO USANDO LINGUAGEM PYTHON Neste tópico, você terá o primeiro contato com uma linguagem de programação, a linguagem Python, e verá como ela trabalha. Verá também quais as vantagens de aprender a programar nessa linguagem. Ao final deste bloco, você será capaz de identificar constantes e variáveis; saber como trabalhar com operadores e operandos em Python; identificar entradas e saídas de um programa Python e criar um programa básico em Python. 2.1 Constantes e variáveis Variável será o primeiro assunto que abordaremos. Como o próprio nome diz, ele trabalha com valores que mudam de acordo com as circunstâncias. Variável é a representação de uma região de memória utilizada para armazenar, acessar e modificar certo valor por um determinado espaço de tempo. Podemos denominá-la como quisermos, desde que não usemos palavras reservadas da linguagem usada para a construção do programa, e seja um nome contido em uma string contínua, sem espaços. Em muitas linguagens de programação, ela deve ser declarada; na linguagem Python, não há necessidade, pois Python é dinamicamente tipada, não havendo a necessidade de se declarar variáveis, pois intuitivamente o tipo de variável é identificado pelo sistema. Veja na prática essa afirmação: imagine um programa que calcule a média entre dois valores digitados pelo usuário. A seguir, tal informação escrita na linguagem C: #include <stdio.h> float x, y, media; int main(void) { 3 printf("Digite o primeiro valor: "); scanf("%f", &x); printf("\nDigite o segundo valor: "); scanf("%f", &y); media=(x+y)/2; printf("\nResultado= %f", media); return 0; } Na sequência, o mesmo programa escrito em Python: a=float(input("Digite o primeiro valor: ")) b=float(input("Digite o segundo valor: ")) c=(a+b)/2 print "Resultado= ", c Constante é um valor que será inalterado, independente das condições envolvidas na operação a ser realizada. As regras para seu uso são as mesmas aplicadas à variável. Pode ser uma string (conjunto de caracteres) ou um valor numérico. SAIBA MAIS Entenda melhor sobre o assunto no seguinte vídeo, que explica o uso de constantes e variáveis em Python. Vídeo: Constantes e variáveis NETO, A. C. Constantes e variáveis. 2017. Disponível em: <https://www.youtube.com/watch?v=uiGeQD_z2vs>. Acesso em: 13 fev. 2019. https://www.youtube.com/watch?v=uiGeQD_z2vs 4 2.2 Atribuição e operadores Para atribuirmos valor a uma variável ou constante, ou ainda a outros elementos, como listas, dicionários ou tuplas, usamos o caractere “=”. Veja exemplos a seguir: # Exemplo 1: a = 10 # Exemplo 2: b = 7.4 # Exemplo 3: c = ‘estou estudando Python’ # Exemplo 4: d = [0, 1, 2] No exemplo 1, a variável de nome “a” tem o valor 10, sendo do tipo “inteiro”; no exemplo 2, a variável de nome “b” tem o valor 7.4, sendo do tipo “float”; no exemplo 3, a variável de nome “c” contém uma string (sequência de caracteres), sendo do tipo “string”. O exemplo 4 contém uma variável denominada “d” que inclui uma lista (também chamada de “array” em outras linguagens de programação). Note que não precisamos declarar o tipo de variável, pois como a linguagem Python é dinamicamente tipada, o tipo de variável ou constante está implícito nos dados que ela contém. Operadores são símbolos especiais que representam cálculos como adição, subtração e divisão. Os valores que são chamados pelo operador são denominados operandos. Em Python, os símbolos + (adição), - (subtração), / (divisão), * (multiplicação), ** (potenciação) e demais símbolos, como os parênteses, têm a mesma função que em uma expressão matemática. Nas operações matemáticas em Python, quando todos os operandos são inteiros, o resultado da operação é sempre um valor inteiro. Para expressar valores decimais, tanto 5 na entrada de dados como na saída, deve-se usar o ponto flutuante ao escrever o número. Veja a sequência de operações a seguir (o símbolo >>> é do prompt da linguagem Python): >>> 1 + 1 2 >>> 1.0 + 2.0 3.0 >>> 3.1 + 4 7.1 >>> 4 * (3 + 9) 48 >>> 2/3 0 >>> 456.0 / (5 + (7*3)-15) 41.45454545454545 >>> -7+9 2 >>> -5**2 -25 >>> (-5)**2 25 Agora, um exemplo de soma de variáveis: >>> a = 64 >>> b = 17 >>> a+b 81 6 Note que a divisão 2 / 3 em Python, citada nos exemplos acima, fornece 0 como resultado porque a linguagem Python está considerando apenas a divisão inteira (somente o número 0 do resultado real que é 0.66666...). A ordem de execução dos operadores obedece à mesma regra da matemática. Quando o operador + é usado em strings, ele faz uma operação chamada concatenação de strings. O operador * também tem a mesma função, porém como multiplicador. Veja, a seguir, alguns exemplos: >>> 'goiaba' + 'goiaba'+ 'goiaba' 'goiabagoiabagoiaba' >>> 'python' * 3 'pythonpythonpython' Operações modulares em Python são realizadas pelo operador %; veja alguns exemplos: >>> 15%7 1 >>> 17%3 2 O Python trabalha também com operações booleanas (“verdadeiro” ou “falso”). O operador == faz a comparação de valores; veja alguns exemplos: >>> 10 == 10 True >>> 5 == 7 False 7 Caso você queira realizar operações lógicas (E, OU, OU EXCLUSIVO), poderá usar os operadores: & (operação lógica E) | (operação lógica OU) ^ (operação lógica OU EXCLUSIVO) Veja alguns exemplos: >>> 5&6 4 >>> 5|6 7 >>> 5^6 3 Os outros operadores de comparação são (PERKOVIC, 2016): x != y (x é diferente de y) x > y (x é maior que y) x < y (x é menor que y) x >= y (x é maior ou igual a y) x <= y (x é menor ou igual a y) x in y (verifica se x está contido em y) 2.3 Entrada e saída A linguagem Python trabalha com entrada de dados com o comando input. Na versão atual da linguagem Python, o comando input considera como do tipo “string” todo valor 8 colocado em uma variável através dele. Se você quiser usar valores numéricos, deverá convertê-los. Veja um exemplo: a = float(input(“Digite o valor da prestação: “)) Nesse exemplo, a variável “a” recebe inicialmente um valor literal, ou seja, considerado como caractere, que posteriormente é convertido em número real (que aceita valores fracionados) através do comando float. Falando em saídas, podemos ter como saídas os seguintes comandos: print exibição na tela return retorno de um resultado Veja um exemplo de cada um deles: Exemplo de print: a = ‘mostrando na tela’ print a Exemplo de return: def media_unisa(a, b): return (a*0.4)+(b*0.6) Aparentemente podem parecer a mesma coisa, mas não são. O comando print, a partir de qualquer parte de programa, exibe na tela uma informação, que pode ser o conteúdo de uma variável, o resultado de uma operação, ou outro item; no caso do return, ele “retorna” um valor. Geralmente é uma resposta a um chamado de alguma função ou biblioteca. 9 SAIBA MAIS Para saber mais sobre esse assunto, assista ao vídeo sugerido, que explica o conceito de entradas e saídas em Python. Vídeo: Entrada e saída de dados em Python PYTHON CAFÉ. Entrada e saída de dados em Python. 2017. Disponível em: <https://www.youtube.com/watch?v=7mr6ZKSBFsI>. Acesso em: 13 fev. 2019. 2.4 Programas sequenciais Para construir um programa em Python, não é necessário nem uma IDE (Integrated Development Environment, ou Ambiente Integrado de Desenvolvimento). Basta escrever seu programa usando um editor de texto não formatado, como Notepad (Windows) ou gedit (Linux), e salvar esse arquivo em formato .py. Para que possamos acessar o programa pelo prompt do Windows, devemos indexar a pasta que contém os arquivos da linguagemPython nas variáveis de ambiente do Windows. Para fazer isso, tomando por base o Windows 7, clique com o botão direito do mouse em Meu Computador, e depois em Propriedades; abra a opção Configurações Avançadas de Sistema, e aperte o botão Variáveis de Ambiente. Dentro de variáveis de Sistema, selecione a opção Path; acrescente o caminho do executável da linguagem Python (normalmente basta acrescentar C:\Python36-32;C:\Python36-32\Scripts;). Aperte OK em todas as janelas abertas. Preste atenção, pois a pasta onde o Python foi instalado no Windows pode variar. Aí você terá que colocar o caminho correto, não este que está escrito. Uma vez isso feito, é só digitar no prompt do Windows, estando na mesma pasta em que o programa criado está: python nome_do_programa.py ou ainda executá-lo diretamente, em alguns casos. É mais garantido executá-lo pelo prompt. https://www.youtube.com/watch?v=7mr6ZKSBFsI 10 No caso do Linux, é só acessar o programa pelo prompt ou executá-lo diretamente, como no Windows. Embora não haja a necessidade de IDE para construir um programa em Python, há IDE desenvolvidas para esta linguagem. Entre elas, podemos citar: PythonWin PyCharm 11 PyScripter 2.5 Por que Python? Se você já estudou programação alguma vez, deve estar se perguntando por que a escolha da linguagem Python como instrumento de ensino de programação, uma vez que muitos professores usam Java ou C. Vamos explicar: Um dos motivos é a sintaxe dessas linguagens, que é complexa. Veja um exemplo de um programa que exibe a mensagem Hello world! na tela em Java, em C e em Python: Hello world em Java: public class HelloWorld { public static void main(String[] args) { System.out.println("Hello world!"); } } Hello world em C: #include <stdio.h> 12 int main(void) { printf("Hello world!\n"); return (0); } Em Python, versão 3: print(“Hello world!”) Veja, a seguir, um exemplo de um programa escrito em Java que cria uma lista, ou array, e conta quantas vezes aparece o valor “5” dentro dela (ENADE, 2014, p. 13): public class CountConcurrence { public boolean hasValue(int searchValue, int[] array, int i) { if (i >= array.length) return false; if (array[i] == searchValue) return true; else return hasValue(searchValue, array, i + 1); } public int count(int countValue, int[] array, int i) { if (!hasValue(countValue, array, i) || i >= array.length) return 0; int c = 0; if (array[i] == countValue) c++; c += count(countValue, array, i+1); 13 return c; } public static void main(String[] args) { int[] array = {2, 3, 5, 6, 9, 7, 8, 8, 9}; CountConcurrence co = new CountConcurrence(); System.out.println(co.count(5, array, 0)); } } Agora, o mesmo programa escrito em Python: a = [2, 3, 5, 6, 9, 7, 8, 8, 9] contador = 0 for x in a: if x == 5: contador +=1 print(contador) Uma pergunta retórica: em qual dessas linguagens você gostaria de aprender a programar? Sobre a linguagem Python, outras vantagens são a sua versatilidade (podemos programar em modo procedural ou com orientação a objetos), o seu poder (é usada em programas científicos e outras aplicações que exigem grande poder de cálculo) e a simplicidade de uso (é interpretada, não sendo necessário compilar os programas). Conclusão Neste bloco, você tomou o primeiro contato com uma linguagem de programação. No próximo, continuaremos a falar sobre os principais comandos da linguagem Python. 14 Referências ENADE. MINISTÉRIO DA EDUCAÇÃO E CULTURA. Exame Nacional do Ensino Superior. Prova de Tecnologia em Análise e Desenvolvimento de Sistemas. 2014. Disponível em: <http://download.inep.gov.br/educacao_superior/enade/provas/2014/40_tecnologia_ analise_desenv_sistemas.pdf>. Acesso em: 24 dez. 2018. PERKOVIC, Ljubomir. Introdução à computação usando Python: um foco no desenvolvimento de aplicações. Rio de Janeiro: LTC, 2016.
Compartilhar