Buscar

Portfólio Relatório aula prática Algoritmos e técnica de programação

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

23
0
UNOPAR
CURSO SUPERIOR EM GESTÃO DE TECNOLOGIA DA INFORMAÇÃO
KLERYSSON WILKER FEITOSA GUEDES
 Portfólio Aula Prática / Semestre 2º : Sistemas Operacionais
Trabalho Prático 2º semestre de 2022, Portfólio de Aula prática apresentado para o departamento do curso de Gestão de Tecnologia da Informação como parte dos requisitos para obtenção de aprovação para o semestre mencionado.
Orientador/Tutor: Prof. Vanessa Cristina Silicani
Brasília/DF
2022
RESUMO
GUEDES, Klerysson, Portfólio Aula Prática / Semestre 2º Sistemas Operacionais, 2022.. Atividade Interdisciplinar – Gestão em Tecnologia da Informação – UNOPAR, Brasília - DF, 2022.
O relatório abaixo proposto trata-se da elaboração de um projeto em formato de software que vai nos permitir permite observar através da visão do comportamento de um sistema medido em potências onde iremos monitorar o funcionamento de uma máquina durante o dia e verificar seus picos máximos e mínimos. para isso um será criado um programa em C/C++, armazenando 20 valores, obtendo o seu resultado e informando valor máximo e o mínimo atingido naquele determinado dia. 
Palavras-chave: Potências. Apresentação, Algoritmos e Técnicas de Programação
INTRODUÇÃO – 
PROCURAR O MAIOR E MENOR VALOR EM UM VETOR
Problema Proposto:
	O relatório abaixo proposto trata-se da elaboração de um projeto em formato de software que vai nos permitir permite observar através da visão do comportamento de um sistema medido em potências onde iremos monitorar o funcionamento de uma máquina durante o dia e verificar seus picos máximos e mínimos durante utilizando para isso um programa em C/C++, armazenando 20 valores, obtendo o seu resultado e informando valor máximo e o mínimo atingido naquele determinado dia. 
Resolução Proposta:
Desenvolver um programa utilizando os fundamentos da lógica de programação de maneira estruturada, utilizando recursos básicos como estruturas de decisão e repetição e uso de variáveis, funções e recursividade.
1- Método para Obtenção do Exercício Prático Proposto
Neste projeto iremos utilizar o Dev C/C++, onde criarei não somente um vetor para encontrar o maior valor, bem como o menor valor, mas também irei indicar a posição onde se encontram, traçando meio eficaz de evitar erros em valores repetidos, bem como em entradas negativas.
Caso existam números iguais nós mostraremos o primeiro valor da ocorrência.
Observe então o código na íntegra que já propôs as duas resoluções dessa aula prática em apenas um software que já vai indicar a partir da interação do usuário, que por sua vez informará os valores das 20 potencias, nosso script vai encontrar valor maior, o menor, e a posição em que ela se encontrava ao ser digitada pelo usuário.
Analisemos o código. Disponibilizei o mesmo em meu perfil pessoal através do link: https://ideone.com/vkrvDi para verificação da autenticidade.
Código Fonte
1. 
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
2. /*Criar um programa para ler um vetor encontrar o seu maior e menor valor e definir sua posição.*/
3. #include <iostream>
4. #define TAM 5 //cria uma constante com tamanho 20
5.  
6. int main() {
7. int vet[TAM], i, maior, posMaior, menor, posMenor, contavalor=1;
8.  
9. //preenchendo o vetor
10. for (i = 0; i < TAM; i++) {
11. 	printf("Digite o valor %d da potencia : ",contavalor++);
12. scanf("%i", &vet[i]);
13. }
14.  
15. //encontra o maior valor
16. maior = vet[0];
17. posMaior = 0;
18. for (i = 1; i < TAM; i++) {
19. if (vet[i] > maior) {
20. maior = vet[i];
21. posMaior = i;
22. }
23. }
24.  
25. //encontra o menor valor
26. menor = vet[0];
27. posMenor = 0;
28. for (i = 1; i < TAM; i++) {
29. if (vet[i] < menor) {
30. menor = vet[i];
31. posMenor = i;
32. }
33. }
34.  
35. //mostra o vetor
36. printf("\nValores informados: ");
37. for (i = 0; i < TAM; i++) {
38. printf("%i - ", vet[i]);
39. }
40.  
41. printf("\nMaior valor: %i - posicao: %i", maior, posMaior+1);
42. printf("\nMenor valor: %i - posicao: %i", menor, posMenor+1);
43.  
44. return 0;
45. }
2- Definindo as Variáveis
I. Na linha 4 defini uma variável que vai controlar o tamanho do meu vetor. Usei a diretiva de pré-processador #define, para declarar essa constante no início do meu programa como deve ser feito.
I.1 Após isso eu crio as minhas variáveis que em estudo de caso defini e são as que eu vou precisar para executar o software sem erro. São elas do tipo int abaixo descritas:
a - “vet” um vetor do tipo int que terá o tamanho definido pela constante TAM
b – “i” para controlar minha estrutura de repetição em for,
c – “maior” que receberá o valor do meu índice atual, para evitar erros caso o usuário informe um número negativo ou todos repetidos. 
d – posMaior para que eu guarde a posição do maior valor informado pelo usuario
e – posMenor para que eu guarde a posição do menor valor informado pelo usuario
f – contavalor apenas para contar valores para que eu mostre “digite o valor da potencia x incrementando em +1 até chegar na posição 20”
3- Preenchendo o Vetor
Porque Utilizamos o Vetor?: O vetor é uma estrutura de dados indexada, que pode armazenar uma determinada quantidade de valores do mesmo tipo. Para localizar a posição de um item em um vetor usamos um número inteiro denominado índice do vetor. Sua vantagem é a facilidade de manipular um grande conjunto de dados do mesmo tipo declarando-se apenas uma variável.
Observe o código fonte disponibilizado na seção 1 Acima:
I. Nas linhas 12 a 15 o programa lê e armazena os 20 valores no vetor.
4- Encontrando o Maior Valor e Guardando Sua posição em um Variável
II. Na linha 18 foi atribuída à variável “maior” onde eu inicializei com um valor já existente no índice, o valor armazenado na primeira posição do vetor (Esse passo é importante para não gerar erros de execução, caso o usuário informe todos valores iguais ou negativos).
III. Para encontrar o maior valor em um vetor temos que comparar o valor do índice atual com o valor do próximo índice e guardar o valor.
IV. Na linha 20 inicia-se uma nova estrutura de repetição para encontrar o maior valor de todos 
V. na linha 21 existe uma estrutura condicional que compara o valor da posição atual (i) com o valor da próxima posição testada e armazena o maior valor do vetor na variável “maior”.
VI. Na Linha 19 guardamos a posição do maior valor digitado pelo usuário.
VII. Após terem sido feitas todas as comparações na linha 43 é impresso o maior valor encontrado e a posição em que foi informado originalmente pelo usuário.
5- Encontrando o Menor Valor e Guardando Sua posição em um Variável
Para encontrar o menor valor não é muito diferente, apenas inicializamos um novo laço for e armazenamos as variáveis testando a condição do vetor uma estrutura condicional e comparando se o valor vetor é menor do que o do índice atual, após isso basta guardar esse valor na variável menor como se pode observar no código. 
I. Na linha 28 foi atribuída à variável “menor” onde eu inicializei com um valor já existente no índice, o valor armazenado na primeira posição do vetor (Esse passo é importante para não gerar erros de execução, caso o usuário informe todos valores iguais ou negativos).
II. Para encontrar o menor valor comparamos o valor do índice atual com o menor valor do próximo índice e o guardamos valor.
III. Na linha 30 inicia-se uma nova estrutura de repetição para encontrar o menor valor de todos. 
IV. na linha 31 existe uma estrutura condicional que compara o valor da posição atual (i) com o valor da próxima posição testada e armazena o maior valor do vetor na variável “maior”.
V. Perceba que na Linha 19 guardamos a posição do maior valor digitado pelo usuário com intuito de definir a posição do mesmo.
VI. Após terem sido feitas todas as comparações na linha 44 é impresso o menor valorencontrado e a posição em que foi informado originalmente pelo usuário.
6- Conclusão:
Vetor é uma das estruturas que existe para o armazenamento de dados. Sua utilização é vasta devido à facilidade em ler e escrever dados e à velocidade com que as operações são realizadas, pois cada valor no vetor é armazenado sequencialmente na memória (MANZANO, 2015).
 
Mediante a observação desse exercício proposto percebemos o qual importante se torna a utilização das funções de entrada e saída como printf e scanf, bem como das estruturas condicionais e de repetição para testar situações e depurar o código evitando diversos erros de programação. No mais percebemos que através de um único software, e com a utilização dos recursos necessários conseguimos elaborar vários trechos economizando tempo e melhorando a interface para o usuário final. 
REFERÊNCIAS
SCHILDT H. “C Completo e Total”, Makron Books. SP, 1997.
MIZRAHI, V. V. “Treinamento em Linguagem C++ Módulo 1”, Makron Books, SP, 1995.
FORBELLONE, A. L. V. “Lógica de Programação: A construção de algoritmos e estruturas de dados”, Prentice Hall, SP, 2005.

Outros materiais