Buscar

Atividades contextualizadas lógica algoritimica

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 15 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 15 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 15 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

ATIVIDADE CONTEXTUALIZADA:
LOGICA DE PROGRAMAÇÃO ALGORITIMICA
Nome: Denilson Ribeiro de França 
Matrícula: 01336267
Curso: Analise e desenvolvimento de sistemas
O presente trabalho tem o objetivo de explicar o funcionamento de um algoritmo simples para uma resolução de um problema do cotidiano; levando em consideração como este algoritmo criado afeta na mudança do problema escolhido.
O problema escolhido foi o boletim escolar. Onde ainda hoje é usado em diversas escolas de formação básica. Foi usado para a construção do algoritmo o software Visualg. “A história do aplicativo desenvolvido por Nicolodi começa em 1996, quando o professor Claudio Morgado de Souza criou o Visualg (Visual Algoritmo) para um curso de graduação. O Visualg podia ser utilizado para interpretar os algoritmos mostrando também as variáveis e utilizava o método Portugol (um pseudocódigo escrito em português), desenvolvido por Nicolodi. Ambos os professores eram programadores da mesma linguagem e se conheceram, o que acabou resultando em uma parceria.”1
 Usado em escolas técnicas e universidades por alunos e professores no ensino e aprendizagem da lógica de programação algorítmica. Isso posto, tenho como proposito levar o projeto do boletim escolar para a criação de um app para a plataforma Android; por ser um sistema mundialmente usado em smartphones de diversos fabricantes; disponibilizando na Play store. Podendo ser usado pelas escolas e também pelos pais dos alunos ou por ambos.
Foi usado o comando “se entao” aninhado com o objetivo de ter três respostas para a média do aluno levando em consideração suas notas. Onde o programa pedirá ao usuário para ele informa seu nome.
Em seguida o usuário será convidado a informar a primeira nota, segunda, terceira e quarta nota.
Após o usuário informar todas as notas o programa fará a resolução da média que consiste na soma das quatro notas dividido por quatro. Para não ter muita informação na tela e facilitar a usabilidade do programa foi usado o comando “limpatela” que serve para limpar a tela e deixar pronta para receber a resposta do programa com o resultado da média e também a situação do aluno(a). 
Após o usuário digitar as notas e teclar enter é mostrada a média e a situação do aluno(a).
 
 
Fluxograma do algoritmo boletim escolar 2
Código usado nesta atividade: 
Algoritmo "Cálculo da média de um aluno"
// Disciplina: [Linguagem e Lógica de Programação]
// Descrição: Calcula a média de um aluno (Calculo matemático)
// Autor(a): Denilson Ribeiro de França
Var
// Seção de Declarações das variáveis 
Nota1, Nota2, Nota3, Nota4, Media: REAL
Nome: caracter
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
Escreva (" Informe o nome do(a) aluno(a): ")
//"Entrada de dados", O usuário digitará o nome do aluno.
Leia (Nome)
//O nome do aluno ficará armazenado na variável Nome.
Escreva ("Informe a primeira nota: ")
//"Entrada de dados", O usuário digitará a nota 1.
Leia (Nota1)
//A nota 1 ficará armazenada na variável Nota1.
Escreva ("Informe a segunda nota: ")
//"Entrada de dados", O usuário digitará a nota 2.
Leia (Nota2)
//A nota 2 ficará armazenada na variável Nota2.
Escreva ("Informe a terceira nota: ")
//"Entrada de dados", O usuário digitará a nota 3.
Leia (Nota3)
//A nota 3 ficará armazenada na variável Nota3.
Escreva ("Informe a quarta nota: ")
//"Entrada de dados", O usuário digitará a nota 4.
Leia (Nota4)
//A nota 4 ficará armazenada na variável Nota1.
limpatela //Comando para limpar a tela
Media <- (Nota1 + Nota2 + Nota3 + Nota4)/4
//Calculo para atribuir a média do aluno; que será armazenada na variável Media.
se (Media >= 7) entao
//Inicio da função se com uma verificação de notas armazenadas na variável Notas 1,2,3 e 4.
 Escreval ("Aluno(a): ",Nome," foi aprovado(a) com média: ",Media, " Parabéns!")
 //Saída de dados para o usuário
 senao 
//Se o teste for falso e a média for menor que sete passará para o passo seguinte.
 se (Media <= 6.9 ) e (Media > 4) entao
 //Segundo teste logico; se a média for menor ou igual a 6.9 e media for maior que quatro for.
 Escreval ("Aluno(a): ",Nome," está em recuperação com média: ",Media," Procure seu professor!")
 //Saída de dados para o usuário.
 senao
 se (Media <= 4) entao //Terceiro teste se media for menor ou igual a quatro.
 Escreval ("Aluno(a): ",Nome," reprovado(a) com média: ",Media)
 fimse
 fimse
fimse
Fimalgoritmo
Outra forma para implementar esse algoritmo
Seria interessante também se fizesse com mais uma função para o programa gerar uma maior interação com o usuário e também automatizar a execução do mesmo. Foi usado o comando “repita” para quando o usuário terminar de ver sua média ele será questionado se deseja refazer o cálculo ou se deseja encerrar o programa somente. Conforme imagens abaixo:
Se o usuário digitar o número um como na imagem ele volta a tela em que ele é convidado a informar seu nome.
Tela de início do programa
Como poderia ser também:
Algoritmo "Cálculo da média de um aluno"
// Disciplina: [Linguagem e Lógica de Programação]
// Descrição: Calcula a média de um aluno (Calculo matemático)
// Autor(a): Denilson Ribeiro de França
Var
// Seção de Declarações das variáveis 
Nota1, Nota2, Nota3, Nota4, Media: REAL
Nome: caracter
Opcao: Inteiro
Procedimento Menu
Inicio
 Escreval ()
 Escreval (" ********************************************")
 Escreval (" * 1 * Refazer o calculo mais uma vez *")
 Escreval (" * 2 * Sair *")
 Escreval (" ********************************************")
 Escreval ()
Fimprocedimento
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
repita
// Função repita para o usuário refazer novamente o cálculo se assim o desejar
Escreva (" Informe o nome do(a) aluno(a): ")
//"Entrada de dados", O usuário digitará o nome do aluno.
Leia (Nome)
//O nome do aluno ficará armazenado na variável Nome.
Escreva (" Informe a primeira nota: ")
//"Entrada de dados", O usuário digitará a nota 1.
Leia (Nota1)
//A nota 1 ficará armazenada na variável Nota1.
Escreva (" Informe a segunda nota: ")
//"Entrada de dados", O usuário digitará a nota 2.
Leia (Nota2)
//A nota 2 ficará armazenada na variável Nota2.
Escreva (" Informe a terceira nota: ")
//"Entrada de dados", O usuário digitará a nota 3.
Leia (Nota3)
//A nota 3 ficará armazenada na variável Nota3.
Escreva (" Informe a quarta nota: ")
//"Entrada de dados", O usuário digitará a nota 4.
Leia (Nota4)
//A nota 4 ficará armazenada na variável Nota1.
limpatela //Comando para limpar a tela
Media <- (Nota1 + Nota2 + Nota3 + Nota4)/4
//Calculo para atribuir a média do aluno; que será armazenada na variável Media.
se (Media >= 7) entao
//Inicio da função se com uma verificação de notas armazenadas na variável Notas 1,2,3 e 4.
Escreval (" Aluno(a): ",Nome,") 
Escreval (" Aprovado(a) com média: ",Media, " Parabéns!")
 //Saída de dados para o usuário
 senao 
//Se o teste for falso e a média for menor que sete passará para o passo seguinte.
 se (Media <= 6.9 ) e (Media > 4) entao
 //Segundo teste logico; se a média for menor ou igual a 6.9 e media for maior que quatro for.
 Escreval (" Aluno(a): ",Nome,") 
 Escreval ("Em recuperação com média: ",Media," Procure seu professor!")
 //Saída de dados para o usuário.
 senao
 se (Media <= 4) entao //Terceiro teste se media for menor ou igual a quatro.
Escreval (" Aluno(a): ",Nome,") 
Escreval (" Reprovado(a) com média: ",Media)
 fimse
 fimse
fimse
 Menu
 Escreva("Escolha uma opção: ")
 leia (Opcao)
 escolha (Opcao)
 Caso 1
 limpatela
 Caso 2
 Escreval(" Obrigado e até a próxima.")
 outrocaso
 Escreval (" Opção invalida")
 Interrompa
 fimescolha
 ate Opcao = 2
Fimalgoritmo
Mais uma forma de implementar esse algoritmo com vetorese matrizes fazendo com que a saída na tela para o usuário fique organizada como uma tabela com linhas e colunas. Alocando viários espaços na memória ram. 
Código usado nesta implementação:
Algoritmo "Cálculo da média de um aluno"
// Disciplina: [Linguagem e Lógica de Programação]
// Descrição: Calcula a média de um aluno (Calculo matemático)
// Autor(a): Denilson Ribeiro de França
var
 nomes: vetor [1..4] de caractere
 notas: vetor [1..4,1..4] de real
 medias: vetor [1..4] de real
 cont1, cont2: inteiro
 Opcao: Inteiro
 nome : caractere
Procedimento Menu
Inicio
 Escreval ()
 Escreval (" **************************************")
 Escreval (" * 1 * Refazer o calculo mais uma vez *")
 Escreval (" * 2 * Sair *")
 Escreval (" **************************************")
 Escreval ()
Fimprocedimento
inicio
 Repita
 Escreva("o nome do aluno(a): ")
 Leia (nome)
 //Leitura dos nomes e as notas de cada aluno
 Para cont1 de 1 Ate 4 Faca
 Escreval()
 Escreva("Digite o nome da matéria", cont1, ": ")
 Leia(nomes[cont1])
 Escreval()
 Para cont2 de 1 Ate 4 Faca
 Escreva("Digite a nota ", cont2, ": ", nomes[cont1], ": ")
 Leia(notas[cont1, cont2])
 Fimpara
 //CÁLCULO DAS MÉDIAS
 medias[cont1] := (notas[cont1, 1] + notas[cont1, 2] + notas[cont1, 3] + notas[cont1, 4]) / 4
 Fimpara
 //APRESENTAÇÃO DOS RESULTADOS
 Limpatela
 Para cont1 de 1 Ate 4 Faca
 Se (medias[cont1] >= 7) Entao
 Escreval("O(a) aluno(a) ", nome, " foi aprovado com as notas (", notas[cont1, 1], ", ", notas[cont1, 2], ", ", notas[cont1, 3], ", ", notas[cont1, 4], ") e média: ", medias[cont1])
 Escreval()
 Senao
 Se (medias[cont1] < 6.9) e (medias[cont1] > 4) Entao
 Escreval("O(a) aluno(a) ", nome, " está em recuperação com as notas (", notas[cont1, 1], ", ", notas[cont1, 2], ", ", notas[cont1, 3], ", ", notas[cont1, 4], ") e média: ", medias[cont1])
 Escreval()
 Senao (media[cont1] <= 4) Entao
 Escreval("O(a) aluno(a) ", nome, " foi reprovado com as notas (", notas[cont1, 1], ", ", notas[cont1, 2], ", ", notas[cont1, 3], ", ", notas[cont1, 4], ") e média: ", medias[cont1])
 Escreval()
 Fimse
 Fimse
 Fimpara
 Menu
 Escreval(" Escolha uma opção: ")
 Leia (Opcao)
 Escolha (Opcao)
 Caso 1
 limpatela
 Caso 2
 Escreval(" Obrigado e até a próxima.")
 Outrocaso
 Escreval (" Opção invalida")
 Interrompa
 Fimescolha
 Ate Opcao = 2
fimalgoritmo
O algoritmo é sem duvidas uma forma de expressar passos para a resolução de um problema do mundo real, e com esse algoritmo simplificar assim ações que ainda hoje são feitas como no caso do boletim escolar; assim seriamos mais ecologicamente corretos pois economizaríamos em papel e também em canetas, ou seja, simplificaria muito a vida dos professores e dos pais dos alunos e dos próprios alunos. Sendo assim pode se ter a solução do problema em questão seguindo os passos do algoritmo para sua resolução. 
Fontes de pesquisas:
1- https://www.infoescola.com/noticias/professor-brasileiro-desenvolve-metodo-e-aplicativo-que-facilitam-o-aprendizado-de-programacao/
2- https://online.visual-paradigm.com/app/diagrams/#diagram:proj=0&type=Flowchart

Continue navegando