Prévia do material em texto
Curitiba-PR 2024 LUCAS DA SILVA MIRANDA ELABORAÇÃO DE ALGORITMO E TESTE UTILIZANDO PORTUGOL Curitiba-PR 2024 ELABORAÇÃO DE ALGORITMO E TESTE UTILIZANDO PORTUGOL Trabalho de Administração de Empresa apresentado à Universidade Pitágoras Unopar, como requisito parcial para a obtenção de média bimestral na disciplina de Algoritmos e Lógica de Programação. Tutor: Alef Ferreira Tutor: Cecilia LUCAS DA SILVA MIRANDA SUMÁRIO 1 INTRODUÇÃO..........................................................................................................3 2 DESENVOLVIMENTO..............................................................................................4 2.1 DEFINIÇÃO DE VARIÁVEIS..................................................................................4 2.2 MOSTRANDO OPÇÕES DE CAMINHO................................................................5 2.3 MOSTRANDO RESPOSTAS COM BASE NAS ESCOLHAS DOS CAMINHOS...5 2.3.1 CASO TENHA ESCOLHIDO O CAMINHO 1......................................................5 2.3.2 CASO TENHA ESCOLHIDO O CAMINHO 2......................................................5 2.3.3 CASO TENHA ESCOLHIDO O CAMINHO 3......................................................5 3 CONCLUSÃO...........................................................................................................7 REFERÊNCIAS............................................................................................................8 3 1 INTRODUÇÃO No século XXI, a programação surge como uma competência fundamental, transcendendo as barreiras do mundo da tecnologia e se tornando um instrumento valioso em diversas áreas. A capacidade de criar algoritmos e desenvolver softwares não é apenas um diferencial para profissionais da computação, mas uma aptidão transformadora para qualquer indivíduo, independentemente da sua área de atuação, proporcionando soluções inovadoras para desafios cotidianos. No presente trabalho será apresentado um algoritmo com o nome de “Floresta Sussurrante”, que se trata de um jogo, onde o jogador terá 3 opções de caminhos diferentes, cada um levando a uma parte desconhecida e perigosa da floresta. Sua missão é escolher sabiamente o caminho a seguir, enfrentando desafios e tomando decisões vão impactar na sua jornada e sua pontuação final. 4 2 DESENVOLVIMENTO 2.1 DEFINIÇÃO DE VARIÁVEIS. Na primeira parte do algoritmo será apresentada as três variáveis usadas durante o algoritmo, que serão responsáveis por armazenar as escolhas do jogador. Sendo elas a primeira: • Inteiro Opção: Ela será responsável por armazenar qual opção de caminho foi escolhida pelo jogador. • Cadeia Resposta: Ela fará o armazenamento da resposta do jogador no enigma, caso escolha o primeiro caminho. • Cadeia Decisão: Essa será responsável por armazenar a decisão do jogador em “atravessar” ou “desviar”, caso o jogador escolha o caminho 2, e “contornar” ou “acordar” caso escolha o caminho 3. Como mostra a imagem a seguir. Fonte: O autor (2024) 2.2 MOSTRANDO OPÇÕES DE CAMINHO. Neste trecho do algoritmo será feita uma introdução do jogador ao jogo, e mostrando-lhe as três opções de caminho que ele escolherá para seguir, sendo caminho 1-Caminho das sombras, 2-Caminho da luz e 3-Caminho das criaturas, após a resposta do jogador a função “leia(opção)” entrará em ação lendo a resposta 5 do jogador e armazenando na variável “opção” do tipo inteiro sendo que a resposta do jogador deverá ser 1, 2 ou 3, caso o contrário aparecerá uma mensagem dizendo “Escolha inválida. Por favor, selecione um caminho válido”. Como na imagem a seguir: Fonte: O autor (2024) 2.3 MOSTRANDO RESPOSTAS COM BASE NAS ESCOLHAS DOS CAMINHOS. Neste trecho do algoritmo será descrito o caminho no qual o jogador escolheu, e apresentado o obstáculo que o mesmo deverá de passar, será utilizada a função “leia” para armazenar a resposta e/ou a decisão do jogador dentro do caminho escolhido e assim armazenando na devida variável. Como na imagem a baixo: Fonte: O autor (2024) 6 2.3.1 CASO TENHA ESCOLHIDO O CAMINHO 1. Caso o jogador escolha o caminho 1, será apresentado uma mensagem descrevendo o caminho e qual o obstáculo que o jogador terá de passar, nesse caso um enigma, que a resposta do jogador será lida pela função “leia” e armazenada na variável “resposta” do tipo cadeia, que se correta ou errada aparecerá uma mensagem dizendo a recompensa e a pontuação ganha. Como mostra a imagem a baixo: Fonte: O autor (2024) 2.3.2 CASO TENHA ESCOLHIDO O CAMINHO 2. Caso o jogador escolha o caminho 2, aparecerá uma mensagem descrevendo o caminho e o obstáculo, neste caso será uma ponte sobre um rio turbulento que o jogador terá de decidir se tentará atravessar ou procurará um desvio seguro, e essa decisão será lida pela função “leia” e armazenada na variável “decisão” do tipo cadeia, que independente da resposta será exibida a recompensa e a pontuação ganha. Como mostra a imagem a baixo: Fonte: O autor (2024) 7 2.3.3 CASO ESCOLHA O CAMINHO 3. Se caso o jogador escolher o caminho 3, será exibida uma mensagem descrevendo o caminho e o obstáculo que o jogador terá de passar, nesta caso o jogador encontrará uma criatura mágica adormecida bloqueando o caminho, edeverá decidir se tentará contornar a criatura ou acorda-lá para atravessar, e a resposta será lida pela função “leia” que armazenada na variável “decisão” do tipo cadeia, e que se a resposta for “contornar” sera apresentada uma mensagem mostrando a recompensa e a pontuação ganha, caso a resposta for “acordar” sera exibida uma mensagem dizendo que o caminho foi bloqueado e o jogador não conseguiu avançar pelo caminho e que não ganhou pontos. Como na imagem a seguir: Fonte: O autor (2024) 8 3 CONCLUSÃO Conclui-se que a programação é uma aptidão transformadora para qualquer indivíduo, independentemente da sua área de atuação, proporcionando soluções inovadoras para desafios cotidianos, como pode ser mostrado pelo jogo “Floresta Sussurrante” onde cada caminho escolhido nos revela uma nova jornada. No presente trabalho pode-se observar alguns pontos de programação básica, sendo poucas variáveis a serem usadas, respostas diretas, e funções simples. 9 REFERÊNCIAS Roteiro Aula Prática, algoritmos e lógica de programação. Disponível em:. Acesso em: 5 de agosto de 2024 file:///C:/Users/lucas/Downloads/1721243685664%20(5).pdf Curitiba-PR 2024 LUCAS DA SILVA MIRANDA ELABORAÇÃO DE ALGORITMO E TESTE UTILIZANDO PORTUGOL Curitiba-PR 2024 FR ELABORAÇÃO DE ALGORITMO E TESTE UTILIZANDO PORTUGOL Trabalho de Administração de Empresa apresentado à Universidade Pitágoras Unopar, como requisito parcial para a obtenção de média bimestral na disciplina de Algoritmos e Lógica de Programação. Orientador: Tutor: Alef Ferreira Tutor: Cecilia LUCAS DA SILVA MIRANDA SUMÁRIO 1 INTRODUÇÃO..........................................................................................................3 2 DESENVOLVIMENTO..............................................................................................4 2.1 VARIAVEIS USADAS.............................................................................................42.2 ENDEREÇOS DA MATRIZ E DESCRIÇÃO DO JOGO.........................................4 2.3 ESTRUTURA DE REPETIÇÃO “ENQUANTO FAÇA”...........................................5 2.3.1 ARMADILHA........................................................................................................6 3 CONCLUSÃO...........................................................................................................8 REFERÊCIAS..............................................................................................................9 1 INTRODUÇAO Pode-se dizer que a programação é um processo de escrita de um código que forma um programa de computador. E dentro da programação é fundamental o aprendizado de uma técnica de resolução de problemas conhecida como algoritmo, que, segundo Ferrari e Chechinel (2008, p.15) “Um algoritmo pode ser definido como uma sequência finita de passos (instruções) para resolver um determinado problema”, ou seja, a descrição de um raciocínio lógico para resolução de situação- problema. No presente trabalho será apresentado um algoritmo, que se trata de um jogo, onde o jogador terá a missão de encontrar um tesouro escondido no meio de um labirinto. Para este algoritmo foi usado a técnica de estruturas de repetição “ENQUANTO FAÇA”, que permite executar mais de uma vez um mesmo trecho de código. Trata-se de uma forma de executar blocos de comandos somente sob determinadas condições, mas com a opção de repetir o mesmo bloco quantas vezes for necessário. As estruturas de repetição são úteis, por exemplo, para repetir uma série de operações semelhantes que são executadas para todos os elementos de uma lista ou de uma tabela de dados, ou simplesmente para repetir um mesmo processamento até que uma certa condição seja satisfeita. 2 DESENVOLVIMENTO 2.1 VARIAVEIS USADAS Na primeira parte do algoritmo terá as variáveis usadas no código, sendo a primeira “labirinto” do tipo inteiro onde será a matriz de 5x5, ou seja terá 25 espaços, tendo outras 6 variáveis do tipo inteiro, sendo ‘PosX” e “PosY” referente a posição do jogador, e “numA” e “numB” referente a posição do tesouro e “numC” e “numD” referente a posição da armadilha. Logo em seguida terá uma legenda lembrando que para 0 será caminho livre, para 1 será parede, para 2 será o tesouro e para 3 será a armadilha. Como na imagem a baixo: Fonte: O autor (2024) 2.2 ENDEREÇOS DA MATRIZ E DESCRIÇÃO DO JOGO Neste trecho do algoritmo apresentado em que posição estará o caminho livre, parede, tesouro e a armadilha no início do jogo, sendo todos aleatórios entre 0 e 1 sendo o 2 na posição 4x4 onde estará o tesouro e o 3 na posição 2x1 onde estará a armadilha. Em seguida será a descrição do jogo, onde será dito ao jogador qual será sua missão e qual será os obstáculos ao longo do caminho para encontrar o tesouro. Como mostra a imagem a baixo: Fonte: O autor (2024) 2.3 ESTRUTURA DE REPETIÇÃO “ENQUANTO FAÇA” A estrutura de repetição “enquanto faça” nos permite repetir varias vezes o mesmo trecho do código até que uma condição seja satisfeita, no inicio desse trecho enquanto a posição X e posição Y do jogador for diferente de 2, o jogador terá de escolher entre 1 e 4, que será lida pelo comando leia que armazenará nas suas devidas variáveis e definirá a posição do jogador no labirinto, que se for 0 será caminho livre, e for 1 atingirá uma parede, se for 2 encontrará o tesouro e para 3 cairá em uma armadilha. Como na seguinte imagem: Fonte: O autor (2024) 2.3.1 ARMADILHA No momento em que o jogador cair na armadilha, o tesouro será retirado da posição anterior e com o uso da biblioteca Util/Sorteio que fará dois sorteios de um numero aleatório entre 0 e 4, que serão atribuídos nas variáveis “numA” e “numB” sendo então essas variáveis a nova posição do tesouro. Nesta mesma parte será retirada a armadilha do local anterior, e da mesma forma feita com o tesouro, a biblioteca Util/Sorteia fará dois sorteios de um número entre 0 e 4 que serão atribuídos nas variáveis “numC” e “numD”, que será a nova posição da armadilha, mas com uma condição, se “numC” e “numA” ou “numD” e “numB” forem iguais a biblioteca Util/Sorteio fará um novo sorteio automaticamente. Como na imagem a baixo: Fonte: O autor (2024) 3 CONCLUSÃO A programação é um processo essencial que envolve a elaboração de códigos para criar programas de computador. No contexto da programação, o uso de algoritmos é crucial, pois eles representam uma sequência lógica de passos para problemas específicos. O algoritmo proposto neste trabalho exemplifica essa aplicação ao propor um jogo em que o jogador deve encontrar um tesouro em um labirinto. Para implementar este jogo, utilizou-se uma estrutura de repetição "ENQUANTO FAÇA", que permite a execução repetida de um bloco de código enquanto uma condição não está satisfeita. Tal estrutura é útil para operações que desabilitam a repetição até que um determinado estado seja realizado, como movimentar um jogador até que ele encontre o tesouro. O jogo utiliza variáveis para representar o labirinto, a posição do jogador, do tesouro e de armadilhas. A disposição inicial dos elementos no labirinto é planejada, tornando o jogo dinâmico e desafiador. Além disso, quando o jogador cai em uma armadilha, tanto a posição do tesouro quanto a da armadilha são redefinidas aleatoriamente, o que adiciona um elemento de imprevisibilidade. Em suma, este trabalho ilustra conceitos como fundamentos de programação, como variáveis e estruturas de repetição, podem ser aplicados de maneira criativa para desenvolver um jogo interativo, ao mesmo tempo que reforça a importância dos algoritmos na resolução de problemas complexos. REFERÊCIAS MOURA, Arnaldo V. FERBER, Daniel F. Estruturas de Repetição. Disponível em: . Acesso em 28 de outubro de 2024. ALMEIDA, Juan R. T. COLARES, Fernando. DIAS, Gustavo N. e et al. A importância da programação de computadores para compreensão Matemática. 2022. Disponível em . Acesso em 28 de outubro de 2024. Roteiro Aula Prática, algoritmos e lógica de programação. Disponível em . Acesso em: 5 de agosto de 2024.