portifolio grupo conhecendo algoritmo
DESCRIPTION
Trabalho de faculdade sobre algoritmoTRANSCRIPT
Itapuranga2011
ADRIANO DE SOUSAKARITON DE REZENDE RIBEIRO
MARCELO PEREIRA DE LIMA
SISTEMA DE ENSINO PRESENCIAL CONECTADOANALISE E DESENVOLVIMENTO DE SISTEMAS
CONHECENDO ALGORITMO
Itapuranga2011
CONHECENDO ALGORITMO
Trabalho apresentado ao Curso Analise e Desenvolvimento de Sistemas da Universidade Norte do Paraná – UNOPAR para as disciplinas do primeiro período aos professores:
Profº Denise DiasProfº Eliane AramanProfº Éverson MoraisProfº José R. PassiniProfº Veronice de Freitas
ADRIANO DE SOUSAKARITON DE REZENDE RIBEIRO
MARCELO PEREIRA DE LIMA
SUMÁRIO
1 INTRODUÇÃO......................................................................................................3
2 DESENVOLVIMENTO..........................................................................................5
3 CONCLUSÃO.....................................................................................................12
4 REFERÊNCIA.....................................................................................................13
1 INTRODUÇÃO
Um algoritmo representa de forma estruturada, um padrão de
comportamento de eventos ou sequência de ações, que levam a um resultado
esperado. Algoritmo é como definir o problema e esquematizar exercício do
raciocínio, um algoritmo é de forma geral uma descrição passo a passo de como um
problema pode ser solucionado. A descrição deve ser finita, e os passos devem ser
bem definidos sem ambigüidades, a razão da existência do algoritmo vem da
dissonância entre um estado desejado e aquele observado na realidade.
Algoritmo não é a solução de um problema, mas é o meio de obtê-la.
A resolução de um problema envolve vários parâmetros que devem ser organizados
através de alguma técnica formal. A técnica de desenvolvimento estruturado de
algoritmos tem o objetivo de:
Facilitar o desenvolvimento de algoritmos;
Facilitar o seu entendimento pelos operadores;
Antecipar a correção;
Facilitar manutenção e modificações;
Permitir que o desenvolvimento fosse feita por uma equipe de pessoas.
Uma variável é um local (área na memória do computador) que
armazena um tipo específico de conteúdo, uma variável contém um valor que se
modifica durante a execução do programa. Variáveis são componentes das
linguagens de programação, que identificam os valores que estão sendo
manipulados pelos programas.
Variável, como o próprio nome sugere, contém valores que variam
de acordo com a execução do programa, uma variável deve possuir um tipo
específico. As variáveis são divididas em 4 tipos principais:
Inteiro: Qualquer número inteiro (negativo, nulo ou positivo).
Real: Qualquer número real, nulo ou positivo.
Caractere: Caracteres alfanuméricos.
Lógico: valor lógico verdadeiro ou falso.
3
Exemplos:
Inteiro: valor; // a variável valor é do tipo inteiro
Real: media; // a variável media é do tipo real
Caractere: nome_aluno; // a variável nome_aluno é do tipo caracter
Lógico: maior; // a variável maior é do tipo booleano.
Na construção de algoritmos, é conveniente que o usuário possa
informar dados externos, para serem operados pelo programa. Assim, um programa
pode receber um dado informado por um operador através de um comando de
leitura da mesma forma, pode ser necessário conhecer o resultado de determinada
operação executada pelo computador, então será necessária uma forma de exibir os
dados.
Cada linguagem tem uma forma específica para entrada e saídas de
dados em algoritmos usaremos os comandos genéricos leia e escreva, para realizar
a interface com o usuário e o programa Visualg 2.
4
2 DESENVOLVIMENTO
Parte I
1- Escreva o pseudocódigo equivalente ao fluxograma abaixo:
Símbolos:
Resposta:
Algoritmo "CalculaConsumo"
// Função :
// Autor :
// Data : 23/05/2011
// Seção de Declarações
var
dist: real
vol: real
cm: real
inicio
escreva("Algoritmo para calcular o consumo")
escreva("Distância total percorrida (KM):")
5
Inicio
“Algoritmo para calcular o consumo”
“Distância total percorrida
(KM):”
A
A
DIST
“Volume do combustível gasto
(L):”
VOL
B
B
CM DIST/VOL
“Consumo médio =”, CM,”Km/I”
Fim
LEIAEscreva Processamento
leia(dist)
escreva("Volume do combustível gasto (L):")
leia(vol)
cm <- dist/vol
escreva("Consumo médio =”, CM,”Km/I")
fimalgoritmo
2 – Crie um algoritmo que recebera pelo teclado o nome de um funcionário e seu
salário bruto. Se o salário for acima de R$ 1.000,00, calcule 11% de desconto de
INSS; se não, 9%. Ao final, exiba o nome do funcionário, o salário bruto e o salário
com desconto de INSS.
Dados de Entrada: NOME, SALÁRIO BRUTO
Processamento: Se o salário for acima de R$ 1.000,00, calcule 11% de desconto
de INSS; se não, calcule 9%.
Saída: Ao final, exiba o nome do funcionário, o salário bruto e o salário com o
desconto de INSS.
Resposta:
Algoritmo "CalculaInss"
// Função :
// Autor :
// Data : 23/05/2011
// Seção de Declarações
var
nomeFuncionario: caracter
salarioBruto: real
descontoInss: real
inicio
escreva("Digite o nome do funcionario: ")
leia(nomeFuncionario)
escreva("Digite o salario bruto do funcionario: ")
leia(salarioBruto)
se(salarioBruto > 1000) entao
descontoInss <- salarioBruto * (0.11)
senao
6
descontoInss <- salarioBruto * (0.09)
fimse
escreva("Funcionario: ", nomeFuncionario)
escreva(", salario bruto: ", salarioBruto)
escreva(", salario com desconto de INSS: ", salarioBruto - descontoInss)
fimalgoritmo
3 – Crie um algoritmo em que, dada a tabela a seguir, calcula o valor de desconto a
ser concedido para um determinado cliente, de acordo com o valor da compra. O
algoritmo deverá receber pelo teclado o nome do cliente e o valor total da compra.
Valor a comprar % de desconto
Até R$ 1.000,00 5
Entre R$ 1.000,00 a R$ 5.000,00 10
Acima de R$ 5.000,00 15
Dados de Entrada: Nome do Cliente, valor total da compra.
Processamento: Comparar o valor da compra para obter o desconto de acordo com
a tabela.
Dados de Saída: Nome do cliente, valor do desconto.
Resposta:
Algoritmo "DescontoCliente"
// Função :
// Autor :
// Data : 23/05/2011
// Seção de Declarações
var
nomeCliente: caracter
valorCompra: real
desconto: real
inicio
escreva("Digite o nome do Cliente: ")
leia(nomeCliente)
escreva("Digite o valor da compra: ")
7
leia(valorCompra)
se(valorCompra <= 1000) entao
desconto <- valorCompra * (0.05)
senao
se (valorCompra > 1000) e (valorCompra <=5000) entao
desconto <- valorCompra * (0.10)
senão
se (valorCompra > 5000) entao
desconto <- valorCompra * (0.15)
fimse
fimse
fimse
escreva("Cliente: ", nomeCliente)
escreva(", desconto de: ", desconto)
fimalgoritmo
4 – O algoritmo abaixo possibilita calcular a média das notas de 5 alunos. Obs.: faça
as alterações necessárias para que o algoritmo possibilite a média da turma e
também imprima quantos alunos estão com a nota abaixo da média.
8
Algoritmo “Calculado Média de 5 Notas”Var
//Declarando as variáveisI : InteiroNOTA, SOMA, MEDIA: real
Inicio//Inicializado o comando de repetiçãopara I e 1 ate 5 faca
escreva (“Digite a nota:”)leia (NOTA)//Acumulando a NOTA lidaSOMA <- SOMA + NOTA
fimpara//Calulando a médiaMedia <- SOMA / 5//Escrevendo a média calculadaEscreva (“A média é:”, MEDIA)
fimalgoritmo
Resposta:
Algoritmo "CalculaMediaTurma"
// Função :
// Autor :
// Data : 23/05/2011
// Seção de Declarações
var
i, a, cont: inteiro
turma: vetor[1..10] de real
nota, soma, media: real
inicio
soma <- 0
cont <- 0
//turma de 30 alunos
para i de 1 ate 10 faca
escreva ("Digite a nota: ")
leia(nota)
turma[i] <- nota
soma <- soma + nota
fimpara
media <- soma /10
para a de 1 ate 10 faca
se(turma[a] < media) entao
cont <- cont + 1
fimse
a <- a + 1
fimpara
escreva("A media é: ", media," e ", cont," aluno(s) com nota(s) abaixo da média da
turma")
fimalgoritmo
9
5 – Na representação da conversão do sistema decimal para binário é obtido pelos
restos da divisão como ilustrado no exemplo abaixo. Esta atividade consiste na
elaboração ou na descrição de um algoritmo que possibilite a conversão do sistema
decimal para binário (poderá fazer uso de qualquer linguagem de programação para
exemplificar o código). No texto a seguir é representada a conversão de um número
decimal para binário (esse exemplo foi colocado somente para ilustrar a forma de
conversão).
89 209 44 21 04 22 2
0 02 11 20 1 5 2
1 2 20 1
O número binário constrói com os restos obtidos, do último para o primeiro. Assim o correspondente de 8910 em binário é 10110012.
8910 209 4455 211 04 2227 210 05 02 1113 20 15 02 11 556 2
1 07 13 15 278 21 1 16 07 139 2
0 18 19 69 20 1 09 34 2
1 14 17 20 1 8 2
0 4 20 2 2
0 1Algoritmo "decimalparabinario"// Função :// Autor :// Data : 24/5/2011// Seção de Declarações vardecimal: inteiroinicio// Seção de Comandos decimal <- 0leia(decimal)enquanto (decimal\2<>0) faca
10
escreval(decimal%2)decimal <- (decimal - (decimal%2))\2fimenquantoescreval(decimal%2)fimalgoritmo
Parte II
1 – Traduzir para a lógica algum conceito de Fundamentos da Administração da Informação e construir a respectiva tabela-verdade.
A partir das proposições simples p,q,r a seguir, escreve em linguagem lógica a proposição composta T (p,q,r) e faça a tabela verdade para essa proposição composta.
p: Dados são conjuntos de elementos que expressa um fato isolado gerado por uma atividade que pode ser controlada.
q: Informação é o resultado do tratamento dos dados existentes acerca de alguém ou de alguma coisa.
r: Conhecimento pode ser compreendido como o conjunto de ferramentas conceituais e categorias usadas pelos seres humanos para criar, colecionar armazena e compartilhar uma informação.
t: (p,q,r): Se dados são conjuntos de elementos que expressa um fato isolado gerado por uma atividade que pode ser controlada e informação não é resultado do tratamento dos dados existentes acerca de alguém ou de alguma coisa, então o conhecimento não pode ser compreendido como o conjunto de ferramentas conceituais e categorias usada pelos seres humanos para criar, colecionar armazenar e compartilhar uma informação.
p q r ~q ~r p^~q p^~q->~rV V V F F F VV V F F V F VV F V V F V FV F F V V V VF V V F F F VF V F F V F VF F V V F F VF F F V V F V
11
3 CONCLUSÃO
Agrademos a oportunidade que este trabalho nos proporcionou para
entender mais como funcionam estes sistemas, não tínhamos noção de tudo que
realizamos neste trabalho e de como funcionava tudo. Ganhamos conhecimento e
aprendizado em nossas vidas profissional agora que estamos começando na área, o
trabalho nos mostrou que se pretendermos crescer na área precisaremos estudar e
aperfeiçoar cada dia mais.
Foi um Trabalho que exigiu empenho e dedicação de todos para
realizar, acabamos descobrindo como funciona passo a passo a identificação de
erros de programas.
Desde já agradeço e espero ter correspondido com este trabalho
trazendo informações e conhecimento na área de programação.
12
4 REFERÊNCIA
ARAMAN, Eliane Maria de Oliveira; CAZETTA, Jenai Oliveira; Fundamentos de lógica e matématica discreta. São Paulo: Pearson, 2009
ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. Informação e documentação – referências – elaboração: NBR 6023. Rio de Janeiro, 2002a.
______. Informação e documentação – numeração progressiva das seções de um documento – apresentação: NBR 6024. Rio de Janeiro, 2003a.
______. Informação e documentação – sumário – apresentação: NBR 6027. Rio de Janeiro, 2003b.
______. Informação e documentação – citações em documentos – apresentação: NBR 10520. Rio de Janeiro, 2002b.
MARTINS, Paulo Roberto; PAIANO, Valessa C.; Linguagens e técnicas de programação. São Paulo: Person, 2009
NISHIMURA, Ruy Tsutomu; YOSHIDIO, Mitio; Organização de computadores. São Paulo: Person, 2009
SANTANA, Denise Dias; PERINI, Luis Cláudio; Fundamentos da administração da informação. São Paulo: Pearson, 2009
13