Buscar

Slide - Unidade 1

Prévia do material em texto

Unidade I 
 
 
 
PROGRAMAÇÃO DE COMPUTADORES 
 
 
 
 
Prof. Dr. Bruno Honda 
Introdução 
 A informática está presente em todos os níveis da sociedade. 
 Sociedade completamente dependente da tecnologia. 
 
Pergunta: qual a importância da programação? 
 “esconder os códigos binários”; 
 criação e criatividade; 
 acesso e controle de informação 
 
Lógica de programação 
 
 
Presenter
Presentation Notes
Bom, o termo informática é um termo completamente inserido na sociedade atual, em todos os níveis. Tecnologia de código de barra, compras online, entretenimento, quase todos o que fazemos é baseado em informática. Principalmente hoje, onde o acesso à informação é muito rápida, e pode ser feita de praticamente qualquer local que tenha acesso à internet.
Qual a importância da informática na sociedade? A resposta é muito vaga, pois inclui diversos fatores, por exemplo na parte de diversão, aparelhos que nos fazem trabalhar menos e até como fator social (o poder das marcas). Porém eu gostaria de focarno seguinte aspecto: informática é algo que nos dáacesso e controle de informações, que na minha opinião é a palavra chave para o começo desse século. “TROCA DE INFORMAÇÃO”
Neste curso, que é voltado para o curso de exatas, o objetivo é utilizar o computador e uma ferramenta chamada planilha eletrônica, que como vamos ver no decorrer da aul, faz um número muito grande de tarefas e é bastante intuitivo para se trabalhar.
Programação: introdução 
 O programa é construído através de um código: linguagem 
própria. 
 Ex. C++, Phyton, JavaScript, Pascal, Fortran, Julia. 
 Arduíno e Raspberry PI (hardwre). 
 Computador: linguagem binária. 
 Tradução: compilador (código em executável). 
 Nesta disciplina: português estruturado (PORTUGOL). 
 “Lógica de programação”. 
 
 
 
Dica 
 Fins didáticos: VisualG. 
 
 Domínio público (gratuito). 
 
 Mesmos comandos que utilizamos no curso. 
 
 Vários exemplos gratuitos na internet. 
 
 Excelente ferramenta para iniciar a programar! 
 
Exemplo de programa (visualG) 
 
Histórico 
Necessidade: 
 contas muito extensas, ou números grandes; 
 contagem de números muito grandes; 
 precisão e rapidez nas contas; 
 ábaco – E.N.I.A.C. – transistor; 
 atualmente: alto processamento – facilidade de uso. 
Variáveis 
 Unidade básica para se construir um programa. 
 Espaço físico real: ex.: trilha magnética. 
 Conceito: caixa com tampa. 
 Etiqueta: identificador. 
 
Variáveis: identificador 
 Declaração de variáveis: nome, tipo. 
 
Regras: nome de variável não pode começar com algarismos e 
 é “case sensitive” (a≠A). 
Dica: evitar acentos, símbolos matemáticos, símbolos especiais. 
 
 
Variáveis 
 Como utilizar variáveis? 
 Armazenar informação. 
 
Tipos: 
 número (inteiro, real); 
 caractere; 
 lógica ou booleana: V ou F. 
 
Declaração de variáveis 
 PORTUGOL (VAR); 
 Sintaxe: nome_da_variavel:tipo; 
 Tipos: inteiro, real, lógico, caracter; 
 
VAR 
i, j, k: inteiro; 
num, x, y: real; 
texto1: caractere; 
n1, n2: logico; 
 
OBS.: ; como “token” de encerramento. 
Variáveis: atribuição 
 Como atribuir uma informação a uma variável? 
 Comando de atribuição. 
 
Exemplos: 
A:=7; 
A<-7; 
A←7; 
 
Variáveis 
Exemplos: 
A:=3; 
A:=A+2; 
 
 
Variáveis: exemplos 
Problema: desejamos calcular a média aritmética de duas 
provas, np1 e np2. Quantas variáveis são necessárias? 
 
 Em princípio, o próprio problema sugere o número de 
variáveis no enunciado. Prova1, Prova2 e média são as 
informações relevantes. Logo, precisamos de pelo menos 3 
variáveis segundo a lógica adotada: 
 
VAR 
np1,np2,media:real; 
Interatividade 
Considere as atribuições abaixo: 
K:=10 
K:=K+2 
K:=0 
Qual o valor final armazenado na variável K? 
 
a) 10 
b) 12 
c) 0 
d) 2 
e) Nenhuma das anteriores. 
 
Interatividade 
Considere as atribuições abaixo: 
K:=10 
K:=K+2 
K:=0 
Qual o valor final armazenado na variável K? 
 
a) 10 
b) 12 
c) 0 
d) 2 
e) Nenhuma das anteriores. 
 
Linguagens: matemática e computador 
 Como realizar cálculos no computador? 
 Matemática: símbolos. 
 Linguagem matemática – linguagem computador. 
 
Exemplos: 
 frações; 
 expoentes; 
 raiz quadrada. 
 
Pergunta: como representar as operações aritméticas? 
Presenter
Presentation Notes
A primeira coisa que a gente precisa saber, é como se comunicar com o computador. Na área de exatas, mais especificamente, querermos saber como realizar cálculos no computador? Como fazer contas no computador? Em princpipio, sabemos como realizar esses cálculos matematicamente, pois conhecemos a linguagem da matemática. Sabemos os símbolos das operações básicas (+, -) e algumas eperações mais complexas como raiz quadrada, três elevado ao quadrado entre várias. Para todas essas operações, sabemos usalar a linguagem simbólica da matemática. Porém, como fazer para entrar com essas informações no computador? Como fazer o computador reconhecer a linguagem matemática? Como representar frações, expoentes, e raiz quadrada usando o teclado alfa numérico do computador?
Linguagens: matemática no computador 
 Operadores aritméticos: 
 
Exemplos: 
3,25+10,75 
370-129 
3*4 
4/5 
3^2 
 
 
Presenter
Presentation Notes
Resposta: fazendo uma tradução dos símbolos, da matemática para o computador. Vamos começar com as operações básicas: soma, subtração, divisão, multiplicação e exponenciação. Soma e subtração são fáceis, pois esses símbolos existem no teclado. EX> 3,25+10,17. EX>370-129. Como não temos os outros símbolos, o asterisco faz o papel da multiplicação, por exemplo 5*4 e usamos a barra simples para divisão, EX> três quintos – 3/5. Para escrever expoentes, por exemplo três ao quadrado, usamos o símbolo “acento circunflexo”, onde os alunos costumam chamar informalmente de chapeuzinho. Então três ao quadrado se escreve
Operadores aritméticos 
 REGRA: prioridade (hierarquia): 
1) Exponenciação ^ 
2) Multiplicação e divisão *, / 
3) Adição e subtração +, - 
 
Exemplo: 
 
 
5*5+5= 5*5+5=25+5=30 
Presenter
Presentation Notes
Precisamos apenas saber duas informações para acertar todas as contas que vamos fazer no computador. O primeiro é o conceito de prioridade das operações em matemática. Porém em informática, o termo hierarquia é mais adequado, e a hierarquia é a seguinte: primeiro realizamos as operações com exponenciação. Sempre. Dois, em segunda ordem de hierarquia, multiplicação e divisão, na ordem que aparecerem! E por último soma e subtração. Notem que é recorrente aparecer em redes sociais problemas do tipo essa expressão mostrada ao lado: sete mais sete dividido por sete mais sete menos sete. Qual o resultado correto? Existrem várias manteiras de proceder o cálculo? Não! Precisamos respeitar a hierarquia! Portanto, primeiro a divisão deve ser feita em prioridade à soma e subtração. Então 7/7=1 e a conta fica 7+1+7-7=8
Próximo exemplo: -1 mais três elevado à dois mais quatro elevado à dois mais um. Primeiro realizamos os exmpoentes, 3^2=9, 4^=16 e então podemos somar e subtrair:
-1+9+16+1=25 
Alterar a hierarquia 
 Quebra de hierarquia: parênteses. 
 Matemática: chaves { }, colchetes [ ] e parênteses (). 
 Computador: somente (). 
 
Exemplo: 
 5*5+5=25+5=30 
 
 5*(5+5)=5*(10)=50 
 
 (5*5)+5=25+5=30 
Presenter
Presentation Notes
Segunda informação relevante para jamais errarmos os cálculos no computador: o uso de parênteses pode alterar a hierarquia. Ou seja, podemos forçar a quebra de hierarquia através da utilização de parênteses. Em matemáticas, temos três símbolos usados para quebrar hierarquia, chamados chaves, colchetes, e parênteses, que são resolvidos nesta ordem, de dentro para fora, mas no computador somente faremos uso de parêntees, OK? Vejamos os exemplos ao lado:
O primeiro, está escrito 5*5+5 e por questão de hierarquia resolvo primiro o 5*5=25 e depois somo com 5 =30. Porém veja a segunda expressão, com parênteses: desta vez sou obrigado a fazer a conta dentro do parênteses primeiro! Ou seja, a conta de dentro é 5+5 e5*10=50. No terceiro exemplo, preciso fazer a operação em parênteses em primeiro lugar 2+1=3. Desta forma, reescrevendo a expressão e realizando os cálculos segundo a hierarquia, primeiro divisão e multiplicação na ordem que aparecerem, e depois as somas. Ou seja, 2+(3/3)*5=2+1*5=2+5=
Alterar a hierarquia 
Exemplo: 
 
 
 
 7+7/7+7*7-7=7+1+49-7=50 
 
 (7+7)/7+7*7-7=14/7+7*7-7=2+49-7=44 
 
 7+7/7+7*(7-7)=7+1+7*0=8 
Presenter
Presentation Notes
Segunda informação relevante para jamais errarmos os cálculos no computador: o uso de parênteses pode alterar a hierarquia. Ou seja, podemos forçar a quebra de hierarquia através da utilização de parênteses. Em matemáticas, temos três símbolos usados para quebrar hierarquia, chamados chaves, colchetes, e parênteses, que são resolvidos nesta ordem, de dentro para fora, mas no computador somente faremos uso de parêntees, OK? Vejamos os exemplos ao lado:
O primeiro, está escrito 5*5+5 e por questão de hierarquia resolvo primiro o 5*5=25 e depois somo com 5 =30. Porém veja a segunda expressão, com parênteses: desta vez sou obrigado a fazer a conta dentro do parênteses primeiro! Ou seja, a conta de dentro é 5+5 e 5*10=50. No terceiro exemplo, preciso fazer a operação em parênteses em primeiro lugar 2+1=3. Desta forma, reescrevendo a expressão e realizando os cálculos segundo a hierarquia, primeiro divisão e multiplicação na ordem que aparecerem, e depois as somas. Ou seja, 2+(3/3)*5=2+1*5=2+5=
Operador raiz 
Para qualquer tipo de raiz: 
 
 
Ou seja, podemos sempre escrever: 
 
 
Porém, cuidado com a hierarquia: 
 
 
 
 
Presenter
Presentation Notes
Uma dica: ainda não comentei sobre operação de radiação, por exemplo, raiz quadrada de dois. Para isso, vou usar uma identidade matemática bastente conhecida: se vc não se lembra ou ainda tem dúvidas, faça uma pesquisa! A propriedade diz que se eu extraio a raiz b-ésima de um número x elevado à uma potência a, posso escrever então que x elevado a a/b. Por exemplo, raiz de três. Quando não aparecenenhum número no radical, geralmente estamos falando de raiz quadrada, ou seja, embora não seja necessário escrever existe um índice dois. O número 3 também, embora não apareça explicitamente, ele está elevado à potência 1. Portanto raiz quadrada de 3 é 3 elevado à ½.. Da mesma maneira, raiz quarta de 77 elevado ao cubo pode ser escreita como 77 elevado a ¾. Mas tome cuidado com a hierarquia! Dois elvado a ½, sem parênteses, é 2^1/2=2/2=1. Com parênteses, forçamos a hierarquia ser quebrada, e lemos a segunda expressão como dois elevado a ½ ou seja, raiz quadrada de dois.
Exemplos de DIV e MOD 
 DIV: quociente inteiro de uma divisão. 
 MOD: resto inteiro de uma divisão. 
 
Exemplos: 
 5 DIV 2 
 5 MOD 2 
 
Funções matemáticas 
Operadores lógicos 
 Operadores lógicos conectam duas sentenças: V ou F. 
Operador E (“AND”) 
 Juntar duas sentenças: V ou F. 
 
 
 
 
 
 
Exemplo: 
 “estamos estudando programação E estamos estudando 
música”. 
 
Operador OU (“OR”) 
 Juntar duas sentenças: V ou F 
 
 
 
 
 
 
Exemplo: 
 “estamos estudando programação OU estamos estudando 
música”. 
 
Operador NÃO (“NOT”) 
 Inverte a sentença: V ou F. 
 
 
 
 
Exemplo: 
 “estamos estudando programação”. 
 “estamos estudando música”. 
 
 
 
Variáveis e cálculos 
Podemos agora utilizar as variáveis em cálculos matemáticos: 
 
 area:=3,14*raio^2; 
 x:=w+y+z; 
 b:= (N MOD 2); 
 i:=i+1; 
 
Interatividade 
Qual o valor numérico da expressão abaixo, considerando que: 
A:=2; B:=5; C:=1 D:=10 
 
 A*B*C/D+D/B^C/A 
 
a) 0,91 
b) 1 
c) 2 
d) 5,47 
e) 5 
Resposta 
Qual o valor numérico da expressão abaixo, considerando que: 
A:=2; B:=5; C:=1 D:=10 
 
 A*B*C/D+D/B^C/A 
 
a) 0,91 
b) 1 
c) 2 
d) 5,47 
e) 5 
2*5*1/10+10/5^1/2=2 
Algoritmo 
 É o passo a passo envolvido na resolução de um problema. 
 
 É um procedimento definido, com etapas finitas, no qual se 
recebem um ou mais valores (dados de entrada) e geram-se 
um ou mais valores (informações de saída). 
 
 Ferramenta: lógica. 
 
Algoritmo 
 O algoritmo deve ser uma sequência finita de etapas 
efetivamente definidas, ou seja, deve ter começo e fim. 
 
Podem ser representados, por exemplo: 
 
 Fluxograma (estruturação); 
 Português Estruturado (Portugol); 
 
Como construir programas? 
Etapas: 
 nome do programa; 
 declaração de variáveis; 
 início; 
 processamento (entrada e saída); 
 fim; 
 
Estrutura de um programa 
Em fluxograma: 
 
Estrutura de um programa 
Em português estruturado: 
 
nome_do_programa 
VAR 
a,b,c:real; 
i.j:inteiro; 
inicio 
<estrutura do programa>; 
fim. 
Entrada e saída 
Programação: 
 Como inserir uma informação? 
 
 Como mostrar (imprimir) na tela uma informação? 
 
 Como inserir uma informação e armazenar (atribuir) essa 
informação em uma variável? 
 
 Como imprimir na tela um texto personalizado, ou como 
imprimir na tela uma informação armazenada em uma 
variável? 
 
Comandos: leia() 
Comando de entrada: leia(); 
 O comando leia é um comando onde se pede ao computador 
que atribua um valor digitado pelo usuário á uma variável. 
Note que é um comando de entrada, ou seja, espera-se que o 
usuário literalmente digite um valor e aperte a tecla “return” 
(“enter”). 
 
Ex: leia(R); 
Comando leia 
 Ex.: Leia(R); 
 Computador espera o usuário digitar um valor, e após o 
usuário pressionar “enter”, a informação é armazenada na 
variável R. 
 
 
 
 
 
Comandos: escreva() 
Comando de saída: escreva( ); 
 O comando escreva, literalmente, imprime um texto na tela do 
computador. O texto impresso pode ser digitado pelo usuário, 
e será colocado entre aspas “ ”. Sempre. O comando escreva 
também imprime o valor de variáveis, e essas devem ser 
separadas por vírgula, e não devem aparecer entre aspas. 
 
escreva (“saída de dados”); 
escreva(A); 
Comandos: escreva() 
Ex.: Escreva(“Olá mundo!”); 
 Escreve uma informação na tela: texto (“entre aspas”) ou 
valor armazenado em uma variável (nome da variável). 
 
 
 
 
 
 
 
Exemplo de entrada e saída 
Escreva(“Digite um valor:”); 
Leia(x); 
Escreva(“x=”, x); 
Interatividade 
Considere o fluxograma abaixo. Qual o comando a ser utilizado 
em PORTUGOL para a linha 3? 
 
a) Escreva(N); 
b) Escreva(“N”); 
c) Leia (N); 
d) Leia (“N”); 
e) Nenhuma das anteriores. 
Resposta 
Considere o fluxograma abaixo. Qual o comando a ser utilizado 
em PORTUGOL para a linha 3? 
 
a) Escreva(N); 
b) Escreva(“N”); 
c) Leia (N); 
d) Leia (“N”); 
e) Nenhuma das anteriores. 
Algorítmos: exemplo 
 Programa que, dado um número inteiro, retorno o triplo deste 
valor. 
 
Variáveis: 
 
 Número (N), triplo (3*N). 
 Triplo:=3*N 
Exemplo: fluxograma 
Exemplo: Portugol 
Triplo_de_um _numero 
 
VAR 
N,triplo:real; 
Inicio 
Escreva(“Entre com um número inteiro”); 
Leia(N); 
triplo:=3*N; 
Escreva(triplo); 
Fim. 
Simulação para N=1000 
Escreva(“Entre com um número inteiro”); 
Leia(N); 
triplo:=3*N; 
Escreva(triplo); 
Exemplo: Portugol 
Triplo_de_um _numero 
 
VAR 
N,triplo:real; 
Inicio 
Escreva(“Entre com um número inteiro”); 
Leia(N); 
triplo:=3*N; 
Escreva(“O triplo do número é:”, triplo); 
Fim 
Simulação para N=200 
Escreva(“Entre com um número inteiro”); 
Leia(N); 
triplo:=3*N; 
Escreva(“O triplo do produto é:”, triplo); 
Algorítmos: exemplos 
 Dados dois números reais, escreva um programa em 
Português Estruturado e um fluxograma que realize 
a soma desses dois números. 
 
Variáveis: 
 
 Primeiro número (N1), segundo número (N2), soma; 
 Soma:=N1+N2; 
 
 
Fluxograma 
Português estruturado 
media_de_dois_numeros 
 
VAR 
N1,N2,soma:real; 
Inicio 
Escreva(“Digite dois números reais:”); 
Leia(N1,N2); 
Soma:=N1+N2; 
Escreva(“A soma é:”, soma); 
Fim 
Simulação para N1=1 e N2=2 
Escreva(“Digite dois números reais:”); 
Leia(N1,N2); 
Soma:=N1+N2; 
Escreva(“A soma é:”, soma); 
Interatividade 
Considere o programa a seguir. Qual a saída do programa se o 
usuário digitaros números 4 e 5? 
 
a) 4 
b) 5 
c) 20 
d) 17 
e) 27 
Resposta 
Considere o programa a seguir. Qual a saída do programa se o 
usuário digitar os números 4 e 5? 
 
a) 4 
b) 5 
c) 20 
d) 17 
e) 27 
 
 
 
 
 
ATÉ A PRÓXIMA! 
	Slide Number 1
	Introdução
	Programação: introdução
	Dica
	Exemplo de programa (visualG)
	Histórico
	Variáveis
	Variáveis: identificador
	Variáveis
	Declaração de variáveis
	Variáveis: atribuição
	Variáveis
	Variáveis: exemplos
	Interatividade
	Interatividade
	Linguagens: matemática e computador
	Linguagens: matemática no computador
	Operadores aritméticos
	Alterar a hierarquia
	Alterar a hierarquia
	Operador raiz
	Exemplos de DIV e MOD
	Funções matemáticas
	Operadores lógicos
	Operador E (“AND”)
	Operador OU (“OR”)
	Operador NÃO (“NOT”)
	Variáveis e cálculos
	Interatividade
	Resposta
	Algoritmo
	Algoritmo
	Como construir programas?
	Estrutura de um programa
	Estrutura de um programa
	Entrada e saída
	Comandos: leia()
	Comando leia
	Comandos: escreva() 
	Comandos: escreva() 
	Exemplo de entrada e saída
	Interatividade
	Resposta
	Algorítmos: exemplo
	Exemplo: fluxograma
	Exemplo: Portugol
	Simulação para N=1000
	Exemplo: Portugol
	Simulação para N=200
	Algorítmos: exemplos
	Fluxograma
	Português estruturado
	Simulação para N1=1 e N2=2 
	Interatividade
	Resposta
	Slide Number 56

Continue navegando