ALGORITMOS E LÓGICA DE
PROGRAMAÇÃO
Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@gmail.com
PRÉ AULA
algoritmo “JacquesBistrô” var n1,n2: inteiro c1,c2,comissaoFinal: real inicio escreva(“1º Número= “) leia(n1) escreva(“2º Número= = “) leia(n2) c1 <- n1 + n2 / 100 c2 <- (n1 + n2)/100 comissaoFinal<- c1 +c2escreval(“Comissão final= “, comissaoFinal:7:2)
fimalgoritmo
PRÉ AULA
#include <stdio.h> #include <conio.h> void main(){ int n1, n2; float c1,2, cf; printf("n1 = "); scanf ("%d", &n1); printf("n2 = ") scanf ("%d", &n2); c1 = n1 + n2 / 100; c2 = (n1 + n2)/100;CONCEITOS INICIAIS DE
ALGORITMOS
Formas de representação de algoritmos
Conhecer os princípios e conceitos que envolvem o aprendizado em construção de algoritmos e programação e a
sua importância para o universo do desenvolvimento de sistemas.
OBJETIVO DE APRENDIZAGEM
Conhecer o ambiente de programação e a maneira como ocorre o raciocínio logico computacional.
APRENDIZAGEM
RESULTADOPretende-se que os alunos, além de saber identificar a sequencia de ações que o sistema precisara executar, saibam elaborar algoritmos em pseudocódigo e em fluxogramas.
APRENDIZAGEM
CONHECIMENTO PRÉVIO• Conhecer o ambiente computacional que será utilizado no decorrer da disciplina: VisuAlG.
• Saber identificar as ações do sistema a partir da apresentação de uma situação próxima a realidade profissional.
• Transcrever as ações em linguagem natural, pseudocódigo e fluxograma.
DIAGNÓSTICO
Um triatleta, em fase de readaptação, esta treinando para competir nas Olimpíadas. Sabendo que a prova pode ter no máximo 51,5 km, ele precisa atingir bom desempenho para realizar os 1,5 km de natação, os 40 km de ciclismo e os 10 km de corrida. O atleta busca um dispositivo que indique os tempos ideais para superar cada fase com tranquilidade e melhorar os seus tempos. Faca um algoritmo que receba um numero, que indica a quantidade de minutos mínima para cumprir a prova e também, considere o intervalo, que seria a indicação do tempo ideal. O algoritmo deve verificar se este numero esta no intervalo entre 1 e 20 min.EXERCÍCIOS
Representa a entrada de dados os comandos:a) algoritmo “Calculo de Tempo”; var. b) numero: inteiro; inicio
c) escreva(“Digite um numero: “) d) leia(numero)
EXERCÍCIOS
Representa a entrada de dados os comandos:a) algoritmo “Calculo de Tempo”; var. b) numero: inteiro; inicio
c) escreva(“Digite um numero: “)
d) leia(numero)
e) se numero >= 1 entao
EXERCÍCIOS
Considere o enunciado do exercício anterior e indique a alternativa que representa um comando de saída de dados: a) algoritmo “Calculo deTempo”; var.b) numero: inteiro; inicio c) escreva(“Digite um numero: “) d) leia(numero)
e) se numero >= 1 entao
EXERCÍCIOS
Considere o enunciado do exercício anterior e indique a alternativa que representa um comando de saída de dados: a) algoritmo “Calculo deTempo”; var.b) numero: inteiro; inicio
c) escreva(“Digite um numero: “)
d) leia(numero) e) se numero >= 1 entao
EXEMPLO
É apresentado aqui o exemplo de um algoritmo que define o cálculo da média dos alunos, a considerar duas notas e obter um status de aprovação ou de reprovação caso a média seja inferior a 6,0.• Inserir nota 1 e a nota 2
• Calcular a media sendo que: (nota 1 + nota 2)/2. • Exibir a media e verificar se é menor do que “6,0” • Se sim - “aluno reprovado”, se não - “aluno aprovado”
LINGUAGEM C
#include <stdio.h>#include <stdlib.h> main() {
float a, b, media;
printf("Informe duas notas:\n"); scanf("%f%f%f", &a, &b, &c); media = (a + b + c)/3;
printf("A media e: %f, %f e %f igual a %f", a, b, c, media); fflush (stdin);
getch(); return 0; }
FLUXOGRAMA
Como ficaria o código para este algoritmo ?
PROCESSO DE CONSTRUÇÃO
Para facilitar a compreensão acerca do que é um algoritmo, e como ele pode auxiliar na resolução de problemas, tenha em mente os seguintes passos:1. Identifique o problema; 2. Imagine como pode ser resolvido;
3. Analise as soluções e escolha a que for mais viável; 4. Reavalie se necessário.
EXERCÍCIO
Suponha que em uma partida de vôlei, o sistema registra os pontos a partir do lançamento manual, ou seja, realizado pelo juiz ou assistente da partida, que atualiza os valores ponto a ponto. Nesse caso, para estabelecer qual e o ganhador, o sistema faz a contagem dos pontos do jogador A e do jogador B, o que tiver a maior quantidade de pontos e o vencedor. Faca o algoritmo em linguagem natural, em pseudocódigo e o seu fluxograma.DESCRIÇÃO NARRATIVA
1. Identifique os jogadores;2. Lance os pontos do jogador A; 3. Lance os pontos do jogador B;
4. Verifique a maior quantidade de pontos;
5. Se jogador A com maior quantidade de pontos, então, Jogador A e o campeão, senão, Jogador B;
FLUXOGRAMA
PSEUDOCÓDIGO
algoritmo "Verificar valor maior ou menor"var
A, B: inteiro inicio
escreval("Informe os pontos do jogador A: ") leia (A)
escreval ("Informe os pontos do jogador B: ") leia (B)
se A > B entao
escreva ("O campeão e o jogador A:", A ) senao
escreva ("O campeão e o jogador B:", B) fimse
fimalgoritmo
CONVITE AO ESTUDO
O cenário envolve os comerciantes do Litoral Sul do pais. Suponha que eles estejam se organizando em cooperativa para angariar recursos e melhorar as transações comerciais deste mercado. Contrataram uma consultoria para desenvolver um aplicativo, e suponha que você faz parte dessa equipe. O grande desafio dos comerciantes e da empresa contratada para o desenvolvimento desse aplicativo e achar uma solução que atenda a necessidade de divulgação, organização das informações, facilidade deCONVITE AO ESTUDO
Um ponto de atenção é que precisam realizar todos os processos, desde a determinação das ações do sistema e tarefas, até a escolha das ferramentas de análise e desenvolvimento do aplicativo. Uma das propostas da empresa e disponibilizar um protótipo do aplicativo para celular que informe aos usuários quais são os serviços de hotelaria e gastronomia disponíveis naquela região. A partir desta situação, os comerciantes esperam obter soluções que apresentem uma forma de contabilizar o índice de satisfação do usuário quanto a facilidade de navegação e uso do aplicativo. Para tal, após realizar a consulta, o usuário é direcionado a um painel com os ícones que representam o seu índice de satisfação: insatisfeito, satisfeito ou plenamente satisfeito. O prazo para desenvolvimento deste e de seis meses.ATIVIDADE INICIAL
Começaremos com a atividade de desenvolver um processo que realize o cálculo da média de pessoas que acessaram o software.
O passo 2 deverá ser apresentado em linguagem natural, fluxograma e pseudocódigo.
DESCRIÇÃO NARRATIVA
1. Inicio2. O aplicativo devera permitir o login por cadastro ou por rede social.
3. Apos logar, o usuário será direcionado a um processo para escolher a categoria: gastronomia ou hotel.
4. Aplicativo contabiliza acessos de gastronomia e hotelaria e gera a media.
FLUXOGRAMA
PSEUDOCÓDIGO
Vamos desenvolver no VisuALG.• Declaração de variáveis e constantes. PRÓXIMA AULA....