Escolar Documentos
Profissional Documentos
Cultura Documentos
21 de outubro de 2009
Introdu c ao
Em aulas anteriores...
Conceito de computador Equipamento para realizar processamento de dados; Possui hardware e software; Software composto por programas! Toda tarefa de processamento de dados necessita de um programa (ou v arios programas interligados); Todo programa e constru do atrav es de uma linguagem de programa c ao.
Introdu c ao
Etapas para Desenvolvimento de Programas
An alise: estuda o enuciado do problema e dene os dados de entrada do programa, o processamento a ser realizado e os dados de sa da; Algoritmo: consiste em ferramentas que auxiliam na descri c ao do problema com suas solu c oes; Codica c ao: o algoritmo e transformado em c odigos da linguagem de programa c ao escolhida para se trabalhar.
Observa c ao
Um programa e a codica c ao de um algoritmo em uma linguagem de programa c ao.
Conceito de Algoritmo
Um algoritmo e a descri c ao de uma sequ encia de passos que deve ser seguida para a realiza c ao de uma tarefa.
Conceito de Algoritmo
Conceito de Algoritmo
Observa c ao
Podem existir v arios algoritmos para solucionar o mesmo problema.
Compreender o problema a ser resolvido; Denir os dados de entrada; Denir que tipo de processamento (c alculos) ser ao efetuados; Denir os dados de sa da; Construir o algoritmo; Testar o algoritmo com simula c oes.
Tipos de Algoritmos
Descri c ao Narrativa
Consiste em analisar o enunciado do problema e escrever, utilizando uma linguagem natural, os passos a serem seguidos para sua resolu c ao. Vantagem: n ao e necess ario aprender nenhum conceito novo; Desvantagem: a l ngua natural abre espa co para v arias interpreta c oes, o que pode dicultar a transcri c ao do algoritmo para programa.
Tipos de Algoritmos
Descri c ao Narrativa Exemplo
Algoritmo para mostrar o resultado da multiplica c ao de dois n umeros: 1. Receber os dois n umeros que ser ao multiplicados. 2. Multiplicar os dois n umeros. 3. Mostrar o resultado obtido na multiplica c ao.
Tipos de Algoritmo
Fluxograma
Consiste em analisar o enunciado do problema e escrever, utilizando s mbolos gr acos pr e-denidos, os passos a serem seguidos para sua resolu c ao. Vantagem: uma vez que se tem o conhecimento dos s mbolos, entender um algoritmo escrito em uxograma e mais simples que entender um algoritmo narrativo; Desvantagem: e necess ario aprender a simbologia dos uxogramas.
Tipos de Algoritmo
Fluxograma
S mbolos gr acos:
Simbolo utilizado para indicar inicio e fim do algoritmo
Simbolo que permite indicar o sentido do fluxo de dados. Serve exclusivamente para conectar os simbolos ou blocos existentes
Simbolo utilizado para indicar que deve ser tomada uma deciso, apontando a possibilidade de desvios.
Tipos de Algoritmo
Fluxograma Exemplo
M = N1 x N2
Fim
Tipos de Algoritmo
Pseudoc odigo
Consiste em analisar o enunciado do problema e escrever, por meio de regras pr e-denidas, os passos a serem seguidos para sua resolu c ao. Vantagem: a passagem do algoritmo para qualquer linguagem de programa c ao e quase imediata, basta conhecer os c odigos da linguagem; Desvantagem: e necess ario aprender as regras do pseudoc odigo.
Tipos de Algoritmo
Pseudoc odigo Exemplo
Algoritmo para mostrar o resultado da multiplica c ao de dois n umeros: 1: IN ICIO ALGORITMO 2: DECLARE N1, N2, M NUMERICO 3: ESCREVA Digite dois n umeros 4: LEIA N1, N2 5: M N1 * N2 6: ESCREVA Multiplica c ao = , M 7: FIM ALGORITMO
Um algoritmo e, posteriormente, um programa, recebem dados que precisam ser armazenados no computador e utilizados no processamento; O armazenamento e feito na mem oria; Uma vari avel representa uma area da mem oria que armazena um determinado dado;
A vari avel deve possuir um nome e deve ser denido que tipo de dado ela pode armazenar; Uma vari avel pode ter seu valor alterado (por outro do mesmo tipo) a qualquer momento.
Os identicadores s ao os nomes utilizados para as vari aveis nos algoritmos e programas. As regras b asicas para a forma c ao dos identicadores s ao: Pode-se utilizar n umeros, letras mai usculas, letras min usculas e o caractere underscore. Exemplo: Nota 1, Nota01; O primeiro caractere deve ser sempre uma letra. Exemplo: 01Nota n ao pode! N ao s ao permitidos espa cos em branco nem s mbolos especiais (@, $, +, -, %, !, etc.). Exemplo: Nota 01 n ao pode! Existem palavras que s ao exclusivas para as linguagens de programa c ao. Tais palavras n ao podem ser utilizadas como identicadores.
Tipos de Dados
Valores que as Vari aveis Recebem
Num erico: Podem assumir valores inteiros (-23, 0, 237, ...) ou valores reais (-23.45, 0.0, 234.478). L ogico: Podem assumir valores booleanos: verdadeiro ou falso. Caractere: Tamb em e conhecido como tipo Literal; Esse tipo pode assumir um u nico caractere ou uma sequ encia de caracteres; Exemplo: Inform atica Aplicada.
Linguagem de Programa c ao
A Linguagem que ser a utilizada...
Uma linguagem de programa c ao consiste em um conjunto de c odigos que traduz um algoritmo para um programa; Esse c odigo possui regras e palavras chaves espec cas da linguagem adotada; Exemplo:
#include <stdio.h> int main(){ int N1, N2, M; printf("Digite dois n umeros: "); scanf("%d %d", &N1, &N2); M = N1*N2; printf("Multiplica c~ ao = %d", M); return(0); }
Linguagem de Programa c ao
A Linguagem que ser a utilizada...
A linguagem a ser utilizada ser a a C/C++; A linguagem C foi criada em 1972, nos Laborat orios Bell, para o desenvolvimento do sistema operacional UNIX; A linguagem C++ foi originalmente criada como uma extens ao da linguagem C. Hoje ela e uma das mais utilizadas no mundo acad emico. Ambas s ao linguagens de alto n vel o programador n ao precisa se preocupar com fun c oes espec cas do processador.
Paradigmas de Programa c ao
Paradigma e a representa c ao de um padr ao a ser seguida; Paradigma de programa c ao est a relacionado com a forma de pensar do programador e como ele busca a solu c ao para o problema; H a dois paradigmas principais em programa c ao:
Estruturado; Orientado a objetos.
Paradigmas de Programa c ao
Programa c ao Estruturada
Pelo paradigma estruturado, qualquer problema pode ser resolvido utilizando tr es estruturas b asicas: sequencial, condicional e de repeti c ao (iterativa); Procura encontrar uma forma de quebrar um problema complexo em v arios problemas simples, que trabalhando conjuntamente, obt em o resultado desejado.
Paradigmas de Programa c ao
Programa c ao Orientada a Objetos
No paradigma orientado a objetos, o programador enxerga o problema como uma cole c ao de objetos que interagem por meio de troca de mensagens.
Paradigmas de Programa c ao
Exemplo
Problema
Calcular a area e o per metro de um ret angulo. Para isso, dever a existir uma janela pela qual ser ao informadas as medidas dos lados do ret angulo. Nesta janela tamb em ser ao exibidos os resultados encontrados.
Paradigmas de Programa c ao
Exemplo
Pelo paradigma estruturado, o problema principal pode ser dividido nos seguintes problemas: 1. Obter o valor da altura do ret angulo; 2. Obter o valor da largura do ret angulo; 3. Calcular a area; 4. Calcular o per metro; 5. Mostrar os resultados.
Paradigmas de Programa c ao
Exemplo
Pelo paradigma orientado a objeto, o problema principal pode ser visto como dois objetos se comunicando: janela e ret angulo. Assim, deve-se: 1. Programar a janela para receber as medidas do ret angulo a partir do usu ario (entrada de dados) e enviar essas medidas para o objeto ret angulo; 2. Programar o ret angulo para receber as medidas da janela, fazer com que ele calcule a sua area e o seu per metro e, por m, enviar os resultados para a janela; 3. Uma vez que a janela recebeu essa mensagem, ela deve apresentar o resultado para o usu ario.
Paradigmas de Programa c ao
De uma maneira geral: A linguagem C foi originalmente projetada para escrever programas estruturados; A linguagem C++ possui elementos que permitem uma programa c ao orientada a objetos.
Estrutura Sequencial
a estrutura que permite criar o algoritmo como uma sequ E encia de passos para resolver um determinado problema. Consiste em: Utilizar uma palavra-chave para iniciar o algoritmo (IN ICIO ALGORITMO); Declarar as vari aveis e seus tipos; Realizar o processamento sobre as vari aveis; Finalizar o algoritmo com uma outra palavra chave (FIM ALGORITMO).
Exemplo
IN ICIO ALGORITMO 2: DECLARE vari aveis 3: bloco de comandos 4: FIM ALGORITMO
1:
Utiliza a palavra chave DECLARE, seguida do identicador da vari avel e do seu tipo.
Exemplo
1: 2: 3: 4: 5:
IN ICIO ALGORITMO DECLARE X NUMERICO DECLARE Y , Z CARACTERE DECLARE TESTE LOGICO FIM ALGORITMO
Atribui c ao de Valores
Exemplo
1: 2: 3: 4: 5: 6: 7: 8:
IN ICIO ALGORITMO DECLARE X NUMERICO DECLARE Y , Z CARACTERE DECLARE TESTE LOGICO X 4 Y teste TESTE falso FIM ALGORITMO
Comando de Entrada
Exemplo
1: 2: 3: 4: 5:
Comando de Sa da
Exemplo
1: 2: 3: 4: 5: 6:
Exemplo
Fa ca um algoritmo que receba quatro n umeros inteiros e que calcule e apresente a soma deles.
1: 2: 3: 4: 5: 6: 7: 8:
IN ICIO ALGORITMO DECLARE n1, n2, n3, n4 NUMERICO DECLARE soma NUMERICO ESCREVA Digite os quatro n umeros LEIA n1, n2, n3, n4 soma n1 + n2 + n3 + n4 ESCREVA Soma = , soma FIM ALGORITMO
Exemplo
Fa ca um algoritmo que receba tr es notas e que calcule e apresente a m edia aritm etrica entre elas.
1: 2: 3: 4: 5: 6: 7: 8:
IN ICIO ALGORITMO DECLARE n1, n2, n3, NUMERICO DECLARE media NUMERICO ESCREVA Digite as tr es notas: LEIA n1, n2, n3 media (n1 + n2 + n3)/3 ESCREVA M edia = , media FIM ALGORITMO
Pr oxima Aula...
Continua c ao de algoritmos: Estruturas sequenciais mais exemplos e exerc cios; Estruturas condicionais; Exemplos e exerc cios.