---
# System prepended metadata

title: Aula 11 - Lista de Exercícios de Lógica de Programação - LiveHelp 10/08/20
tags: [Logica de Programação]

---

###### 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.`)
}
```