Buscar

ECT1103-Aula6

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UFRN 
Escola de Ciências e Tecnologia 
Introdução a Algoritmos 
ECT1103 – INFORMÁTICA FUNDAMENTAL 
Prof: Diego Rodrigues de Carvalho 
• Manter o telefone celular sempre 
desligado/silencioso quando estiver em 
sala de aula; 
• Nunca atender o celular na sala de aula. 
Objetivo da Aula 
 
• Introduzir o conceito de algoritmos; 
 
• Descrever as formas de representação de um algoritmo. 
 
Por Que Estudar Construção de Algoritmos? 
• Problema: Como construir uma trave de madeira? 
 
 
 
 
 
Etapas da Solução do Problema 
• Análise – Etapa em que o problema a ser resolvido é 
estudado em detalhes para definição dos materiais e 
passos necessários para a sua resolução; 
 
• Algoritmo – Utilização de ferramentas para descrever 
o problema com suas soluções: 
– Ferramentas: descrição narrativa, fluxograma ou português 
estruturado. 
Por Que Estudar Construção de Algoritmos? 
• Análise: o que eu preciso para resolver tal problema? 
– Material: madeira e ferramentas. 
Por Que Estudar Construção de Algoritmos? 
• Análise: 
– Usar pregos ou parafusos? 
 
 
 
 
– Esta decisão implica em usar martelo ou chave de fenda. 
Definir Passos 
1 - Serrar a madeira para ficar no 
tamanho desejado: 
 
2 – Pregar as pontas formando a trave: 
Algoritmos - Definição 
• Uma sequência de passos que visa atingir um 
objetivo bem definido; 
 
• Tem como objetivo representar o raciocínio (ordem 
dos passos) envolvido na realização de uma tarefa; 
 
• Exemplo (Colocar um carro em movimento): 
– Colocar a chave na ignição e dar partida no motor; 
– Pisar na embreagem; 
– Passar a primeira marcha; 
– Soltar a embreagem lentamente, enquanto pisa no 
acelerador. 
 
Algoritmos - Características 
• Finitude: algoritmos devem terminar após um número 
finito de passos; 
 
• Definição: cada passo deve ser precisamente definido; 
 
• Entradas: devem ter zero ou mais entradas; 
 
• Saídas: devem ter uma ou mais saídas; 
 
• Efetividade: todas as operações devem ser simples de 
modo que possam ser executadas em um tempo 
limitado. 
Exemplo de Problema 
• Defina um programa que receba dois números pelo 
teclado, calcule a média aritmética destes dois números e 
imprima o resultado no monitor; 
 
• Quais ferramentas posso utilizar para definir meu 
algoritmo ? 
Leia, some, divida, 
escreva, compare, 
multiplique, subtraia 
Formas de Representação de Algoritmos 
• Descrição Narrativa; 
 
• Fluxograma; 
 
• Pseudocódigo; 
 
• Linguagens de programação. 
 
Formas de Representação de Algoritmos 
• Descrição Narrativa: 
 
– Uso da linguagem natural; 
 
– Temos a inconveniência da má interpretação, originando 
ambigüidades e imprecisões; 
 
– Exemplo: a troca de um pneu furado; 
 
– Analisar as ambigüidades e imprecisões. 
Descrição Narrativa 
• Algoritmo: 
 
– afrouxar ligeiramente as porcas; 
– suspender o carro; 
– retirar as porcas e o pneu; 
– colocar o pneu reserva e as porcas; 
– abaixar o carro; 
– dar o aperto final nas porcas. 
Conceitos Fundamentais 
• Algoritmo: 
 
– De modo a torná-lo não ambíguo, é necessária uma 
formalização; 
 
– Definição de regras de semântica e sintaxe. 
Fluxograma 
• Uso de formas geométricas distintas produzindo 
ações distintas: 
 
Início ou fim do fluxograma; 
 
Entrada de dados; 
 
Cálculo de expressões; 
 
Saída de resultados; 
 
Tomada de decisão; 
 
Fluxo. 
Fluxograma 
Pseudocódigo 
• Uso de linguagem própria, aproximando-se mais das 
linguagens de alto nível, chamado, também de 
pseudolinguagem ou ainda portugol; 
 
• Forma geral: 
 algoritmo nome_do_algoritmo ; 
 variaveis 
 < declaração_de_variáveis >; 
 fim-variaveis 
 inicio 
 < instruções > ; 
 fim 
Pseudocódigo 
• algoritmo Media_do_aluno; 
 variaveis 
 m1, m2, m3, media: real; 
 fim-variaveis 
 inicio 
 m1 := leia( ); 
 m2 := leia( ); 
 m3 := leia( ); 
 media := ((m1*4)+(m2*5)+(m3*6))/15; 
 se media >= 7 então 
 imprima(“APROVADO”)‏; 
 senão 
 imprima(“REPROVADO”)‏; 
 fim-se 
 fim 
Linguagens de Programação 
• Linguagens de programação: 
 
– Uma linguagem de programação é um método 
padronizado para descrever instruções para um 
computador; 
 
– É um conjunto de regras sintáticas e semânticas usadas 
para definir um programa de computador. 
 
Linguagens de Programação 
• Linguagens de baixo nível: 
– Linguagens de máquina, assembly. 
 
• Linguagens de alto nível: 
– Fortran, Cobol, C, C++, Java, Python, Basic, Pascal, etc. 
 
 
Conceitos Básicos 
• Baixo nível: 
– Código otimizado; 
– Indicado para situações em que seja necessário explorar 
com mais profundidade os recursos da máquina. 
 
• Alto nível: 
– Facilidade na programação do algoritmo; 
– Portabilidade; 
– Manutenção do código. 
Linguagens de alto Nível 
• Exemplo usando a linguagem C/C++: 
#include <iostream> 
using namespace std; 
int main() { 
 float N1, N2, media; 
 media = (N1+N2)/2.0; 
 return 0; 
}

Outros materiais