- Desenvolva um algoritmo capaz de realizar as seguintes atividades: (Portugol ou VisualG)
- Armazenar o nome de 20 produtos informados pelo usuário em um vetor;
- Considerando que existem 3 lojas, solicitar ao usuário o estoque atual de cada produto em
cada uma das lojas, armazenando estes dados em uma matriz.
- Gerar o estoque consolidado de cada produto na rede de lojas, armazenando em outra coluna
na matriz.
- Considerando que o estoque mínimo de cada produto na rede de lojas deve ser de 30 unidades,
enviar para a impressora um relatório com o nome dos produtos que necessitam ser comprados
e o estoque atual destes produtos.
Soluções para a tarefa
Resposta:
Portugol:
programa {
funcao inicio() {
cadeia produtos[20]
inteiro estoque[4][20]
para (inteiro i = 0; i < 20; i++) {
escreva("\n[ ", i + 1, " ] Nome do Produto: ")
leia(produtos[i])
para(inteiro j = 0; j < 4; j++) {
se (j < 3) {
escreva("Estoque de ", produtos[i], " na loja ", j + 1, " : ")
leia(estoque[j][i])
} senao {
estoque[j][i] = estoque[0][i] + estoque[1][i] + estoque[2][i]
}
}
}
escreva("\nProdutos sem estoque mínimo:\n")
escreva("NOME ESTOQUE\n")
para (inteiro i = 0; i < 20; i++) {
se (estoque[3][i] < 30){
escreva(produtos[i], " ", estoque[3][i], "\n")
}
}
}
}
VisualG:
Algoritmo "estoque"
Var
i: inteiro
j: inteiro
x: inteiro
nome: caractere
produtos: vetor[0..19] de caractere
estoque: vetor[0..3,0..19] de inteiro
Inicio
para i de 0 ate 19 faca
escreval("")
escreva ("[", i + 1, " ] Nome do Produto: ")
leia (nome)
produtos[i] <- nome
para j de 0 ate 3 faca
se j < 3 entao
escreva ("Estoque de ", nome, " na loja", j + 1, ": ")
leia (x)
estoque[j, i] <- x
senao
estoque[j, i] <- estoque[0,i] + estoque[1,i] + estoque[2,i]
fimse
fimpara
fimpara
escreval("")
escreval("Produtos sem estoque mínimo:")
escreval("")
escreval("NOME ESTOQUE")
para i de 0 ate 19 faca
se estoque[3,i] < 30 entao
escreval(produtos[i], " ", estoque[3,i])
fimse
fimpara
Fimalgoritmo