Click here to load reader
Upload
edson-emidio
View
2
Download
0
Embed Size (px)
DESCRIPTION
Informatica
Citation preview
INTRODUOACOMPUTAOPESCAEQUIMICA
AULA04A08
ALGORITIMOELINGUAGENS
2.1Algoritmoefluxograma.2.2Instruesdeumalgoritmo.2.3Tiposdelinguagens(mquina,simblicaeautonvel)2.4programa,traduoeexecuo
LINGUAGENSDEPROGRAMAO
3.1Definiodeumalinguagem(PASCAL,FORTRANouBASICO)conjuntodecaracteres,palavrasreservadaseidentificadores,tiposdedadossimples.3.2Declaraodetiposimples.3.3Comandosdeentradaesada.3.4Comando
deatribuio.3.5Operadoreseexpresses.3.6Exerccios.
ESTRUTURASDECONTROLES
4.1Comandosrepetitivos.4.2Comandosseletivos.4.3Exercciosemlab.
Traduo e Compilao de Programas
Ao contrrio do que alguns pensam o computador no uma mquina inteligente, ela precisa receber ordens (comandos) explicando exatamente como uma tarefa deve ser feita por ele. Para facilitar o trabalho dos seres humanos que lidam com computadores, foram desenvolvidas Linguagens de Programao para a criao de programas.
Para que programas escritos em linguagens de programao possam ser executados por um computador, necessrio que o mesmo seja traduzido em para Linguagens de Mquina, que so as linguagens que o computador entende.
Ento uma Linguagem de Programao apenas uma especificao sinttica e semntica de como usar seus comandos, palavras chaves e etc para escrever instrues para computadores, sendo que um programa escrito nessa linguagem chamado de programa-fonte. Cada linguagem precisa de um programa que faa a traduo do programa-fonte e existem trs tipos de traduo: compilao, traduo e mista. Aps este processo temos um programa executvel.
As figuras abaixo ilustram a compilao de um programa e a esquerda a execuo de um programa.
1
Algoritmos
Algoritmos so uma sequncia finita e ordenada de comandos executveis e no ambguos, que levam a aplicao de um mtodo para a execuo de uma tarefa ou resoluo de um problema
Exemplo 1: Algoritmo para troca de um pneu furado
NomedoAlgoritmo
Expressocondicional
INICIO TrocarPneuFurado {
SE (o estepe estiver murcho) {
Chamar o borracheiro; }
SENO {
Pegar o macaco e a chave de boca;
Afrouxar com a chave todos os parafusos da roda com o pneu furado;
Levantar o carro com o macaco;
Retirar todos os parafusos da roda;
Retirar o pneu e guard-lo;
Posicionar o estepe no lugar da antiga roda;
Recolocar e apertar ligeiramente os parafusos;
Baixar o carro;
Apertar fortemente os parafusos;
Guardar as ferramentas;
Levar o pneu furado para o borracheiro;
} FIM SENO
} FIM
Corpodo
Algoritmo
delim
itad
ope
laschaves
Exemplo 2: Soluo da equao do 2 grau pelo mtodo de Baskara
Sendo A*x2 + B*x + C = 0, ento
, lembrando que a parte
dentro da raiz chamada de Delta.
INICIO EquacaoGrau2 {
VARIVEIS REAIS: a, b, c, x1, x2, delta, real, imag;
LEIA (a, b, c);
Delta b2 4*a*c;
SE ( delta > = 0) {
2
x1
;
3
x2
;
ESCREVA (X1 = , x1, e X2 = , x2);
} FIM SE
SENO {
real b / 2*a;
imag
;
ESCREVA (X1 = (, real, ) + i (, imag,
) e X2 = (, real, ) i (, imag, ));
} FIM SENO
} FIM
Linguagens para algoritmos
Nos exemplos anteriores foram usadas formas de escrever muito semelhante s das linguagens de programao, quando fazemos isso dizemos que escrevemos o algoritmo usando pseudocdigo, quando o texto incorpora menos estas semelhanas dizemos que usamos portugol.
Outra forma de escrita usando representao grfica por diagrama de blocos denominados fluxogramas. Porm ao longo da histria esta forma caiu em desuso por gerar muitas vezes um programa confuso de entender.
Exemplo 3: O que fazer com uma lmpada que no funciona
Exemplo 4: Fluxograma para quando um usurio entra com dois nmeros (A e B), testa se A < B.
Tabela de Principais smbolos de um fluxograma:
4
5
Variveis
Variveis correspondem aos espaos na memria principal que so usados para armazenar valores que se pretende que um computador processe. Para facilitar a programao ns damos nomes significativos para as variveis.
Nomes de variveis:
Podem ter qualquer tamanho mticos
grafia usando aisculo (valor, Valor e vaLor so 3 variveis deferentes)
nte de espao da memria, dependendo do tipo de contedo a ser arm
ble har
VARIAVEL TIPO
No pode conter espao ou caracteres especiais (aqueles em cima dos nmeros no teclado), acentos, sinais de pontuao, ou smbolos mate
Podem ser usados somente letras, nmeros, _ Devem comear com letra minscula (no podem comear com nmero ou
_) A maioria das linguagens de programao diferencia
minsculo e m
Declarao de tipo
A declarao de uma varivel faz com que o computador aloque (reserve) um lugar na memria para armazenar o valor que a varivel recebe. Porm o contedo de uma varivel pode ocupar quantidade difere
azenado, sendo estes:
Inteiro int Real float, dou Caractere c Frase string
A declarao tem a seguinte sintaxe:
: lista dos nomes das variveis deste tipo, sendo separadas por vrgula.
Exemplo:
INICIO Teste {
VARIAVEIS REAL: x, y;
VARIAVEL STRING: nome[40];
FIM}
atribuir valor a uma varivel use uma seta () como se valor estivesse entrando na variv
a letra ou uma frase, sendo que no caso das duas ltimas,
Lilian Oliveira Ramires;
Comando de atribuio
Parael.
Obs: o valor que atribudo a varivel pode ser um valor numrico, o resultado de uma expresso matemtica, lgica, um
estas devem vir entre aspas ().
Ex: nome
x 5.4;
y a + b;
6
u vdeo) Comandos de entrada (teclado, scaner, cmera de foto o
Sintaxe: LEIA (nome da varivel que vai receber o valor);
x: LEIAE (nome);
Comandos de sada (tela, impressora)
Sintaxe: IMPRIMA (item 1, item 2, ... , item n);
Cada item para impresso deve ser separado por vrgula, ou frase, este deve vir entre aspas.
e quando o item for um caractere
x: IMPRIMAE (Resultado final =, total);
Estruturas de Controle
Estrutura Condicional (SE IF) A estrutura condicional "se" (if na maioria das linguagens de programao) permite a
tomada de decises ao longo da execuo de um programa. Por exemplo, selecionar qual
bloco de instrues deve ser executado dependendo "se" uma condio foi (ou no) satisfeita.
estrutura
plo ns temos uma soluo para quando h mais de duas opes a
Obs: entre os comandos em um SE e/ou SENO pode existir a necessidade de tomar outra deciso, nesse caso usarem
Sintaxe2: Composto
SE(condio){
mandos; co
}FIMSE
SENO{
coman
}
dos;
FIMSENO
Sintaxe1:Simples
SE(cond
c
}
io){
omandos;
FIMSE
os um SE simples ou composto dentro daqueles. Esta chamada de IF aninhado. Exemplo 5: Ler um nmero e imprimir se ele positivo, negativo ou nulo.
Obs: Vejam que nesse exem seguir.
INICIO Teste {
VARIAVEL REAL:
7
num;
LEIA (num);
SE (num > 0) {
IMPRIMA (Numero Positivo!);
} FIM SE
SENO {
SE (num < 0) {
IMPRIMA (Numero Negativo!);
} FIM SE
SENO {
IMPRIMA (Numero Nulo!);
NO } FIM SE
FIM SENO }
FIM}
Estrutura de repetio 1: (ENQUANTO WHILE) Usado quando precisamos repetir a execuo de um trecho de cdigo, sem que se
saiba inicialmente o nmero de repeties, ento se cria uma chave/teste para retornar a execuo
"enquanto" (while) executa um comando (ou vrios) enquanto uma condio for verdadeira.
xemplo 6: Algoritmo para um usurio jogar o jogo da velha contra um computador.
para o passo seguinte aps o trecho em repetio.
O loop
E
Testaseumadasopesquenocontmnenhumadasoutrasduas.
Com isso,sobramasoutrasopesnoSENO,quedevemsertestadasnovamente.
Sintaxe:
ENQUANTO(condi
comandos;
}
o){
FIMENQUANTO
INICIO JogoDaVelha {
EN UA
8
Q NTO ((existir um quadrado livre) E (ningu m perdeu/ganhou o jogo)) {
LEIA (jogada);
SE (existir um quadrado livre) {
SE (centro livre) {
Jogue no centro;
} FIM SE
SENO {
SE (adversrio tem 2 quadrados em linha, com o terceiro
e nesse quadrado desocupado;
desocupado) {
Jogu
} FIM SE
SENO
SE (h algum canto livre)
Jogue nesse canto;
} FIM SE
NO } FIM SE
M SENO } FI
} FIM SE
} FIM ENQUANTO
FIM
EsteSE(1)englobatodososoutros
}
elo usurio, sendo qu rmina quando o usurio escolhe um nmero negativo.
Exemplo 7: Algoritmo que calcula o dobro de um nmero digitado pe o programa s te
INICIO Dobro {
VARIAVEL INTEIRO: num;
IMPRIMA (Este programa calcula o dobro de um numero \n);
IMPRIMA (Quando quiser encerrar o programa digite um numero negativo\n);
IMPRIMA (Digite um numero: );
LEIA (num);
ENQUANTO (num > 0) {
IMPRIMA (\nDobro: , num * 2, \n);
IMPRIMA (Digite um numero: );
LEIA (num);
} FIM ENQUANTO
9
Lgica Booleana
Operador Matemtica Linguagem de programao
conjuno e &&
disjuno ou ||
negao no !
Tabela do oper no ! ador
A !A
V F
F V
Tabel o opera || a d dor ou
A B Tabela do operador e &&
A B A || B A && B V V V
V F V
F V V
V V V
V F F
F V F F F F F F F
INTRODUO A COMPUTAO PESCA E QUIMICAAULA 04 A 08ALGORITIMO E LINGUAGENS2.1 Algoritmo e fluxograma. 2.2 Instrues de um algoritmo. 2.3 Tipos de lin-guagens (mquina, simblica e auto nvel) 2.4 programa, traduo e execuo LINGUAGENS DE PROGRAMAO3.1 Definio de uma linguagem (PASCAL, FORTRAN ou BASICO) conjunto de caracteres, palavras reservadas e identificadores, tipos de dados simples. 3.2 Declarao de tipo simples. 3.3 Comandos de entrada e sada. 3.4 Comando de atribuio. 3.5 Operadores e expresses. 3.6 Exerccios. ESTRUTURAS DE CONTROLES4.1 Comandos repetitivos. 4.2 Comandos seletivos. 4.3 Exerccios em lab.