Académique Documents
Professionnel Documents
Culture Documents
Lgica de Programao
wmascarenhas@area1.edu.br
Linguagem de Programao
O que linguagem? Meio de comunicao Exemplos? E Linguagem de programao? Meio de comunicao entre usurio e computador, atravs do qual podemos desenvolver programas para informarmos ao computador o que queremos que seja feito
Programa
Computador
Linguagem de Programao
Definio
Notao para escrever programas, atravs dos quais podemos nos comunicar com o hardware e dar as ordens adequadas para a realizao de um determinado processo; Conjunto de regras que providencia a maneira de dizer a um computador que operaes executar; Conjunto de smbolos (vocabulrio) e regras (gramtica) que especifica como transmitir informaes entre usurios e computador;
Algoritmo x Programa
Algoritmo uma sequncia finita de aes, ordenadas de forma lgica, que devem ser executadas para que se possa resolver uma determinada tarefa; Quando a forma de se expressar essas aes obedecem s regras de alguma linguagem de programao, passamos a cham-lo de Programa; Uma vez concebida uma soluo algortmica de um problema, esta pode ser traduzida para qualquer linguagem de programao.
Algoritmo x Programa
Os computadores, infelizmente s fazem aquilo que mandamos e no necessariamente o que desejamos que eles faam! Computador no tem senso prprio => deve receber instrues explcitas No deve haver ambiguidade nas instrues do programa Ex. calcule as mdias das notas dos alunos e informe quantos alunos ficaram com mdia acima da mdia da faculdade Onde esto as notas, quantas so, qual a mdia da faculdade, os ausentes devem ser includos???
Qualidades de um Algoritmo
1- O algoritmo deve ter um incio
2- Cada passo do algoritmo deve ser uma instruo que possa ser realizada 3- A ordem dos passos deve ser precisamente determinada 4- O algoritmo deve ter um fim
Identificao do Problema; Definir cada passo precisamente; Deve existir zero ou mais entradas tomadas de conjuntos bem definidos; Deve existir uma ou mais sadas; Deve existir uma condio de fim sempre atingida para quaisquer entradas e num tempo finito;
Teste do Algoritmo
Dicas!
Algoritmos no se aprende: - Copiando algoritmos - Estudando algoritmos Algoritmos s se aprende: - Construindo algoritmos - Testando algoritmos - Atravs de muitos exerccios - Organizando as idias antes de comear - Entendendo as entradas, os objetivos e as sadas desejadas
Descrio Narrativa Fluxograma Convencional Pseudocdigo (ou Portugus Estruturado) Linguagem de Programao
Descrio Narrativa
Os algoritmos so expressos diretamente em linguagem natural. Muitas vezes d oportunidade a ms interpretaes, ambiguidades e imprecises. Exemplos:
Algoritmo Lavar Cabelo 1 -- Molhe o cabelo 2 -- Repita duas vezes Coloque xampu no cabelo Massageie at fazer espuma Enxague
Algoritmo Fritar Ovo 1 -- pegar frigideira , ovo , oleo e sal 2 -- colocar oleo na frigideira 3 -- acender fogo 4 -- colocar a frigideira no fogo 5 -- esperar o oleo esquentar 6 -- colocar o ovo 7 -- retirar quando pronto
Fluxograma Convencional
uma representao grfica de algoritmos onde formas geomtricas diferentes implicam aes (instrues, comandos) distintas.
Em Analise
Algoritmo para clculo da mdia a partir de 2 notas de um aluno e, se a mdia for maior que 7, mostra se o aluno est aprovado, caso contrrio, mostra que a situao do aluno est sendo analisada.
Fim
Linguagem de Programao
Obedece as regras de sintaxe e semntica da linguagem de programao que est sendo utilizada. No exemplo um programa na linguagem C:
#include <stdio.h> #include <stdlib.h>
main() { float N1, N2, media; printf (Informe valor da primeira nota ); scanf (%f,&N1); printf (Informe valor da segunda nota ); scanf (%f,&N2); media = ( N1+N2 )/2; if (media >= 7) { printf ("Aprovado); } else { printf(Em Analise); } }
Estrutura do Algoritmo Comandos de entrada e sada Variveis Operadores Aritmticos Atribuio de Valores
Estrutura de um Algoritmo
ENTRADA
PROCESSAMENTO
SADA
No algoritmo: Calcule a mdia do semestre(2 unidades) de um aluno da rea-1. a) Quais so os dados de entrada? b) Qual ser o processamento para obter o resultado? c) Quais sero os dados de sada?
Entrada de dados Dados que o usurio dever digitar para que o processamento possa ser realizado - leitura; Os dados so inseridos no programa atravs das variveis (veremos mais adiante); Nesta disciplina a entrada de dados ser efetuada via teclado; Sada de dados Dados resultantes do processamento que devero ser mostrados ao usurio - impressos; Nesta disciplina ser utilizado o vdeo;
Variveis
So espaos de memria, que podem assumir diferentes valores dentro do mesmo algoritmo;
Embora uma varivel possa assumir diferentes valores, ela s pode armazenar um valor a cada instante;
A cada varivel est associado um nome (identificador); um tipo que define a natureza da informao que ela pode armazenar; e um contedo;
Variveis - Identificadores
So nomes simblicos. o que d o nome a varivel; So compostos por letras e dgitos numricos, sendo que o primeiro caracter deve ser uma letra, e no devem existir espaos em branco; Identificadores vlidos: k, X, y, tamanho, tam, tam12, fim_dados; Identificadores no vlidos: 2k, fim de dados, x.data, 2@, a%
Operadores Aritmticos
Os operadores aritmticos so usados para desenvolver operaes matemticas. A seguir est a lista que usaremos:
Operador + * / Ao Soma (inteira e ponto flutuante) Subtrao ou Troca de sinal (inteira e ponto flutuante) Multiplicao (inteira e ponto flutuante) Diviso (inteira e ponto flutuante)
A prioridade segue os mesmos conceitos da matemtica. Lembrando que os parnteses alteram a prioridade.
Atribuio
A funo do comando de atribuio guardar um valor em uma varivel. O smbolo utilizado para atribuio o = (igual); Qualquer resultado de expresso pode ser atribudo a uma varivel, primeiro resolvendo a expresso e depois atribuindo o resultado varivel.
Exerccios
1) Faa um algoritmo que leia um nmero inteiro e imprima o seu antecedente (inteiro anterior) e o seu sucessor (inteiro posterior). Lembre-se: a) Quais so os dados de entrada? b) Qual ser o processamento para obter o resultado? c) Quais sero os dados de sada? 2) Um operador ganha R$ 30,00 por hora trabalhada. Informe qual foi o salrio recebido aps trabalhar 40 horas. Lembrando que ele tem um desconto de 5% de impostos. 3) No exemplo anterior, solicite o valor da hora, o nmero de horas trabalhadas e o percentual de desconto. Faa um algoritmo que possa calcular o salrio de qualquer funcionrio independente dos valores informados.
Exerccios
4) Faa um algoritmo que leia as 3 notas de um aluno e calcule a mdia final deste aluno. Considerar que a mdia ponderada e que o peso das notas : 2,3 e 5, respectivamente.
5) Faa um algoritmo que receba um valor que o valor pago, um segundo valor que o preo do produto e retorne o troco a ser dado.
6) Faa um algoritmo que receba o valor do quilo de um produto e a quantidade de quilos do produto consumida calculando o valor final a ser pago. 7) Faa um algoritmo que leia dois nmeros, apresente o resultado: soma, subtrao, multiplicao e diviso.
Exerccios
8) Faa um algoritmo que converta um valor em (R$) a partir do valor lido em dlar (US$). Leia a quantidade de dlares e a cotao do mesmo. 9) Uma loja vende produtos em 5 vezes sem juros. Leia o valor do produto e exiba o o valor de cada prestao. 10) Receba o custo de um produto e o percentual de acrscimo. Informe qual ser o valor da venda. 11) Leia duas variveis a e b.Troque os seus valores. Imprima o valor final de a e b (faa o teste).