Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"workbench.colorCustomizations": {
"activityBar.background": "#46185A",
"titleBar.activeBackground": "#62227D",
"titleBar.activeForeground": "#FCF9FD"
}
}
59 changes: 58 additions & 1 deletion Atividades/Em aula/Exercicios.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
1. Adicione uma função `quantasChaves()` a **todos** os objetos, que retorna quantas chaves aquele objeto possui.

```
function quantasChaves() {
return Object.keys(this).length
}

Object.prototype.quantasChaves = quantasChaves

({}).quantasChaves() // 0
({ nome: "Layla" }).quantasChaves() // 1
```

2. A partir do nosso objeto de `Cachorro` da semana passada, escreva um novo construtor que utilize classes. Lembre-se que cachorros precisam `latir()`.
```
{
Expand All @@ -12,4 +23,50 @@
}
```

3. Escreva uma função `brincar`, que te dá instruções sobre como brincar com cada espécie de animal. A função deve receber um animal como parâmetro (gato, cachorro, cobra, papagaio e pelo menos mais um outro animal de sua escolha) e, baseado na sua espécie, retornar qual brinquedo você deveria usar com ele. Ou, se for uma cobra, te dizer para não brincar com ela.
```
class Cachorro {
constructor(nome, idade, cor, castrado, raca) {
this.nome = nome
this.idade = idade
this.cor = cor
this.castrado = castrado
this.raca = raca
this.historico = []
}

latir() {
console.log("au au au")
}
}
// como instanciar
let apollo = new Cachorro("Apollo", 2, "branco", false, "pitbull")

// como adicionar novos métodos
Cachorro.prototype.brincar = () => console.log("yipyeeeee")
apollo.brincar()

```

3. Escreva uma função `brincar`, que te dá instruções sobre como brincar com cada espécie de animal. A função deve receber um animal como parâmetro (gato, cachorro, cobra, papagaio e pelo menos mais um outro animal de sua escolha) e, baseado na sua espécie, retornar qual brinquedo você deveria usar com ele. Ou, se for uma cobra, te dizer para não brincar com ela.

```
class Gato {}
class Cachorro {}
class Cobra {}
class Papagaio {}
class Hamster {}

function brincar(animal) {
if (animal instanceof Gato) {
console.log("Use uma cordinha" )
} else if (animal instanceof Cachorro) {
console.log("Se esconda e depois apareça" )
} else if (animal instanceof Papagaio) {
console.log("Imite ele" )
} else if (animal instanceof Hamster) {
console.log("Alise a cabeça dele" )
} else {
console.log("melhor não brincar...")
}
}
```
64 changes: 64 additions & 0 deletions Atividades/Em aula/ecercicios1.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
class Cachorro {
constructor(nome, idade, cor, castrado, raça, historico) {
this.nome = nome;
this.idade = idade;
this.cor = cor;
this.castrado = castrado;
this.raça = raça;
this.historico = historico;
}

latir() {
console.log("Au au!");
}
}

class Gato {
constructor(nome, idade, cor, raça) {
this.nome = nome;
this.idade = idade;
this.cor = cor;
this.raça = raça;
}

miar() {
console.log("Miau!");
}
}

class Cobra {
constructor(nome, idade, cor) {
this.nome = nome;
this.idade = idade;
this.cor = cor;
}
}

class Papagaio {
constructor(nome, idade, cor) {
this.nome = nome;
this.idade = idade;
this.cor = cor;
}

falar(frase) {
console.log(frase);
}
}



const meuCachorro = new Cachorro("Fido", 2, "marrom", true, "vira-lata", []);
console.log(brincar(meuCachorro)); // Output: Use uma bola para brincar com o cachorro.

const meuGato = new Gato("Miau", 1, "branco", "Siamês");
console.log(brincar(meuGato)); // Output: Use uma varinha com penas para brincar com o gato.

const minhaCobra = new Cobra("Venom", 5, "verde");
console.log(brincar(minhaCobra)); // Output: Não brinque com a cobra!

const meuPapagaio = new Papagaio("Loro", 3, "colorido");
console.log(brincar(meuPapagaio)); // Output: Ofereça um espelho para o papagaio se entreter.

const outroAnimal = { tipo: "Outro" };
console.log(brincar(outroAnimal)); // Output: Use um brinquedo adequado para esse animal.
112 changes: 112 additions & 0 deletions Atividades/exercicio-zaida-cueto/Exercicios.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
Nome:

Nossa veterinária agora atende quatro espécies diferentes de animais: dois domésticos (`Gato` e `Cachorro`), e dois exóticos (`Hamster` e `Papagaio`). Usando o que você aprendeu essa semana (classes, herança, sobrescritas, campos privados...) e os exemplos de animais abaixo, escreva um sistema que atenda aos critérios listados:

1. Gatos
```
{
nome: "Nina",
idade: 1.5
cor: "frajola",
castrado: true,
externo: false,
vacinas: ["raiva],
consultas: [],
social: true,

miar(),
vacinar(),
consultar(),
castrar(),
brincar(),
acariciar(),
alimentar(),
}
```
- Gatos sociáveis ronronam ao serem acariciados. Se um gato não for sociável, ele deve silvar.
- Você pode tornar um gato sociável alimentando ele com uma das comidas favoritas dos gatos: frango, sachê ou peixe.

2. Cachorro
```
{
nome: "Zeus",
idade: 3.5
cor: "preto",
castrado: false,
raça: "labrador",
vacinas: [],
consultas: [],
ferido: false,

latir(),
vacinar(),
consultar(),
castrar(),
brincar(),
acariciar(),
alimentar(),
}
```
- Cachorros costumam esconder quando estão feridos. Use um campo privado para essa informação, e só a exiba ao tentar `brincar()` com um cãozinho que está ferido.

3. Hamster
```
{
nome: "Iogurte",
idade: 1.5,
cor: "branco e laranja",
tipo: "sírio",
consultas: [],

consultar(),
brincar(),
acariciar(),
alimentar(),
}
```
- Ao consultar um hamster, você deve brincar com ele para que ele não fique estressado e tente fugir.

4. Papagaio
```
{
nome: "José",
idade: 13,
cor: "verde"
consultas: [],

falar(),
consultar(),
brincar(),
acariciar(),
alimentar(),
}
```
- Ao brincar com ou alimentar um papagaio, ele deve falar com você.

5. Outros
- Sempre que vacinar um paciente, você deve adicionar uma nova consulta na lista. O mesmo vale para castrar um animal.
- Você deve ter uma função `chamar()`, que recebe uma lista de animais e retorna quais dos animais da lista responderam e vieram brincar. Todos os cachorros respondem quando chamados, assim como os gatos que são sociais. Hamsters, papagaios e gatos não sociais não virão.
- Tentar castrar um animal que já está castrado deve retornar um erro.

**Dica:** assinaturas possíveis para as funções:
```
function acariciar() { ... }

function alimentar(comida) { ... }

function brincar() { ... }

function castrar() { ... }

function chamar([listaAnimais]) { ... return [listaAnimaisQueResponderam] }

function consultar(dataConsulta) { ... }

function falar() { ... }

function latir() { ... }

function miar() { ... }

function vacinar(vacina) { ... }
```
Loading