Upload
lethuan
View
240
Download
0
Embed Size (px)
Citation preview
Aula 1Introdução à programação
Prof. Dr. Bruno Honda
Programação de Computadores• Programação de computadores – sem lab!
• Aprendizado de lógica de programação
• Objetivo: despertar a curiosidade e pensamento lógico;
• Pseudo linguagem de programação: parecido com “português falado”;
• Aulas expositivas e demonstrativas
www.bslhonda.webnode.com
Plano ensino• Computador
• Variáveis, tipos de variável;
• Expressões numéricas, operadores algébricos, MOD e DIV;
• Algoritmos
• Programação (Fluxograma, português estruturado PORTUGOL)*
• Desvio condicional SE (if);
• Operadores Lógicos E, OU, NÃO (and, or, not)
• Estruturas de Repetição “loops”
• REPETIR, ENQUANTO, PARA (repeat, while, for)
*VISUALG
ProblemaUm viajante estava indo para a VILA DA VERDADE, quando se deparou com dois caminhos, um era o caminho da VERDADE e outro da MENTIRA. No meio da bifurcação havia um homem, habitante de uma das vilas. Qual pergunta deve ser feita para se chegar à vila da VERDADE?
Primeiro computador: ábaco
Cálculo – latim, ‘pedra’;
E.N.I.A.C. (electronic numerical integrator and computer)
Segunda Grande Guerra – trajetória balística;
- Válvulas termostáticas (~17.000)
Transistor (anos 70) – grande avanço tecnológico
(“vale do silício”)
*1996 Pensylvania – “ENIAC on a chip”
Histórico
Limitações e futuro8008: 0,2 MHz - 10µm - ~3500 transistores
802860 : 6-10-12 MHz - 1,5µm, ~134.000 transistores
Pentium IV: 4000 MHz (4 GHz) – 0,13µm – 5,5 milhões transistores
Futuro:
Eletrônica - tecnologia obsoleta;
Alternativa: Fotônica e Spintrônica
Lei de Moore:
“a capacidade de processamento dobra a cada 18 meses”
ProcessamentoComo funciona um computador?
Para onde vai todo esse imenso poder de processamento?
WYSIWYG (“what you see is what you get”)
Processamento visual
Interatividade com o usuário
Facilidade de uso versus controle do usuário
Computador (ferramenta)• Elevada velocidade de processamento de dados;
• Grande capacidade de armazenamento de informações;
• Execução de longa sequência de instruções;
• Realização de tarefas repetitivas com rapidez e precisão;
ADICIONALMENTE
• Automação (*LabView)
Esquema Simplificado (computador)
•Mouse
•Touch
•teclado
•Som
•Sinal elétrico
•Onda EM
•INSERIR INFORMAÇÃO
•Tela
•Papel
•#3-D
•Sinal elétrico
•Onda EM
•VISUALIZAR INFORMAÇÃO
ProgramaçãoLinguagem de máquina (binária) - linguagem humana (instruções);
Tradução – compilador;
Passos:
• Escrever uma série de instruções (código);
• Abrir instruções em um compilador;
• Gerar executável (programa);
Linguagens: C e variações, Basic, Pascal, Delphi, Python, Flash, etc...
DICA: Automação e LabView
Objetivo• Programa: sem interface visual
• “calculadora”
• Fluxograma e Portugol
Estudar:
• Lógicas de programação
• Cálculos e ordens sequenciais;
• Interação com usuário;
• Apresentação dos resultados;
Conceito principal: variávelPosição de memória – fisicamente, uma porção do computador;
Em programação é necessário declarar variáveis: avisar o computador que se está reservando uma porção física da memória para se alocar um dado;
Identificador: etiqueta, nome para a variável;
Modelo: caixa com tampa (variável), com uma etiqueta (identificador)
Desta forma, podemos entender que uma variável pode alocar uma certa informação, ou seja, uma informação será guardada dentro da caixa.
Variáveis (tipos)
Inteira: Qualquer número inteiro, negativo, nulo ou positivo. Ex: 1; 137; -15; 0;
Real: Qualquer número real, negativo, nulo ou positivo. Ex: 1; 0; 4; 12,75; 3,1413; -
0,345;
Caracter: Qualquer conjunto de caracteres alfanuméricos. Ex: “Casa 23”; “Maria”;
“Número”;
Lógica: Falsa ou Verdadeira. True ou T; False ou F
Atribuição :=Em computação, uma variável não tem o mesmo significado de uma expressão matemática, tal como em y=2x+3;
Matematicamente podemos escrever x=2 ou 2=x, pois a igualdade é sempre válida.
Em computação, porém, isso não é verdade: podemos apenas dizer que um valor será atribuído à variável. Um endereço de memória não pode ser igual à qualquer número, ou dado de entrada, pois o símbolo “=“ significa igualdade. Devemos usar o símbolo “:=“ que em computação significa atribuição;
AtribuiçãoDesta forma, podemos escrever, por exemplo,
X:=2
Que é lido como “a variável denominada x recebe o valor numérico de 2”.
O contrário, 2:=x não faz o menor sentido: como um número, que é uma entidade abstrata, pode guardar algo? O símbolo de atribuição só faz sentido quando é utilizado para se atribuir um certo dado à uma variável com identificador.
Da mesma forma, a expressão t=t+2 não faz sentido em matemática. Porém,
Em informática t:=t+2 significa “ a variável t é atualizada, pegando seu valor atual e somando o número 2 à este valor”. Para este procedimento damos o nome de contador. A variável t é atualizada de 2 em 2.
Declaração de variáveisAo declarar as variáveis: Reserva-se uma posição da memória com o identificador* referente; Define-se o tipo de variável;
Regra:
Em portugol, devemos escrever VAR e em seguida, nomear as variáveis e identificar seu tipo, separado por “:”. Declaramos todas as variáveis de uma vez e não é necessário se repetir o comando VAR. Por exemplo:
VAR
x,y,x: real
i, j: inteiro
Variavel1, variavel2: caracter
1) Não podemos iniciar o nome de uma variável com um número
2) Portugol não é “case sensitive”,ou seja, não diferencia MAIÚSCULASde minúsculas.
O que fazer com variáveis?Guardar informação;
Base para programação: armazenar resultados de cálculos;
Usar variáveis para dimensionar o problema;
Declaração correta das variáveis (número, e tipo);
“arquitetura de software” versus “engenharia de software”
Operadores matemáticos
*IMPORTANTE*
Hierarquia da execução das operações:
o Primeiro nível de hierarquia: “^”;
o Segundo nível de hierarquia: “*” e “/”;
o Terceiro nível de hierarquia: “+” e “─”;
Os cálculos são realizados segundo os níveis de hierarquia listados, porém, com o uso dos
parênteses podemos estabelecer uma nova prioridade de cálculo.
Funções Matemáticas