###### tags: `Logica de Programação`
# Aula 11 - Lista de Exercícios de Lógica de Programação - LiveHelp 10/08/20
## Aluno: Rafael Almeida Santos
## Em sala
### Questão 01
```javascript=
function imprimirResumoDoCarrinho(carrinho){
}
```
### Questão 02
```javascript=
function imprimirResumoDoCarrinho(carrinho){
let totalAPagar = 0;
let quantItems = 0;
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let j = 0; j < carrinho.produtos.length; j++){
quantItems += carrinho.produtos[j].qtd
}
console.log(`Total de items: ${quantItems} item(s)`)
for(let i = 0; i < carrinho.produtos.length; i++ ){
totalAPagar += (carrinho.produtos[i].precoUnit * carrinho.produtos[i].qtd)
}
console.log(`Total a pagar: ${totalAPagar/100},00`)
}
const carrinho = {
nomeDoCliente: "Guido Bernal",
produtos: [
{
id: 1,
nome: "Camisa",
qtd: 3,
precoUnit: 3000
},
{
id: 2,
nome: "Bermuda",
qtd: 2,
precoUnit: 5000
}
]
}
imprimirResumoDoCarrinho(carrinho)
```
### Questão 03
```javascript=
function addProdutoAoCarrinho(carrinho, produto){
}
```
### Questão 04
```javascript=
function addProdutoAoCarrinho(carrinho, produto){
let jaExisteProd = false;
for(let i = 0; i < carrinho.produtos.length; i++){
if(produto.id === carrinho.produtos[i].id){
carrinho.produtos[i].qtd += produto.qtd;
jaExisteProd = true;
}
}
if(!(jaExisteProd)){
carrinho.produtos.push(produto)
}
}
function imprimirResumoDoCarrinho(carrinho){
let totalAPagar = 0;
let quantItems = 0;
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let i = 0; i < carrinho.produtos.length; i++){
quantItems += carrinho.produtos[i].qtd;
totalAPagar += carrinho.produtos[i].qtd * carrinho.produtos[i].precoUnit;
}
console.log(`Quantidade de Itens: ${quantItems} item(s)`)
console.log(`Total a pagar: ${totalAPagar/100}`)
}
const carrinho = {
nomeDoCliente: "Guido Bernal",
produtos: [
{
id: 1,
nome: "Camisa",
qtd: 3,
precoUnit: 3000
},
{
id: 2,
nome: "Bermuda",
qtd: 2,
precoUnit: 5000
}
]
}
const novaBermuda = {
id: 2,
nome: "Bermuda",
qtd: 3,
precoUnit: 5000
}
const novoTenis = {
id: 3,
nome: "Tenis",
qtd: 1,
precoUnit: 10000
}
addProdutoAoCarrinho(carrinho, novaBermuda)
imprimirResumoDoCarrinho(carrinho);
addProdutoAoCarrinho(carrinho, novoTenis);
imprimirResumoDoCarrinho(carrinho);
```
## Em casa
### Questão 05
```javascript=
function imprimirDetalhesDoCarrinho(carrinho){
let totalAPagar = 0;
let quantItems = 0;
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let i = 0; i < carrinho.produtos.length; i++){
console.log(`Item ${i+1}: ${carrinho.produtos[i].nome}, Quantidade: ${carrinho.produtos[i].qtd},
Preço Unitário: ${carrinho.produtos[i].precoUnit/100},00`)
}
for(let i = 0; i < carrinho.produtos.length; i++){
quantItems += carrinho.produtos[i].qtd;
totalAPagar += carrinho.produtos[i].qtd * carrinho.produtos[i].precoUnit;
}
console.log(`Quantidade de Itens: ${quantItems} item(s).`)
console.log(`Total a pagar: ${totalAPagar/100},00 reais.`)
}
```
### Questão 06
```javascript=
function addProdutoAoCarrinho(carrinho, produto){
let jaExisteProd = false;
for(let i = 0; i < carrinho.produtos.length; i++){
if(produto.id === carrinho.produtos[i].id){
carrinho.produtos[i].qtd += produto.qtd;
jaExisteProd = true;
}
}
if(!(jaExisteProd)){
carrinho.produtos.push(produto)
}
}
function calcularTotalDeItens(carrinho){
let quantItems = 0;
for(let i = 0; i < carrinho.produtos.length; i++){
quantItems += carrinho.produtos[i].qtd;
}
return quantItems;
}
function calcularTotalAPagar(carrinho){
let totalAPagar = 0;
for(let i = 0 ; i < carrinho.produtos.length; i++){
totalAPagar += carrinho.produtos[i].qtd * carrinho.produtos[i].precoUnit;
}
return totalAPagar;
}
function imprimirResumoDoCarrinho(carrinho){
let totalAPagar = calcularTotalAPagar(carrinho);
let quantItems = calcularTotalDeItens(carrinho)
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
console.log(`Quantidade de Itens: ${quantItems} item(s)`)
console.log(`Total a pagar: ${totalAPagar/100}`)
}
function imprimirDetalhesDoCarrinho(carrinho){
let totalAPagar = calcularTotalAPagar(carrinho);
let quantItems = calcularTotalDeItens(carrinho);
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let i = 0; i < carrinho.produtos.length; i++){
console.log(`Item ${i+1}: ${carrinho.produtos[i].nome}, Quantidade: ${carrinho.produtos[i].qtd},
Preço Unitário: ${carrinho.produtos[i].precoUnit/100},00`)
}
console.log(`Quantidade de Itens: ${quantItems} item(s).`)
console.log(`Total a pagar: ${totalAPagar/100},00 reais.`)
}
const carrinho = {
nomeDoCliente: "Guido Bernal",
produtos: [
{
id: 1,
nome: "Camisa",
qtd: 3,
precoUnit: 3000
},
{
id: 2,
nome: "Bermuda",
qtd: 2,
precoUnit: 5000
}
]
}
const novaBermuda = {
id: 2,
nome: "Bermuda",
qtd: 3,
precoUnit: 5000
}
const novoTenis = {
id: 3,
nome: "Tenis",
qtd: 1,
precoUnit: 10000
}
imprimirDetalhesDoCarrinho(carrinho);
```
### Questão 07
```javascript=
function calcularDesconto(carrinho){
let descQtdItems = 0;
let descValorCompra = 0;
let menor = carrinho.produtos[0].precoUnit
if(calcularTotalDeItens(carrinho) > 4){
descQtdItems = (calcularTotalAPagar(carrinho) * 0.1);
}
if(calcularTotalAPagar(carrinho) > 100){
for(let i = 0; i < carrinho.produtos.length; i++){
if(menor.precoUnit > carrinho.produtos[i].precoUnit){
menor = carrinho.produtos[i].precoUnit;
}
}
descValorCompra = menor;
} else{
return 0;
}
if(descQtdItems > descValorCompra){
return descQtdItems;
} else{
return descValorCompra;
}
}
function imprimirResumoDoCarrinho(carrinho){
let totalAPagar = calcularTotalAPagar(carrinho) - calcularDesconto(carrinho);
let quantItems = calcularTotalDeItens(carrinho)
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
console.log(`Quantidade de Itens: ${quantItems} item(s)`)
console.log(`Total a pagar: ${totalAPagar/100}`)
}
function imprimirDetalhesDoCarrinho(carrinho){
let totalAPagar = calcularTotalAPagar(carrinho) - calcularDesconto(carrinho);
let quantItems = calcularTotalDeItens(carrinho);
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let i = 0; i < carrinho.produtos.length; i++){
console.log(`Item ${i+1}: ${carrinho.produtos[i].nome}, Quantidade: ${carrinho.produtos[i].qtd},
Preço Unitário: ${carrinho.produtos[i].precoUnit/100},00`)
}
console.log(`Quantidade de Itens: ${quantItems} item(s).`)
console.log(`Total a pagar: ${totalAPagar/100},00 reais.`)
}
```
### Questão 08
```javascript=
function imprimirResumoDoCarrinho(carrinho){
let subtotal = calcularTotalAPagar(carrinho);
let desconto = calcularDesconto(carrinho);
let totalAPagar = subtotal - desconto;
let quantItems = calcularTotalDeItens(carrinho)
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
console.log(`Quantidade de Itens: ${quantItems} item(s).`)
console.log(`Subtotal: ${subtotal/100},00 reais.`)
console.log(`Desconto: ${desconto/100},00 reais.`)
console.log(`Total a pagar: ${totalAPagar/100},00 reais.`)
}
function imprimirDetalhesDoCarrinho(carrinho){
let subtotal = calcularTotalAPagar(carrinho);
let desconto = calcularDesconto(carrinho);
let totalAPagar = subtotal - desconto;
let quantItems = calcularTotalDeItens(carrinho)
console.log(`Cliente: ${carrinho.nomeDoCliente}`);
for(let i = 0; i < carrinho.produtos.length; i++){
console.log(`Item ${i+1}: ${carrinho.produtos[i].nome}, Quantidade: ${carrinho.produtos[i].qtd},
Preço Unitário: ${carrinho.produtos[i].precoUnit/100},00`)
}
console.log(`Quantidade de Itens: ${quantItems} item(s).`)
console.log(`Subtotal: ${subtotal/100},00 reais.`)
console.log(`Desconto: ${desconto/100},00 reais.`)
console.log(`Total a pagar: ${totalAPagar/100},00 reais.`)
}
```