├── .gitignore ├── Readme.md ├── base ├── agenda │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── agiota │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.png │ ├── diagrama.png │ ├── diagrama.puml │ ├── play.png │ └── ptolomeu.jpg ├── animal │ ├── .cache │ │ ├── Readme.md │ │ ├── cheat │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── anotacoes │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.uxf ├── array │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ └── Readme.md ├── budega │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── busca │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── cadastro │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ ├── figura.png │ ├── temp │ │ ├── Makefile │ │ ├── teste.cpp │ │ ├── uml.uxf │ │ └── uml_sala.uxf │ └── video.png ├── calculadora │ ├── .cache │ │ ├── Readme.md │ │ ├── cheat │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── camisa │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── draft.cpp │ └── draft.ts ├── carga │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ └── figura3.jpg ├── carro │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── charger │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ └── debug.txt ├── chinela │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── cinema │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── cofre │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── comunicador │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── old │ │ ├── diagrama.png │ │ └── diagrama.uxf │ └── t.tio ├── contagem │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── contato │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── enumeracao │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ └── Readme.md ├── enxugar │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── especiais │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── estacionamento │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── favoritos │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── RaioX.md │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.uxf ├── grafite │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── grupo │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── _controller.md │ ├── _guide.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.uxf ├── junkfood │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── lapiseira │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── ligacao │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ └── diagrama.uxf ├── manipulacao │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── go │ │ │ │ └── shell.go │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── mensagem │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.uxf ├── motoca │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── motouber │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── notebook │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── paciente │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Gambi.java │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ └── old │ │ ├── diagrama.png │ │ └── diagrama.uxf ├── petshop │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.uxf │ └── original.jpg ├── porquinho │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ └── imagem.jpg ├── produto │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── diagrama.png │ └── diagrama.puml ├── pula-pula │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── relogio │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── .comments │ │ └── figura.jpg.xml │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ └── t.tio ├── roupa │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ └── cover.jpg ├── salario │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── figura.png ├── shapes │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── tabuleiro │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ └── tabuleiro.png ├── tamagotchi │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── tarifas │ ├── .cache │ │ ├── Readme.md │ │ ├── draft │ │ │ ├── cpp │ │ │ │ └── shell.cpp │ │ │ ├── java │ │ │ │ └── Shell.java │ │ │ └── ts │ │ │ │ └── shell.ts │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── toalha │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ └── diagrama.puml ├── trem │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.asta │ ├── diagrama.png │ └── diagrama.uxf ├── twitter │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ ├── old │ │ ├── Makefile │ │ ├── _link.md │ │ ├── diagrama.png │ │ └── diagrama.uxf │ ├── parsediag.py │ └── player.png ├── vetores │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Main.java │ ├── Readme.md │ ├── base.c │ └── cover.jpg ├── whatsapp │ ├── .cache │ │ ├── Readme.md │ │ ├── mapi.json │ │ ├── q.html │ │ └── q.tio │ ├── Readme.md │ ├── _controller.md │ ├── _guide.md │ ├── auxiliar.hpp │ ├── cover.jpg │ ├── diagrama.png │ ├── diagrama.puml │ └── diagrama.uxf ├── youguide.png └── yousolver.png └── wiki ├── cpp └── intro_cpp.md ├── git ├── README.md ├── acesso.png ├── alu.png ├── arvores.png ├── chaves.md ├── cover.jpg ├── diagrama.png ├── doc.png ├── github.md ├── local_ssh.png ├── request.png ├── token.md ├── wsl-configure-ts.sh ├── wsl-configure.sh └── wsl.md ├── images ├── alien1.jpg ├── alien2.jpg ├── alien3.jpg ├── alien4.jpg ├── alien5.jpg ├── alien6.jpg ├── alien7.jpg ├── alien8.jpg ├── alien9.jpg ├── explicacao.png └── resolucao.png ├── instalacao ├── README.md ├── cover.jpg ├── cpp.jpg ├── cpp.md ├── ts.jpg └── ts.md ├── main ├── Main.java ├── Makefile ├── README.md ├── cover.jpg ├── main.cpp └── main.ts ├── memoria ├── README.md └── cover.jpg ├── relacionamento ├── .comments │ └── cover.jpg.xml ├── Aeroporto.png ├── Aeroporto.puml ├── README.md ├── atua.png ├── atua.puml ├── cliente.png ├── cliente.puml ├── conectividade.png ├── conserto.png ├── conserto.puml ├── conta.png ├── conta.puml ├── contrata.png ├── contrata.puml ├── cover.jpg ├── departamento.png ├── departamento.puml ├── dependente.png ├── dependente.puml ├── dependente2.png ├── dependente2.puml ├── dependente3.png ├── dependente3.puml ├── endereco.png ├── endereco.puml ├── endereco2.png ├── endereco2.puml ├── equipes.png ├── equipes.puml ├── escreve ├── escreve.png ├── escreve.puml ├── escreve2.png ├── escreve2.puml ├── escreve3.png ├── escreve3.puml ├── escreve4.png ├── escreve4.puml ├── frame.png ├── frame.puml ├── gerencia.png ├── gerencia.puml ├── lapiseira.png ├── lapiseira.puml ├── livro.png ├── livro.puml ├── lotado.png ├── lotado.puml ├── motoca.png ├── motoca.puml ├── multiplicidade.png ├── old │ ├── Association15.eps │ ├── Association15.png │ ├── Association15.puml │ ├── Association17.eps │ ├── Association17.png │ ├── Association17.puml │ ├── Association18.eps │ ├── Association18.png │ ├── Association18.puml │ ├── Association22.png │ ├── Association22.puml │ ├── Association31.eps │ ├── Association31.png │ ├── Association31.puml │ ├── Association9-eps-converted-to.pdf │ ├── Association9.eps │ ├── Association9.png │ └── Association9.puml ├── pedido.png ├── pedido.puml ├── perfil.png ├── perfil.puml ├── publicado.png ├── publicado.puml ├── publicado2.png ├── publicado2.puml ├── publicado3.png ├── publicado3.puml ├── socio.png ├── socio.puml ├── supervisor.png ├── supervisor.puml ├── teste.py └── todo_parte.png ├── relatorio ├── README.md ├── cover.jpg └── relatorio.jpg ├── root ├── flow.png ├── flow.puml └── legenda.puml ├── typescript ├── acordo.md ├── algoritmos_vetores_leitura.md ├── algoritmos_vetores_pratica.md ├── arrays_leitura.md ├── arrays_pratica.md ├── arrays_revisao.md ├── busca_leitura.md ├── busca_pratica.md ├── circulos-colisao-leitura.md ├── circulos_colisao_pratica.md ├── classes_leitura.md ├── classes_pratica.md ├── classes_revisao.md ├── config.md ├── fup_leitura.md ├── fup_pratica.md ├── fup_revisao.md ├── image.png ├── movimentando_cenario_pratica.md ├── p5_leitura.md ├── p5_pratica.md ├── p5_revisao.md ├── tko.md ├── typescript.md ├── vector2d_leitura.md └── vector2d_pratica.md └── uml ├── README.md ├── diagrama.png └── diagrama.puml /.gitignore: -------------------------------------------------------------------------------- 1 | # common files for languages 2 | package.json 3 | package-lock.json 4 | node_modules 5 | # java 6 | *.class 7 | # python 8 | .mypy_cache 9 | __pycache__ 10 | # c e c++ 11 | *.out 12 | *.exe 13 | *.o 14 | # haskell 15 | *.hi 16 | # project files 17 | .idea 18 | .vscode 19 | *.pro 20 | *.pro.user 21 | .config.ini 22 | # tko local 23 | .tko 24 | .build# public filter 25 | local.sh 26 | config.json 27 | src 28 | solver* 29 | Solver* 30 | __* 31 | .hide 32 | .exec 33 | -------------------------------------------------------------------------------- /base/agenda/.cache/draft/go/shell.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "bufio" 5 | "fmt" 6 | "os" 7 | "slices" 8 | "sort" 9 | "strconv" 10 | "strings" 11 | ) 12 | 13 | func Join[T any](slice []T, sep string) string { 14 | result := strings.Builder{} 15 | for i, item := range slice { 16 | if i != 0 { 17 | result.WriteString(sep) 18 | } 19 | result.WriteString(fmt.Sprint(item)) 20 | } 21 | return result.String() 22 | } 23 | 24 | func main() { 25 | scanner := bufio.NewScanner(os.Stdin) 26 | for { 27 | fmt.Print("$") 28 | if !scanner.Scan() { 29 | break 30 | } 31 | line := scanner.Text() 32 | args := strings.Fields(line) 33 | fmt.Println(line) 34 | 35 | switch args[0] { 36 | case "end": 37 | return 38 | case "add": 39 | name := args[1] 40 | _ = name 41 | case "show": 42 | case "rmFone": 43 | name := args[1] 44 | index, _ := strconv.Atoi(args[2]) 45 | _, _ = name, index 46 | case "rm": 47 | name := args[1] 48 | _ = name 49 | case "search": 50 | pattern := args[1] 51 | _ = pattern 52 | case "tfav": 53 | name := args[1] 54 | _ = name 55 | case "favs": 56 | default: 57 | fmt.Println("fail: command not found") 58 | } 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /base/agenda/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.ArrayList; 2 | import java.util.List; 3 | import java.util.Scanner; 4 | import java.util.stream.Collectors; 5 | import java.util.Collections; 6 | 7 | public class Shell { 8 | 9 | static Scanner scanner = new Scanner(System.in); 10 | public static void main(String[] _args) { 11 | 12 | while (true) { 13 | String line = scanner.nextLine(); 14 | System.out.println("$" + line); 15 | String[] args = line.split(" "); 16 | 17 | if (args[0].equals("end")) { 18 | break; 19 | } 20 | else if (args[0].equals("add")) { 21 | // ArrayList fones = new ArrayList<>(); 22 | // for (int i = 2; i < args.length; i++) { 23 | // String[] fone = args[i].split(":"); 24 | // fones.add(new Fone(fone[0], fone[1])); 25 | // } 26 | } 27 | else if (args[0].equals("show")) { 28 | } 29 | else if (args[0].equals("rm")) { 30 | // var name = args[1]; 31 | } 32 | else if (args[0].equals("favs")) { 33 | } 34 | else if (args[0].equals("search")) { 35 | } 36 | else if (args[0].equals("rmFone")) { 37 | // var name = args[1]; 38 | // var index = Integer.parseInt(args[2]); 39 | } 40 | else if (args[0].equals("tfav")) { 41 | // var name = args[1]; 42 | } 43 | else { 44 | System.out.println("fail: invalid command"); 45 | } 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /base/agenda/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | function main(): void { 6 | while (true) { 7 | let line = input(); 8 | console.log("$" + line); 9 | 10 | let args = line.split(" "); 11 | 12 | if (args[0] === "end") { 13 | break; 14 | } else if (args[0] === "add") {//name id:fone id:fone ... 15 | // const name = args[1]; 16 | // const fones: Fone[] = []; 17 | // for (let i = 2; i < args.length; i++) { 18 | // const [label, number] = args[i].split(':'); 19 | // fones.push(new Fone(label, number)); 20 | // } 21 | } else if (args[0] === "show") { 22 | } else if (args[0] === "rmFone") {//id index 23 | // const id = args[1]; 24 | // const index = parseInt(args[2]); 25 | } else if (args[0] === "rm") { 26 | const name = args[1]; 27 | } else if (args[0] === "tfav") { 28 | // const id = args[1]; 29 | } else if (args[0] === "search") {//pattern 30 | // const pattern = args[1]; 31 | } else if (args[0] === "favs") { 32 | } else { 33 | console.log("fail: comando invalido"); 34 | } 35 | } 36 | } 37 | 38 | 39 | main(); 40 | -------------------------------------------------------------------------------- /base/agenda/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agenda/cover.jpg -------------------------------------------------------------------------------- /base/agenda/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agenda/diagrama.png -------------------------------------------------------------------------------- /base/agiota/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace std; 4 | 5 | template 6 | string map_join(const CONTAINER& container, FN fn, string sep = ", ") { 7 | stringstream ss; 8 | for (auto it = container.begin(); it != container.end(); ++it) { 9 | ss << (it != container.begin() ? sep : "") << fn(*it); 10 | } 11 | return ss.str(); 12 | } 13 | 14 | int main() { 15 | while(true) { 16 | string line, cmd; 17 | getline(cin, line); 18 | cout << "$" << line << endl; 19 | 20 | stringstream ss(line); 21 | ss >> cmd; 22 | 23 | if(cmd == "end") { 24 | break; 25 | } 26 | else if(cmd == "addCli") { 27 | // string name; 28 | // int limite {}; 29 | // ss >> name >> limite; 30 | } 31 | else if(cmd == "show") { 32 | } 33 | else if(cmd == "showCli") { 34 | // string name; 35 | // ss >> name; 36 | } 37 | else if(cmd == "kill") { 38 | // string name; 39 | // ss >> name; 40 | } 41 | else if(cmd == "give") { 42 | // string name; 43 | // int value; 44 | // ss >> name >> value; 45 | } 46 | else if(cmd == "take") { 47 | // string name; 48 | // int value; 49 | // ss >> name >> value; 50 | } 51 | else if(cmd == "plus") { 52 | } 53 | else { 54 | cout << "fail: comando invalido\n"; 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /base/agiota/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | public class Shell { 4 | static Scanner scanner = new Scanner(System.in); 5 | public static void main(String[] args) { 6 | Agiota agiota = new Agiota(); 7 | 8 | while (true) { 9 | String line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | String[] parts = line.split(" "); 13 | String cmd = parts[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } 18 | else if (cmd.equals("show")) { 19 | } 20 | else if (cmd.equals("addCli")) { 21 | // String name = parts[1]; 22 | // int limite = Integer.parseInt(parts[2]); 23 | } 24 | else if (cmd.equals("showCli")) { 25 | // String name = parts[1]; 26 | } 27 | else if (cmd.equals("kill")) { 28 | // String name = parts[1]; 29 | } 30 | else if (cmd.equals("give")) { 31 | // String name = parts[1]; 32 | // int value = Integer.parseInt(parts[2]); 33 | } 34 | else if (cmd.equals("take")) { 35 | // String name = parts[1]; 36 | // int value = Integer.parseInt(parts[2]); 37 | } 38 | else if (cmd.equals("plus")) { 39 | } 40 | else { 41 | System.out.println("fail: comando invalido"); 42 | } 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /base/agiota/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | const line = input(); // Assume input() is defined elsewhere 8 | console.log(`$${line}`); 9 | 10 | const parts = line.split(" "); 11 | const cmd = parts[0]; 12 | 13 | if (cmd === "end") { 14 | break; 15 | } else if (cmd === "show") { 16 | } else if (cmd === "addCli") { 17 | // const name = parts[1]; 18 | // const limite = parseInt(parts[2]); 19 | } else if (cmd === "showCli") { 20 | // const name = parts[1]; 21 | } else if (cmd === "kill") { 22 | // const name = parts[1]; 23 | } else if (cmd === "give") { 24 | // const name = parts[1]; 25 | // const value = parseInt(parts[2]); 26 | } else if (cmd === "take") { 27 | // const name = parts[1]; 28 | // const value = parseInt(parts[2]); 29 | } else if (cmd === "plus") { 30 | } else { 31 | console.log("fail: comando invalido"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/agiota/cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agiota/cover.png -------------------------------------------------------------------------------- /base/agiota/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agiota/diagrama.png -------------------------------------------------------------------------------- /base/agiota/diagrama.puml: -------------------------------------------------------------------------------- 1 | 2 | @startuml 3 | 4 | skinparam defaultFontName "Source Code Pro" 5 | skinparam dpi 150 6 | 7 | 8 | 9 | enum Label { 10 | GIVE, 11 | TAKE, 12 | PLUS 13 | toString(): string 14 | } 15 | 16 | class Operation { 17 | - id : int 18 | - name : string 19 | - label: Label 20 | - value: int 21 | __ 22 | + Operation(id: int, name: string, label: Label, value: int) 23 | + toString() : String 24 | __ 25 | + getId() : int 26 | + getName() : string 27 | + getLabel(): Label 28 | } 29 | 30 | class Client { 31 | - name: string 32 | - limite: int 33 | - operations: List 34 | __ 35 | + Client(name: string, limite: int) 36 | + toString() : String 37 | __ 38 | + getName() : string 39 | + getLimite() : int 40 | + getOperations() : List 41 | + addOperation(name: string, label: Label, value: int) 42 | __ 43 | + getBalance() : int 44 | } 45 | 46 | class Agiota { 47 | - alive_list : List 48 | - death_list : List 49 | - alive_oper : List 50 | - death_oper : List 51 | - nextOpId : int 52 | __ 53 | - searchClient(name: string) : int 54 | - pushOperation(client: Client, name: string, label: Label, value: int) 55 | __ 56 | + Agiota() 57 | + getClient(name: string) : Client* 58 | + addClient(name: string, limite: int) 59 | + give(name: string, value: int) 60 | + take(name: string, value: int) 61 | + kill(name: string) 62 | + plus() 63 | __ 64 | + toString() : String 65 | } 66 | 67 | 68 | Client "1" o-- "0..*" Operation 69 | Agiota "1" *-- "0..*" Operation 70 | Agiota "1" *-- "0..*" Client 71 | 72 | @enduml -------------------------------------------------------------------------------- /base/agiota/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agiota/play.png -------------------------------------------------------------------------------- /base/agiota/ptolomeu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/agiota/ptolomeu.jpg -------------------------------------------------------------------------------- /base/animal/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace std; 4 | 5 | 6 | int main () { 7 | // CRIE SEU OBJETO AQUI 8 | while (true) { 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << '\n'; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "end") { 17 | break; 18 | } 19 | else if (cmd == "init" ) { 20 | // INICIE SEU OBJETO AQUI USANDO O CONSTRUTOR 21 | // string species, sound; 22 | // ss >> species >> sound; 23 | } 24 | else if (cmd == "show" ) { 25 | // IMPRIMA O ANIMAL 26 | } 27 | else if (cmd == "grow" ) { 28 | // CHAME O MÉTODO PARA CRESCER 29 | // int increment {}; 30 | // ss >> increment; 31 | } 32 | else if (cmd == "noise") { 33 | // OBTENHA O SOM DO ANIMAL E IMPRIMA 34 | } 35 | else { 36 | cout << "fail: comando invalido\n"; 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /base/animal/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class Shell { 4 | 5 | public static void main(String[] _args) { 6 | // Animal animal = new Animal("", ""); 7 | 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | var par = line.split(" "); 13 | var cmd = par[0]; 14 | 15 | if (cmd.equals("end") ) { 16 | break; 17 | } 18 | else if (cmd.equals("init") ) { 19 | // INICIE O ANIMAL UTILIZANDO O CONSTRUTOR 20 | // var species = par[1]; 21 | // var noise = par[2]; 22 | } 23 | else if (cmd.equals("show")) { 24 | // MOSTRE O ANIMAL 25 | } 26 | else if (cmd.equals("noise")) { 27 | // OBTER O BARULHO DO ANIMAL E IMPRIMA 28 | } 29 | else if (cmd.equals("grow") ) { 30 | // AUMENTE A IDADE DO ANIMAL 31 | // var increment = Integer.parseInt(par[1]); 32 | } 33 | else { 34 | System.out.println("fail: comando invalido\n"); 35 | } 36 | } 37 | } 38 | 39 | static Scanner scanner = new Scanner(System.in); 40 | } 41 | -------------------------------------------------------------------------------- /base/animal/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; }; 2 | export {}; 3 | 4 | function main(): void { 5 | // let animal: Animal = new Animal("", ""); 6 | while (true) { 7 | const line = input(); 8 | console.log("$" + line); 9 | 10 | const par = line.split(' '); 11 | const cmd = par[0]; 12 | 13 | if (cmd === "end") { 14 | break; 15 | } 16 | else if (cmd === "init") { 17 | // INICIE O ANIMAL UTILIZANDO O CONSTRUTOR 18 | // let species = par[1]; 19 | // let noise = par[2]; 20 | } 21 | else if (cmd === "grow") { 22 | // AUMENTE A IDADE DO ANIMAL 23 | // let increment = +par[1]; 24 | } 25 | else if (cmd === "noise") { 26 | // OBTENHA O BARULHO DO ANIMAL E IMPRIMA 27 | } 28 | else if (cmd === "show") { 29 | // IMPRIMA O ANIMAL 30 | } 31 | else { 32 | console.log("fail: comando invalido"); 33 | } 34 | } 35 | } 36 | 37 | main(); 38 | -------------------------------------------------------------------------------- /base/animal/.cache/q.tio: -------------------------------------------------------------------------------- 1 | >>>>>>>> INSERT iniciando 2 | init gato miau 3 | show 4 | init cachorro auau 5 | show 6 | init galinha cocorico 7 | show 8 | end 9 | ======== EXPECT 10 | $init gato miau 11 | $show 12 | gato:0:miau 13 | $init cachorro auau 14 | $show 15 | cachorro:0:auau 16 | $init galinha cocorico 17 | $show 18 | galinha:0:cocorico 19 | $end 20 | <<<<<<<< FINISH 21 | 22 | 23 | >>>>>>>> INSERT grow 24 | init vaca muu 25 | show 26 | grow 2 27 | show 28 | grow 2 29 | show 30 | grow 3 31 | show 32 | end 33 | ======== EXPECT 34 | $init vaca muu 35 | $show 36 | vaca:0:muu 37 | $grow 2 38 | $show 39 | vaca:2:muu 40 | $grow 2 41 | warning: vaca morreu 42 | $show 43 | vaca:4:muu 44 | $grow 3 45 | warning: vaca morreu 46 | $show 47 | vaca:4:muu 48 | $end 49 | <<<<<<<< FINISH 50 | 51 | 52 | >>>>>>>> INSERT noise 53 | init cabra beeh 54 | noise 55 | grow 1 56 | noise 57 | grow 3 58 | noise 59 | end 60 | ======== EXPECT 61 | $init cabra beeh 62 | $noise 63 | --- 64 | $grow 1 65 | $noise 66 | beeh 67 | $grow 3 68 | warning: cabra morreu 69 | $noise 70 | RIP 71 | $end 72 | <<<<<<<< FINISH 73 | 74 | 75 | >>>>>>>> INSERT extra 76 | init passaro piupiu 77 | show 78 | noise 79 | grow 1 80 | noise 81 | grow 2 82 | noise 83 | grow 1 84 | noise 85 | end 86 | ======== EXPECT 87 | $init passaro piupiu 88 | $show 89 | passaro:0:piupiu 90 | $noise 91 | --- 92 | $grow 1 93 | $noise 94 | piupiu 95 | $grow 2 96 | $noise 97 | piupiu 98 | $grow 1 99 | warning: passaro morreu 100 | $noise 101 | RIP 102 | $end 103 | <<<<<<<< FINISH 104 | 105 | -------------------------------------------------------------------------------- /base/animal/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/animal/cover.jpg -------------------------------------------------------------------------------- /base/animal/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/animal/diagrama.png -------------------------------------------------------------------------------- /base/animal/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Animal { 7 | + species: string 8 | + sound : string 9 | + age : number 10 | __ 11 | + constructor(species: string, sound: string) 12 | + makeSound(): string 13 | + ageBy(increment: number): void 14 | + toString(): string 15 | } 16 | 17 | class Legend { 18 | + publicAttribute 19 | - privateAttribute 20 | # protectedAttribute 21 | __ 22 | + publicMethod() 23 | - privateMethod() 24 | # protectedMethod() 25 | } 26 | 27 | @enduml 28 | -------------------------------------------------------------------------------- /base/anotacoes/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/anotacoes/cover.jpg -------------------------------------------------------------------------------- /base/anotacoes/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/anotacoes/diagrama.png -------------------------------------------------------------------------------- /base/array/.cache/Readme.md: -------------------------------------------------------------------------------- 1 | # Manipulações em Arrays 2 | 3 | ## Estruturas lineares em cada linguagem 4 | 5 | - python: list 6 | - java: ArrayList 7 | - c++: vector 8 | - typescript: Array 9 | 10 | ## Competências básicas de manipulação de dados 11 | 12 | Você pode testar utilizando um array de inteiros ou um array de objetos. 13 | 14 | - Criar um array vazio 15 | - Criar um array preenchido 16 | - Adicionar e remover elementos ao final 17 | - Fazer impressão formatada 18 | - Criar um array com elementos em sequência de zero a n 19 | - Criar um array com valores aleatórios 20 | - Acessar elementos por índice 21 | - Percorrer os elementos utilizando for-range 22 | - Percorrer os elementos utilizando for indexado 23 | - Procurar um elemento X usando laço 24 | - Criar um novo array com elementos filtrados, por exemplo, pares 25 | - Criar um novo array com elementos transformados, por exemplo, ao quadrado 26 | - Buscar e remover um elemento X 27 | - Remover todos os elementos X 28 | - Verificar quais funções existem nativamente na linguagem 29 | - busca 30 | - remoção 31 | - ordenação 32 | - embaralhamento 33 | 34 | ## Crie seu próprio código de testes 35 | 36 | ```py 37 | 38 | class Foo: 39 | def __init__(self, x: int): 40 | self.x = x 41 | 42 | def __str__(self): 43 | return f'Foo({self.x})' 44 | 45 | lista_vazia: list[int] = [] 46 | lista_preenchida: list[int] = [1, 2, 3, 4, 5] 47 | lista_preencida_objetos: list[Foo] = [Foo(1), Foo(2), Foo(3), Foo(4), Foo(5)] 48 | 49 | lista_vazia.append(1) 50 | lista_preenchida.append(Foo(6)) 51 | 52 | # continue com seus próprios testes de manipulação de arrays 53 | ``` 54 | -------------------------------------------------------------------------------- /base/array/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/array/.cache/q.tio -------------------------------------------------------------------------------- /base/array/Readme.md: -------------------------------------------------------------------------------- 1 | # Manipulações em Arrays 2 | 3 | ## Estruturas lineares em cada linguagem 4 | 5 | - python: list 6 | - java: ArrayList 7 | - c++: vector 8 | - typescript: Array 9 | 10 | ## Competências básicas de manipulação de dados 11 | 12 | Você pode testar utilizando um array de inteiros ou um array de objetos. 13 | 14 | - Criar um array vazio 15 | - Criar um array preenchido 16 | - Adicionar e remover elementos ao final 17 | - Fazer impressão formatada 18 | - Criar um array com elementos em sequência de zero a n 19 | - Criar um array com valores aleatórios 20 | - Acessar elementos por índice 21 | - Percorrer os elementos utilizando for-range 22 | - Percorrer os elementos utilizando for indexado 23 | - Procurar um elemento X usando laço 24 | - Criar um novo array com elementos filtrados, por exemplo, pares 25 | - Criar um novo array com elementos transformados, por exemplo, ao quadrado 26 | - Buscar e remover um elemento X 27 | - Remover todos os elementos X 28 | - Verificar quais funções existem nativamente na linguagem 29 | - busca 30 | - remoção 31 | - ordenação 32 | - embaralhamento 33 | 34 | ## Crie seu próprio código de testes 35 | 36 | ```py 37 | 38 | class Foo: 39 | def __init__(self, x: int): 40 | self.x = x 41 | 42 | def __str__(self): 43 | return f'Foo({self.x})' 44 | 45 | lista_vazia: list[int] = [] 46 | lista_preenchida: list[int] = [1, 2, 3, 4, 5] 47 | lista_preencida_objetos: list[Foo] = [Foo(1), Foo(2), Foo(3), Foo(4), Foo(5)] 48 | 49 | lista_vazia.append(1) 50 | lista_preenchida.append(Foo(6)) 51 | 52 | # continue com seus próprios testes de manipulação de arrays 53 | ``` 54 | -------------------------------------------------------------------------------- /base/budega/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | using namespace std; 8 | 9 | 10 | // Função auxiliar para mapear e juntar elementos de um container 11 | template 12 | auto map_join(const CONTAINER& c, FUNC f, const string& sep = ", ") { 13 | stringstream ss; 14 | for (auto it = c.begin(); it != c.end(); ++it) { 15 | ss << (it != c.begin() ? sep : "") << f(*it); 16 | } 17 | return ss.str(); 18 | } 19 | 20 | int main() { 21 | while (true) { 22 | string line, cmd; 23 | getline(cin, line); 24 | cout << "$" << line << endl; 25 | 26 | stringstream ss(line); 27 | ss >> cmd; 28 | 29 | if (cmd == "end") { 30 | break; 31 | } else if (cmd == "show") { 32 | } else if (cmd == "init") { 33 | // int qtd_caixas; 34 | // ss >> qtd_caixas; 35 | } else if (cmd == "arrive") { 36 | // string nome; 37 | // ss >> nome; 38 | } else if (cmd == "call") { 39 | // int indice; 40 | // ss >> indice; 41 | } else if (cmd == "finish") { 42 | // int indice; 43 | // ss >> indice; 44 | } else { 45 | cout << "fail: comando invalido\n"; 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /base/budega/.cache/draft/go/shell.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "bufio" 5 | "fmt" 6 | "os" 7 | "strconv" 8 | "strings" 9 | ) 10 | 11 | func main() { 12 | scanner := bufio.NewScanner(os.Stdin) 13 | 14 | for { 15 | if !scanner.Scan() { // read line and store in scanner buffer 16 | break 17 | } 18 | line := scanner.Text() // get the line from the scanner buffer into a string 19 | fmt.Println("$" + line) 20 | 21 | parts := strings.Fields(line) 22 | cmd := parts[0] 23 | 24 | switch cmd { 25 | case "end": 26 | break 27 | case "show": 28 | case "init": 29 | qtd, _ := strconv.Atoi(parts[1]) 30 | _ = qtd 31 | case "arrive": 32 | name := parts[1] 33 | _ = name 34 | case "call": 35 | index, _ := strconv.Atoi(parts[1]) 36 | _ = index 37 | case "finish": 38 | index, _ := strconv.Atoi(parts[1]) 39 | _ = index 40 | default: 41 | fmt.Println("fail: comando invalido") 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /base/budega/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | 4 | class Shell { 5 | public static void main(String[] _args) { 6 | while(true) { 7 | var line = scanner.nextLine(); 8 | System.out.println("$" + line); 9 | 10 | var par = line.split(" "); 11 | var cmd = par[0]; 12 | 13 | if (cmd.equals("end")) { 14 | break; 15 | } 16 | else if (cmd.equals("init")) { 17 | // var qtd_caixas = Integer.parseInt(par[1]); 18 | } 19 | else if (cmd.equals("show")) { 20 | } 21 | else if (cmd.equals("arrive")) { 22 | // var nome = par[1]; 23 | } 24 | else if (cmd.equals("call")) { 25 | // var indice = Integer.parseInt(par[1]); 26 | } 27 | else if (cmd.equals("finish")) { 28 | // var indice = Integer.parseInt(par[1]); 29 | } 30 | else { 31 | System.out.println("fail: comando invalido"); 32 | 33 | } 34 | } 35 | } 36 | 37 | static Scanner scanner = new Scanner(System.in); 38 | } 39 | -------------------------------------------------------------------------------- /base/budega/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | while (true) { 6 | const line = input(); 7 | console.log("$" + line); 8 | 9 | var par = line.split(" "); 10 | var cmd = par[0]; 11 | 12 | if (cmd == "end") { 13 | break; 14 | } else if (cmd == "show") { 15 | } else if (cmd == "init") { 16 | // const nCaixas = parseInt(par[1]); 17 | } else if (cmd == "arrive") { 18 | // const nome = par[1]; 19 | } else if (cmd == "call") { 20 | // const index = parseInt(par[1]); 21 | } else if (cmd == "finish") { 22 | // const index = parseInt(par[1]); 23 | } else { 24 | console.log("fail: comando invalido"); 25 | } 26 | } 27 | } 28 | main() 29 | -------------------------------------------------------------------------------- /base/budega/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/budega/cover.jpg -------------------------------------------------------------------------------- /base/budega/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/budega/diagrama.png -------------------------------------------------------------------------------- /base/budega/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | left to right direction 6 | 7 | class Person { 8 | - name : string 9 | __ 10 | + Person(name : string) 11 | + toString() : string 12 | __ 13 | + getName() : string 14 | + setName(name : string): void 15 | } 16 | 17 | class Market { 18 | - counters : Array 19 | - waiting : Array 20 | __ 21 | - validateIndex(index: number): boolean 22 | __ 23 | + Market(counterCount: number) 24 | + toString(): string 25 | __ 26 | + arrive (person: Person): void 27 | + call (index : number): boolean 28 | + finish (index : number): Person | null 29 | + cutInLine(sneaky: Person, fool: string): boolean 30 | + giveUp (quitter: string): Person | null 31 | } 32 | 33 | Person "0..*" --o "1" Market 34 | @enduml 35 | -------------------------------------------------------------------------------- /base/busca/.cache/q.tio: -------------------------------------------------------------------------------- 1 | >>>>>>>> INSERT in 2 | in [1,2,3,4] 4 3 | in [1,2,3,5] 1 4 | in [1,2,5,9] 7 5 | end 6 | ======== EXPECT 7 | $in [1,2,3,4] 4 8 | true 9 | $in [1,2,3,5] 1 10 | true 11 | $in [1,2,5,9] 7 12 | false 13 | $end 14 | <<<<<<<< FINISH 15 | 16 | 17 | >>>>>>>> INSERT index_of 18 | index_of [-1,-50,-1,-99] -50 19 | index_of [-1,-50,-1,-99] -99 20 | index_of [-1,-50,-1,-99] 10 21 | end 22 | ======== EXPECT 23 | $index_of [-1,-50,-1,-99] -50 24 | 1 25 | $index_of [-1,-50,-1,-99] -99 26 | 3 27 | $index_of [-1,-50,-1,-99] 10 28 | -1 29 | $end 30 | <<<<<<<< FINISH 31 | 32 | 33 | >>>>>>>> INSERT find_if 34 | find_if [5,3,-1,-50,-1,-99] 35 | find_if [-1,-50,-1,-99,-444] 36 | end 37 | ======== EXPECT 38 | $find_if [5,3,-1,-50,-1,-99] 39 | 0 40 | $find_if [-1,-50,-1,-99,-444] 41 | -1 42 | $end 43 | <<<<<<<< FINISH 44 | 45 | 46 | >>>>>>>> INSERT min_element 47 | min_element [5,3,-1,-50,-1,-99] 48 | min_element [-1,-50,-1,-99,-444] 49 | min_element [-2,5,3,-1,50,-1] 50 | min_element [] 51 | end 52 | ======== EXPECT 53 | $min_element [5,3,-1,-50,-1,-99] 54 | 5 55 | $min_element [-1,-50,-1,-99,-444] 56 | 4 57 | $min_element [-2,5,3,-1,50,-1] 58 | 0 59 | $min_element [] 60 | -1 61 | $end 62 | <<<<<<<< FINISH 63 | 64 | 65 | >>>>>>>> INSERT find_min_if 66 | find_min_if [5,3,-1,-50,-1,-99] 67 | find_min_if [-1,-50,-1,-99,-444] 68 | end 69 | ======== EXPECT 70 | $find_min_if [5,3,-1,-50,-1,-99] 71 | 1 72 | $find_min_if [-1,-50,-1,-99,-444] 73 | -1 74 | $end 75 | <<<<<<<< FINISH 76 | 77 | -------------------------------------------------------------------------------- /base/busca/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/busca/cover.jpg -------------------------------------------------------------------------------- /base/cadastro/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | using namespace std; 10 | 11 | 12 | int main() { 13 | string line; 14 | 15 | while (getline(cin, line)) { 16 | try { 17 | istringstream iss(line); 18 | string cmd; 19 | iss >> cmd; 20 | cout << "$" << line << endl; 21 | 22 | if (cmd == "end") { 23 | break; 24 | } else if (cmd == "show") { 25 | } else if (cmd == "addCli") { 26 | // string clientId; 27 | // iss >> clientId; 28 | } else if (cmd == "saque") { 29 | // int accountId; 30 | // double value; 31 | // iss >> accountId >> value; 32 | } else if (cmd == "deposito") { 33 | // int accountId; 34 | // double value; 35 | // iss >> accountId >> value; 36 | } else if (cmd == "transf") { 37 | // int accountIdFrom, accountIdTo; 38 | // double value; 39 | // iss >> accountIdFrom >> accountIdTo >> value; 40 | } else if (cmd == "update") { 41 | } else { 42 | cout << "fail: comando invalido" << endl; 43 | } 44 | } catch (const exception& e) { 45 | cout << e.what() << endl; 46 | } 47 | } 48 | 49 | return 0; 50 | } 51 | -------------------------------------------------------------------------------- /base/cadastro/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | function main(): void { 6 | while (true) { 7 | try { 8 | const line = input(); 9 | const args = line.split(" "); 10 | console.log("$" + line); 11 | 12 | if (line === "end") { 13 | break; 14 | } else if (args[0] === "show") { 15 | } else if (args[0] === "addCli") { 16 | // const clientId = args[1]; 17 | } else if (args[0] === "saque") { 18 | // const idConta = +args[1]; 19 | // const value = +args[2]; 20 | } else if (args[0] === "deposito") { 21 | // const idConta = +args[1]; 22 | // const value = +args[2]; 23 | } else if (args[0] === "transf") { 24 | // const idContaDe = +args[1]; 25 | // const idContaPara = +args[2]; 26 | // const value = +args[3]; 27 | } else if (args[0] === "update") { 28 | } else { 29 | console.log("fail: comando invalido"); 30 | } 31 | } catch (e) { 32 | console.log(e.message); 33 | } 34 | } 35 | } 36 | 37 | main(); 38 | -------------------------------------------------------------------------------- /base/cadastro/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cadastro/cover.jpg -------------------------------------------------------------------------------- /base/cadastro/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cadastro/diagrama.png -------------------------------------------------------------------------------- /base/cadastro/figura.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cadastro/figura.png -------------------------------------------------------------------------------- /base/cadastro/temp/Makefile: -------------------------------------------------------------------------------- 1 | CPPFLAGS = -Wall -std=c++14 -g 2 | 3 | FILE = ../../_posts/0025-01-01-agencia.md 4 | 5 | run: solver 6 | th run solver $(FILE) -v -------------------------------------------------------------------------------- /base/cadastro/temp/teste.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace std; 4 | 5 | void teste(string a, string b, string c){ 6 | cout << a << " " << b << " " << c << "\n"; 7 | } 8 | 9 | void teste2(int a, string b, float c){ 10 | cout << a << " " << b << " " << c << "\n"; 11 | } 12 | 13 | template 14 | T get(istream& is){ 15 | T t; 16 | is >> t; 17 | return t; 18 | } 19 | #define getI get 20 | #define getS get 21 | #define getF get 22 | 23 | 24 | int main(){ 25 | stringstream x("1 2 3"); 26 | teste(get(x), get(x), get(x)); 27 | 28 | stringstream y("1 banana 3.4"); 29 | teste2(get(y), get(y), get(y)); 30 | 31 | } 32 | -------------------------------------------------------------------------------- /base/cadastro/video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cadastro/video.png -------------------------------------------------------------------------------- /base/calculadora/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include // fixed, cout, endl, string 2 | #include // stringstream 3 | #include // setprecision 4 | using namespace std; 5 | 6 | int main() { 7 | // CRIE SUA CALCULADORA AQUI 8 | 9 | while (true) { 10 | string line, cmd; 11 | getline(cin, line); 12 | cout << "$" << line << '\n'; 13 | 14 | stringstream par(line); 15 | par >> cmd; 16 | 17 | if (cmd == "end") { 18 | break; 19 | } 20 | else if (cmd == "init") { 21 | // SUBSTITUA A CALCULADORA UTILIZANDO O CONSTRUTOR 22 | // int batteryMax {}; 23 | // par >> batteryMax; 24 | } 25 | else if (cmd == "show") { 26 | // MOSTRE A CALCULADORA 27 | } 28 | else if (cmd == "charge") { 29 | // RECARREGAR 30 | // int increment {}; 31 | // par >> increment; 32 | } 33 | else if (cmd == "sum") { 34 | // SOMAR 35 | // int a {}, b {}; 36 | // par >> a >> b; 37 | } 38 | else if (cmd == "div") { 39 | // DIVIDIR 40 | // int num {}, den {}; 41 | // par >> num >> den; 42 | } 43 | else { 44 | cout << "fail: comando invalido" << endl; 45 | } 46 | } 47 | 48 | 49 | } 50 | -------------------------------------------------------------------------------- /base/calculadora/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | import java.text.DecimalFormat; 3 | 4 | 5 | public class Shell { 6 | 7 | public static void main(String[] args) { 8 | // Calculator calculator = new Calculator(0); 9 | 10 | while (true) { 11 | var line = scanner.nextLine(); 12 | System.out.println("$" + line); 13 | 14 | var par = line.split(" "); 15 | var cmd = par[0]; 16 | 17 | if (cmd.equals("end")) { 18 | break; 19 | } 20 | else if (cmd.equals("init")) { 21 | // CHAME O CONSTRUTOR 22 | // int batteryMax = Integer.parseInt(par[1]); 23 | } 24 | else if (cmd.equals("show")) { 25 | // MOSTRAR 26 | } 27 | else if (cmd.equals("charge")) { 28 | // RECARREGAR A BATERIA 29 | // int value = Integer.parseInt(par[1]); 30 | } 31 | else if (cmd.equals("sum")) { 32 | // SOMAR 33 | // int a = Integer.parseInt(par[1]); 34 | // int b = Integer.parseInt(par[2]); 35 | } 36 | else if (cmd.equals("div")) { 37 | // DIVIDIR 38 | // int num = Integer.parseInt(par[1]); 39 | // int den = Integer.parseInt(par[2]); 40 | } 41 | else { 42 | System.out.println("fail: comando invalido"); 43 | } 44 | } 45 | } 46 | 47 | private static Scanner scanner = new Scanner(System.in); 48 | } 49 | -------------------------------------------------------------------------------- /base/calculadora/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; } 2 | export {}; 3 | 4 | function main() { 5 | // let calc = new Calculator(0); 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | if (cmd == "end") { 14 | break; 15 | } 16 | else if (cmd == "init") { 17 | // CHAME O CONSTRUTOR AQUI 18 | // const batteryMax = parseInt(par[1]); 19 | } 20 | else if (cmd == "charge") { 21 | // RECARREGAR A BATERIA 22 | // const value = parseInt(par[1]); 23 | } 24 | else if (cmd == "sum") { 25 | // SOMAR 26 | // const a = parseInt(par[1]); 27 | // const b = parseInt(par[2]); 28 | } 29 | else if (cmd == "div") { 30 | // DIVIDIR 31 | // const num = parseInt(par[1]); 32 | // const den = parseInt(par[2]); 33 | } 34 | else if (cmd == "show") { 35 | // MOSTRAR 36 | } 37 | else { 38 | console.log("fail: comando invalido"); 39 | } 40 | } 41 | } 42 | 43 | main() 44 | -------------------------------------------------------------------------------- /base/calculadora/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/calculadora/cover.jpg -------------------------------------------------------------------------------- /base/calculadora/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/calculadora/diagrama.png -------------------------------------------------------------------------------- /base/calculadora/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Calculator { 7 | 8 | + battery : number 9 | + batteryMax : number 10 | + display : number 11 | __ 12 | 13 | + constructor(batteryMax : number) 14 | + charge(increment : number): void 15 | + sum(a : number, b : number): void 16 | + division(num : number, den : number): void 17 | + toString(): string 18 | } 19 | 20 | class Legenda { 21 | + atributePublic 22 | - atributePrivate 23 | # atributeProtected 24 | __ 25 | + methodPublic() 26 | - methodPrivate() 27 | # methodProtected() 28 | } 29 | 30 | @enduml 31 | -------------------------------------------------------------------------------- /base/camisa/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/camisa/.cache/q.tio -------------------------------------------------------------------------------- /base/camisa/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/camisa/cover.jpg -------------------------------------------------------------------------------- /base/camisa/draft.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | std::cout << "qxcode\n"; 5 | } 6 | 7 | -------------------------------------------------------------------------------- /base/camisa/draft.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; //essa função será gerada pelo TKO na execução 2 | export {}; 3 | 4 | function main() { 5 | console.log("qxcode"); 6 | } 7 | main(); 8 | -------------------------------------------------------------------------------- /base/carga/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/carga/.cache/q.tio -------------------------------------------------------------------------------- /base/carga/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/carga/cover.jpg -------------------------------------------------------------------------------- /base/carga/figura3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/carga/figura3.jpg -------------------------------------------------------------------------------- /base/carro/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace std; 4 | 5 | int main() { 6 | // CRIE SEU CARRO AQUI 7 | while (true) { 8 | 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << '\n'; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "end") { 17 | break; 18 | } 19 | else if (cmd == "show") { 20 | // MOSTRE O CARRO 21 | } 22 | else if (cmd == "enter") { 23 | // TENTE EMBARCAR 24 | } 25 | else if (cmd == "leave") { 26 | // TENTE DESCEMBARCAR 27 | } 28 | else if (cmd == "fuel") { 29 | // AUMENTE O COMBUSTIVEL 30 | // int increment{}; 31 | // ss >> increment; 32 | } 33 | else if (cmd == "drive") { 34 | // TENTE DIRIGIR 35 | // int distance {}; 36 | // ss >> distance; 37 | } 38 | else { 39 | cout << "fail: comando invalido\n"; 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /base/carro/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | 4 | public class Shell { 5 | 6 | public static void main(String[] a) { 7 | // CRIE SEU CARRO AQUI 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | var par = line.split(" "); 13 | var cmd = par[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } 18 | else if (cmd.equals("show")) { 19 | // MOSTRE OS ATRIBUTOS DO CARRO 20 | } 21 | else if (cmd.equals("enter")) { 22 | // TENTE EMBARCAR UMA PESSOA 23 | } 24 | else if (cmd.equals("leave")) { 25 | // TENTE DESEMBARCAR UMA PESSOA 26 | } 27 | else if (cmd.equals("fuel")) { 28 | // AUMENTE A QUANTIDADE DE COMBUSTIVEL 29 | // int increment = Integer.parseInt(par[1]); 30 | } 31 | else if (cmd.equals("drive")) { 32 | // TENTE DIRIGIR UMA CERTA DISTANCIA 33 | // int distance = Integer.parseInt(par[1]); 34 | } 35 | else { 36 | System.out.println("fail: comando invalido"); 37 | } 38 | } 39 | } 40 | private static Scanner scanner = new Scanner(System.in); 41 | } 42 | -------------------------------------------------------------------------------- /base/carro/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; } 2 | export {}; 3 | 4 | 5 | function main() { 6 | // CRIE SEU CARRO AQUI 7 | while(true) { 8 | let line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | else if (cmd == "show") { 18 | // MOSTRE O CARRO 19 | } 20 | else if (cmd == "enter") { 21 | // TENTE EMBARCAR UMA PESSOA 22 | } 23 | else if (cmd == "leave") { 24 | // TENTE DESEMBARCAR UMA PESSOA 25 | } 26 | else if (cmd == "fuel") { 27 | // INCREMENTE O COMBUSTIVEL 28 | // const increment = parseInt(par[1]); 29 | } 30 | else if (cmd == "drive") { 31 | // TENTE DIRIGIR CERTA DISTANCIA 32 | // const distance = parseInt(par[1]); 33 | } 34 | else { 35 | console.log("fail: comando invalido"); 36 | } 37 | } 38 | } 39 | 40 | main() 41 | -------------------------------------------------------------------------------- /base/carro/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/carro/cover.jpg -------------------------------------------------------------------------------- /base/carro/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/carro/diagrama.png -------------------------------------------------------------------------------- /base/carro/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Car { 7 | + pass : number 8 | + passMax : number 9 | + gas : number 10 | + gasMax : number 11 | + km : number 12 | 13 | __ 14 | 15 | + constructor() 16 | + enter(): void 17 | + leave(): void 18 | + drive(distance : number): void 19 | + fuel (increment : number): void 20 | + toString() : string 21 | } 22 | 23 | class Legend { 24 | + publicAttribute 25 | - privateAttribute 26 | # protectedAttribute 27 | __ 28 | + publicMethod() 29 | - privateMethod() 30 | # protectedMethod() 31 | } 32 | 33 | 34 | @enduml -------------------------------------------------------------------------------- /base/charger/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | using namespace std; 6 | 7 | int main() { 8 | while (true) { 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << endl; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "end") { 17 | break; 18 | } 19 | // else if (cmd == "show") { 20 | // } 21 | // else if (cmd == "turn_on") { 22 | // } 23 | // else if (cmd == "turn_off") { 24 | // } 25 | // else if (cmd == "use") { 26 | // int minutes; 27 | // ss >> minutes; 28 | // } 29 | // else if (cmd == "set_charger") { 30 | // // CRIE UM OBJETO Charger E ATRIBUA AO NOTEBOOK 31 | // int power; 32 | // ss >> power; 33 | // } 34 | // else if (cmd == "rm_charger") { 35 | // // REMOVA O CARREGADOR DO NOTEBOOK E IMPRIMA SE ELE EXISTIR 36 | // } 37 | // else if (cmd == "set_battery") { 38 | // // CRIE UM OBJETO Bateria E ATRIBUA AO NOTEBOOK 39 | // int capacity; 40 | // ss >> capacity; 41 | // } 42 | // else if (cmd == "rm_battery") { 43 | // // REMOVA A BATERIA DO NOTEBOOK E IMPRIMA SE ELA EXISTIR 44 | // } 45 | else { 46 | cout << "fail: comando inválido\n"; 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /base/charger/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | while (true) { 6 | let line = input(); 7 | console.log("$" + line); 8 | 9 | var par = line.split(" "); 10 | var cmd = par[0]; 11 | 12 | if (cmd == "end") { 13 | break; 14 | } 15 | // else if (cmd == "show") { 16 | // } 17 | // else if (cmd == "turn_on") { 18 | // } 19 | // else if (cmd == "turn_off") { 20 | // } 21 | // else if (cmd == "use") { 22 | // const minutes = parseInt(par[1]); 23 | // }else if (cmd == "set_charger") { 24 | // // CRIE UM CARREGADOR COM A POTÊNCIA INFORMADA E CONECTE AO NOTEBOOK 25 | // const power = parseInt(par[1]); 26 | // } 27 | // else if (cmd == "rm_charger") { 28 | // // REMOVA O CARREGADOR DO NOTEBOOK E O IMPRIMA 29 | // } 30 | // else if (cmd == "set_battery") { 31 | // // CRIE UMA BATERIA COM A CAPACIDADE INFORMADA E CONECTE AO NOTEBOOK 32 | // const capacity = parseInt(par[1]); 33 | // } 34 | // else if (cmd == "rm_battery") { 35 | // // REMOVA A BATERIA DO NOTEBOOK E A IMPRIMA 36 | // } 37 | else { 38 | console.log("fail: comando inválido"); 39 | } 40 | } 41 | } 42 | 43 | main(); 44 | -------------------------------------------------------------------------------- /base/charger/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/charger/cover.jpg -------------------------------------------------------------------------------- /base/chinela/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/chinela/.cache/q.tio -------------------------------------------------------------------------------- /base/chinela/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/chinela/cover.jpg -------------------------------------------------------------------------------- /base/cinema/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | using namespace std; 6 | 7 | template 8 | string map_join(const CONTAINER& c, FUNC f, string sep) { 9 | stringstream ss; 10 | for (auto it = c.begin(); it != c.end(); it++) { 11 | ss << (it == c.begin() ? "" : sep); 12 | ss << f(*it); 13 | } 14 | return ss.str(); 15 | } 16 | 17 | int main() { 18 | 19 | while (true) { 20 | string line, cmd; 21 | getline(cin, line); 22 | cout << "$" << line << endl; 23 | 24 | stringstream ss(line); 25 | ss >> cmd; 26 | 27 | if (cmd == "end") { 28 | break; 29 | } else if (cmd == "show") { 30 | } else if (cmd == "init") { 31 | // int qtd; 32 | // ss >> qtd; 33 | } else if (cmd == "reserve") { 34 | // string id, phone; 35 | // int index; 36 | // ss >> id >> phone >> index; 37 | } else if (cmd == "cancel") { 38 | // string id; 39 | // ss >> id; 40 | } else { 41 | cout << "fail: comando invalido" << endl; 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /base/cinema/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | import java.util.*; 3 | import java.util.stream.Collectors; 4 | 5 | 6 | public class Shell { 7 | public static void main(String[] _args) { 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | var args = line.split(" "); 13 | var cmd = args[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } 18 | else if (cmd.equals("show")) { 19 | } 20 | else if (cmd.equals("init")) { 21 | // var seats = Integer.parseInt(args[1]); 22 | } 23 | else if (cmd.equals("reserve")) { 24 | // var id = args[1]; 25 | // var phone = args[2]; 26 | // var index = Integer.parseInt(args[3]); 27 | } 28 | else if (cmd.equals("cancel")) { 29 | // var id = args[1]; 30 | } 31 | else { 32 | System.out.println("fail: comando invalido"); 33 | } 34 | } 35 | } 36 | 37 | private static Scanner scanner = new Scanner(System.in); 38 | 39 | } 40 | -------------------------------------------------------------------------------- /base/cinema/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | 6 | function main() { 7 | 8 | while (true) { 9 | const line = input(); 10 | console.log("$" + line); 11 | 12 | const par = line.split(" "); 13 | const cmd = par[0]; 14 | 15 | if (cmd === "end") { 16 | break; 17 | } else if (cmd === "show") { 18 | } else if (cmd === "init") { 19 | // const seats = parseInt(par[1], 10); 20 | } else if (cmd === "reserve") { 21 | // const id = par[1]; 22 | // const phone = parseInt(par[2]); 23 | // const index = parseInt(par[3], 10); 24 | } else if (cmd === "cancel") { 25 | // const id = par[1]; 26 | } else { 27 | console.log("fail: comando invalido"); 28 | } 29 | } 30 | } 31 | 32 | main(); 33 | -------------------------------------------------------------------------------- /base/cinema/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cinema/cover.jpg -------------------------------------------------------------------------------- /base/cinema/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cinema/diagrama.png -------------------------------------------------------------------------------- /base/cinema/diagrama.puml: -------------------------------------------------------------------------------- 1 | 2 | @startuml 3 | 4 | skinparam defaultFontName "Source Code Pro" 5 | skinparam dpi 150 6 | 7 | 8 | class Client { 9 | - id : string 10 | - phone: number 11 | __ 12 | + constructor(id : string, phone : number) 13 | __ 14 | + getPhone(): number 15 | + setPhone(fone : number) 16 | + getId(): string 17 | + setId(id : string) 18 | __ 19 | + toString(): string 20 | } 21 | 22 | class Theater { 23 | 24 | - seats : Array 25 | - search(name: string): number 26 | - verifyIndex(index: number): boolean 27 | __ 28 | + constructor(capacity : number) 29 | __ 30 | + reserve(id : string, phone : number, index : number) : boolean 31 | + cancel(id : string) 32 | + getSeats() : Array 33 | __ 34 | + toString() : string 35 | } 36 | 37 | 38 | Theater "1" o-- "0..*" Client 39 | @enduml -------------------------------------------------------------------------------- /base/cofre/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | let line = input(); 8 | console.log("$" + line); 9 | let args = line.split(" "); 10 | 11 | try { 12 | if (args[0] == "end") { 13 | break; 14 | } 15 | else if (args[0] == "show") { 16 | } 17 | else if (args[0] == "init") { 18 | // const volumeMax = parseInt(args[1]); 19 | } 20 | else if (args[0] == "addCoin") { 21 | // let value = parseInt(args[1]); 22 | } 23 | else if (args[0] == "addItem") { 24 | // const label = args[1]; 25 | // const value = parseInt(args[2]); 26 | // const volume = parseInt(args[3]); 27 | } 28 | else if (args[0] == "break") { 29 | } 30 | else if (args[0] == "extractCoins") { 31 | } 32 | else if (args[0] == "extractItems") { 33 | } 34 | else { 35 | console.log("fail: invalid command"); 36 | } 37 | } catch (e) { 38 | console.log(e.message); 39 | } 40 | } 41 | } 42 | 43 | main(); 44 | -------------------------------------------------------------------------------- /base/cofre/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cofre/cover.jpg -------------------------------------------------------------------------------- /base/cofre/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/cofre/diagrama.png -------------------------------------------------------------------------------- /base/comunicador/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/comunicador/cover.jpg -------------------------------------------------------------------------------- /base/comunicador/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/comunicador/diagrama.png -------------------------------------------------------------------------------- /base/comunicador/old/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/comunicador/old/diagrama.png -------------------------------------------------------------------------------- /base/contagem/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/contagem/cover.jpg -------------------------------------------------------------------------------- /base/contato/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | using namespace std; 8 | 9 | template 10 | string map_join(const CONTAINER &cont, FUNC func, string sep = " ") 11 | { 12 | stringstream ss; 13 | for (auto it = cont.begin(); it != cont.end(); it++) 14 | { 15 | ss << (it == cont.begin() ? "" : sep) << func(*it); 16 | } 17 | return ss.str(); 18 | } 19 | int main() 20 | { 21 | while (true) 22 | { 23 | string line, cmd; 24 | getline(cin, line); 25 | cout << "$" << line << endl; 26 | stringstream ss(line); 27 | ss >> cmd; 28 | 29 | if (cmd == "end") 30 | { 31 | break; 32 | } 33 | else if (cmd == "init") 34 | { 35 | // string name; 36 | // ss >> name; 37 | } 38 | else if (cmd == "add") 39 | { 40 | // string id, number; 41 | // ss >> id >> number; 42 | } 43 | else if (cmd == "rm") 44 | { 45 | // int index{}; 46 | // ss >> index; 47 | } 48 | else if (cmd == "tfav") 49 | { 50 | } 51 | else if (cmd == "show") 52 | { 53 | } 54 | else 55 | { 56 | cout << "fail: comando invalido" << endl; 57 | } 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /base/contato/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.ArrayList; 2 | import java.util.List; 3 | import java.util.Scanner; 4 | import java.util.stream.Collectors; 5 | import java.util.Collections; 6 | 7 | public class Shell{ 8 | 9 | public static void main(String[] Args) { 10 | while (true) { 11 | String line = scanner.nextLine(); 12 | System.out.println("$" + line); 13 | String[] args = line.split(" "); 14 | 15 | if (args[0].equals("end")) { 16 | break; 17 | } 18 | else if (args[0].equals("init")) { 19 | // var name = args[1]; 20 | } 21 | else if (args[0].equals("show")) { 22 | } 23 | else if (args[0].equals("add")) { 24 | // var id = args[1]; 25 | // var number = args[2]; 26 | } 27 | else if (args[0].equals("rm")) { 28 | // var index = Integer.parseInt(args[1]); 29 | } 30 | else if (args[0].equals("tfav")) { 31 | } 32 | else { 33 | System.out.println("fail: invalid command"); 34 | } 35 | } 36 | } 37 | static Scanner scanner = new Scanner(System.in); 38 | } 39 | -------------------------------------------------------------------------------- /base/contato/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | function main() { 6 | while (true) { 7 | let line = input(); 8 | console.log("$" + line); 9 | const args = line.split(" "); 10 | const cmd = args[0]; 11 | 12 | if (cmd === "end") { 13 | break; 14 | } else if (cmd === "init") { 15 | const name = args[1]; 16 | } else if (cmd === "add") { 17 | const id = args[1]; 18 | const number = args[2]; 19 | } else if (cmd === "rm") { 20 | const index = +args[1]; 21 | } else if (cmd === "tfav") { 22 | } else if (cmd === "show") { 23 | } else { 24 | console.log("fail: comando invalido"); 25 | } 26 | } 27 | } 28 | 29 | main(); 30 | -------------------------------------------------------------------------------- /base/contato/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/contato/cover.jpg -------------------------------------------------------------------------------- /base/contato/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/contato/diagrama.png -------------------------------------------------------------------------------- /base/enumeracao/.cache/Readme.md: -------------------------------------------------------------------------------- 1 | # Exemplo de uso de uma classe que funciona como Enumeração 2 | -------------------------------------------------------------------------------- /base/enumeracao/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/enumeracao/.cache/q.tio -------------------------------------------------------------------------------- /base/enumeracao/Readme.md: -------------------------------------------------------------------------------- 1 | # Exemplo de uso de uma classe que funciona como Enumeração 2 | -------------------------------------------------------------------------------- /base/enxugar/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace std; 4 | 5 | int main() { 6 | // CRIE SUA TOALHA AQUI 7 | while (true) { 8 | string line, cmd; 9 | getline(cin, line); 10 | 11 | stringstream par(line); 12 | par >> cmd; 13 | 14 | if (cmd == "mostrar") { // MOSTRE A TOALHA 15 | } 16 | else if (cmd == "criar") { // ATUALIZE A TOALHA UTILIZAND O CONSTRUTOR 17 | // string cor, tamanho; 18 | // par >> cor >> tamanho; 19 | } 20 | else if (cmd == "enxugar") { // USE O METODO ENXUGAR 21 | // int umidade {}; 22 | // par >> umidade; 23 | } 24 | else if (cmd == "torcer") { // USE O METODO TORCER 25 | } 26 | else if (cmd == "seca") { // VERIFIQUE SE ESTA SECA E IMPRIMA "sim" OU "nao" 27 | } 28 | else if (cmd == "end") { 29 | break; 30 | } 31 | else { 32 | cout << "fail: comando invalido" << endl; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /base/enxugar/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | 4 | public class Shell { 5 | 6 | public static void main(String[] a) { 7 | // CRIE SUA TOALHA AQUI 8 | // Toalha toalha = new Toalha(); 9 | 10 | while (true) { 11 | var line = scanner.nextLine(); 12 | System.out.println("$" + line); 13 | 14 | var par = line.split(" "); 15 | var cmd = par[0]; 16 | 17 | if (cmd.equals("end")) { 18 | break; 19 | } 20 | else if (cmd.equals("criar")) { // ATUALIZE SUA TOALHA USANDO O CONSTRUTOR 21 | // var cor = par[1]; 22 | // var tamanho = par[2]; 23 | } 24 | else if (cmd.equals("mostrar")) { // MOSTRE SUA TOALHA 25 | } 26 | else if (cmd.equals("enxugar")) { // ENXUGUE 27 | // var quantidade = Integer.parseInt(par[1]); 28 | } 29 | else if (cmd.equals("seca")) { // OBTENHA SE ESTA SECA E IMPRIMA SIM OU NAO 30 | } 31 | else if (cmd.equals("torcer")) { // CHAME O METODO TORCER 32 | } 33 | else { 34 | System.out.println("comando invalido"); 35 | } 36 | } 37 | } 38 | private static Scanner scanner = new Scanner(System.in); 39 | } 40 | -------------------------------------------------------------------------------- /base/enxugar/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; } 2 | export {}; 3 | 4 | function main() { 5 | // CRIE SUA TOALHA AQUI 6 | // let toalha = new Toalha(); 7 | while (true) { 8 | let line = input(); 9 | console.log("$" + line); 10 | 11 | let par = line.split(" "); 12 | let cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | else if (cmd == "criar") { // ATUALIZE SUA TOALHA UTILIZANDO O CONSTRUTOR 18 | // const cor = par[1]; 19 | // const tamanho = par[2]; 20 | } 21 | else if (cmd == "mostrar") { // MOSTRE SUA TOALHA 22 | } 23 | else if (cmd == "enxugar") { // CHAME O METODO ENXUGAR 24 | // const quantidade = +par[1]; 25 | } 26 | else if (cmd == "seca") { // UTILIZE O METODO PARA OBTER SE ESTA SECA E IMPRIMIR SIM OU NAO 27 | } 28 | else if (cmd == "torcer") { // CHAME O METODO TORCER 29 | } 30 | else { 31 | console.log("comando invalido"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/enxugar/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/enxugar/cover.jpg -------------------------------------------------------------------------------- /base/enxugar/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/enxugar/diagrama.png -------------------------------------------------------------------------------- /base/enxugar/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Towel { 7 | - color: String 8 | - size: String 9 | - wetness: number 10 | __ 11 | + constructor(color: string, size: string) 12 | + dry(amount: number): void 13 | + wringOut(): void 14 | + getMaxWetness(): number 15 | + isDry(): boolean 16 | + toString(): string 17 | + show(): void 18 | } 19 | @enduml 20 | -------------------------------------------------------------------------------- /base/especiais/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/especiais/cover.jpg -------------------------------------------------------------------------------- /base/estacionamento/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | using namespace std; 8 | 9 | int main() { 10 | 11 | while (true) { 12 | string line, cmd; 13 | getline(cin, line); 14 | cout << "$" << line << endl; 15 | 16 | stringstream ss(line); 17 | ss >> cmd; 18 | 19 | if (cmd == "end") { 20 | break; 21 | } else if (cmd == "show") { 22 | } else if (cmd == "estacionar") { 23 | // string tipo, id; 24 | // ss >> tipo >> id; 25 | } else if (cmd == "tempo") { 26 | // int tempo {}; 27 | // ss >> tempo; 28 | } else if (cmd == "pagar") { 29 | // string id; 30 | // ss >> id; 31 | } else { 32 | cout << "fail: comando invalido" << endl; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /base/estacionamento/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.text.DecimalFormat; 2 | import java.util.ArrayList; 3 | import java.util.Scanner; 4 | 5 | 6 | public class Shell { 7 | 8 | public static void main(String[] a) { 9 | while (true) { 10 | String line = scanner.nextLine(); 11 | System.out.println("$" + line); 12 | 13 | var par = line.split(" "); 14 | var cmd = par[0]; 15 | 16 | if (cmd.equals("end")) { 17 | break; 18 | } 19 | else if (cmd.equals("show")) { 20 | } 21 | else if (cmd.equals("init")) { 22 | } 23 | else if (cmd.equals("estacionar")) { 24 | // var veiculo = par[1]; 25 | // var id = par[2]; 26 | } 27 | else if (cmd.equals("pagar")) { 28 | // CHAME OS METODOS DE PAGAMENTO E SAIDA 29 | // var veiculo = par[1]; 30 | } 31 | else if (cmd.equals("tempo")) { 32 | // var tempo = Integer.parseInt(par[1]); 33 | } 34 | else { 35 | System.out.println("fail: comando inválido"); 36 | } 37 | } 38 | } 39 | 40 | private static Scanner scanner = new Scanner(System.in); 41 | } 42 | -------------------------------------------------------------------------------- /base/estacionamento/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | const line = input(); 8 | console.log("$" + line); 9 | 10 | const args = line.split(" "); 11 | const cmd = args[0]; 12 | 13 | if (cmd === "end") { 14 | break; 15 | } else if (cmd === "show") { 16 | } else if (cmd === "estacionar") { 17 | // const tipo = args[1]; 18 | // const id = args[2]; 19 | } else if (cmd === "tempo") { 20 | const tempo = +args[1]; 21 | } else if (cmd === "pagar") { 22 | // CHAME OS METODOS PAGAR E SAIR 23 | // const id = args[1]; 24 | } else { 25 | console.log("fail: comando invalido"); 26 | } 27 | } 28 | } 29 | 30 | main(); 31 | -------------------------------------------------------------------------------- /base/estacionamento/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/estacionamento/cover.jpg -------------------------------------------------------------------------------- /base/estacionamento/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/estacionamento/diagrama.png -------------------------------------------------------------------------------- /base/favoritos/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/favoritos/cover.jpg -------------------------------------------------------------------------------- /base/favoritos/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/favoritos/diagrama.png -------------------------------------------------------------------------------- /base/grafite/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include //exchange 4 | #include 5 | using namespace std; 6 | 7 | int main() { 8 | 9 | while (true) { 10 | string line, cmd; 11 | getline(cin, line); 12 | cout << "$" << line << endl; 13 | 14 | stringstream ss(line); 15 | ss >> cmd; 16 | 17 | if (cmd == "end") { 18 | break; 19 | } 20 | // else if (cmd == "show") { 21 | // } 22 | // else if (cmd == "init") { 23 | // float thickness; 24 | // ss >> thickness; 25 | // } 26 | // else if (cmd == "insert") { 27 | // float thickness; 28 | // string hardness; 29 | // int size; 30 | // ss >> thickness >> hardness >> size; 31 | // } 32 | // else if (cmd == "remove") { 33 | // } 34 | // else if (cmd == "write") { 35 | // } 36 | else { 37 | cout << "fail: comando invalido" << endl; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /base/grafite/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | import java.text.DecimalFormat; 3 | 4 | 5 | public class Shell { 6 | public static void main(String[] args) { 7 | 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | var par = line.split(" "); 13 | var cmd = par[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } 18 | // else if (cmd.equals("init")) { 19 | // var thickness = Double.parseDouble(par[1]); 20 | // } 21 | // else if (cmd.equals("show")) { 22 | // } 23 | // else if (cmd.equals("insert")) { 24 | // var thickness = Double.parseDouble(par[1]); 25 | // var hardness = par[2]; 26 | // var size = Integer.parseInt(par[3]); 27 | // } 28 | // else if (cmd.equals("remove")) { 29 | // } 30 | // else if (cmd.equals("write")) { 31 | // } 32 | else { 33 | System.out.println("fail: comando invalido"); 34 | } 35 | } 36 | } 37 | 38 | static Scanner scanner = new Scanner(System.in); 39 | } 40 | -------------------------------------------------------------------------------- /base/grafite/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; } 2 | export {}; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | const line = input(); 8 | console.log("$" + line); 9 | 10 | const par = line.split(" "); 11 | const cmd = par[0]; 12 | 13 | if (cmd == "end") { 14 | break; 15 | } 16 | // else if (cmd == "init") { 17 | // const thickness = parseFloat(par[1]); 18 | // } 19 | // else if (cmd == "show") { 20 | // } 21 | // else if (cmd == "insert") { 22 | // const thickness = parseFloat(par[1]); 23 | // const hardness = par[2]; 24 | // const size = parseInt(par[3]); 25 | // } 26 | // else if (cmd == "remove") { 27 | // } 28 | // else if (cmd == "write") { 29 | // } 30 | else { 31 | console.log("fail: comando invalido"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/grafite/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/grafite/cover.jpg -------------------------------------------------------------------------------- /base/grafite/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/grafite/diagrama.png -------------------------------------------------------------------------------- /base/grafite/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | skinparam defaultFontName "Source Code Pro" 3 | skinparam dpi 150 4 | left to right direction 5 | 6 | class Lead { 7 | - thickness: number 8 | - hardness : string 9 | - size : number 10 | __ 11 | + Lead(thickness: number, hardness: string, size: number) 12 | + usagePerSheet(): number 13 | __ 14 | + getHardness() : string 15 | + getSize() : number 16 | + getThickness(): number 17 | __ 18 | + setSize(size: number): void 19 | __ 20 | + toString(): string 21 | } 22 | 23 | class Pencil { 24 | 25 | - thickness: number 26 | - tip : Lead | null 27 | __ 28 | 29 | + Pencil(thickness : number) 30 | + hasGrafite() : boolean 31 | + insert(lead : Lead): boolean 32 | + remove() : Lead | null 33 | + writePage() : void 34 | __ 35 | + toString() : string 36 | } 37 | 38 | Pencil "1" --> "0..1" Lead 39 | @enduml -------------------------------------------------------------------------------- /base/grupo/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/grupo/cover.jpg -------------------------------------------------------------------------------- /base/grupo/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/grupo/diagrama.png -------------------------------------------------------------------------------- /base/junkfood/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | public class Shell { 4 | 5 | static Scanner scanner = new Scanner(System.in); 6 | public static void main(String[] args) { 7 | 8 | while (true) { 9 | String line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | String[] argsSplit = line.split(" "); 13 | String cmd = argsSplit[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } else if (cmd.equals("show")) { 18 | } else if (cmd.equals("init")) { 19 | // int qtdEspirais = Integer.parseInt(argsSplit[1]); 20 | } else if (cmd.equals("limpar")) { 21 | // int indice = Integer.parseInt(argsSplit[1]); 22 | } else if (cmd.equals("dinheiro")) { 23 | // double value = Double.parseDouble(argsSplit[1]); 24 | } else if (cmd.equals("comprar")) { 25 | // int ind = Integer.parseInt(argsSplit[1]); 26 | } else if (cmd.equals("set")) { 27 | // int indice = Integer.parseInt(argsSplit[1]); 28 | // String nome = argsSplit[2]; 29 | // int qtd = Integer.parseInt(argsSplit[3]); 30 | // double preco = Double.parseDouble(argsSplit[4]); 31 | } else if (cmd.equals("troco")) { 32 | // double troco = machine.pedirTroco(); 33 | } else { 34 | System.out.println("comando invalido"); 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /base/junkfood/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export { }; 3 | 4 | 5 | function main() { 6 | while (true) { 7 | let line = input(); 8 | console.log("$" + line); 9 | 10 | let args = line.split(" "); 11 | let cmd = args[0]; 12 | 13 | if (cmd == "show") { 14 | } else if (cmd == "init") { 15 | // let qtd_espirais = parseInt(args[1]); 16 | } else if (cmd == "limpar") { 17 | // let indice = parseInt(args[1]); 18 | } else if (cmd == "dinheiro") { 19 | // let value = parseFloat(args[1]); 20 | } else if (cmd == "comprar") { 21 | // let ind = parseInt(args[1]); 22 | } else if (cmd == "set") { 23 | // let indice = parseInt(args[1]); 24 | // let nome = args[2]; 25 | // let qtd = parseInt(args[3]); 26 | // let preco = parseFloat(args[4]); 27 | } else if (cmd == "troco") { 28 | } else if (cmd == "end") { 29 | break; 30 | } else { 31 | console.log("comando invalido"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/junkfood/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/junkfood/cover.jpg -------------------------------------------------------------------------------- /base/junkfood/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/junkfood/diagrama.png -------------------------------------------------------------------------------- /base/lapiseira/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | using namespace std; 6 | 7 | // Função auxiliar para mapear e juntar elementos de um container 8 | template 9 | auto map_join(const CONTAINER& c, FUNC f, const string& sep = ", ") { 10 | stringstream ss; 11 | for (auto it = c.begin(); it != c.end(); ++it) { 12 | ss << (it != c.begin() ? sep : ""); 13 | ss << f(*it); 14 | } 15 | return ss.str(); 16 | } 17 | 18 | int main() { 19 | while (true) { 20 | string line, cmd; 21 | getline(cin, line); 22 | cout << "$" << line << endl; 23 | 24 | stringstream ss(line); 25 | ss >> cmd; 26 | 27 | if (cmd == "end") { 28 | break; 29 | } 30 | else if (cmd == "show") { 31 | } 32 | else if (cmd == "init") { 33 | // float calibre; 34 | // ss >> calibre; 35 | } 36 | else if (cmd == "insert") { 37 | // float calibre; 38 | // string dureza; 39 | // int tamanho; 40 | // ss >> calibre >> dureza >> tamanho; 41 | } 42 | else if (cmd == "remove") { 43 | } 44 | else if (cmd == "pull") { 45 | } 46 | else if (cmd == "write") { 47 | } 48 | else { 49 | cout << "fail: comando invalido\n"; 50 | } 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /base/lapiseira/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.text.DecimalFormat; 2 | import java.util.Scanner; 3 | import java.util.ArrayList; 4 | public class Shell { 5 | public static void main(String[] _args) { 6 | 7 | while(true) { 8 | var line = scanner.nextLine(); 9 | System.out.println("$" + line); 10 | 11 | var par = line.split(" "); 12 | var cmd = par[0]; 13 | 14 | if (cmd.equals("end")) { 15 | break; 16 | } 17 | else if (cmd.equals("show")) { 18 | } 19 | else if (cmd.equals("init")) { 20 | // var thickness = Double.parseDouble(par[1]); 21 | } 22 | else if (cmd.equals("insert")) { 23 | // var thickness = Double.parseDouble(par[1]); 24 | // var hardness = par[2]; 25 | // var size = Integer.parseInt(par[3]); 26 | } 27 | else if (cmd.equals("remove")) { 28 | } 29 | else if (cmd.equals("show")) { 30 | } 31 | else if (cmd.equals("write")) { 32 | } 33 | else if (cmd.equals("pull")) { 34 | } 35 | else { 36 | System.out.println("fail: comando invalido"); 37 | } 38 | } 39 | } 40 | 41 | static Scanner scanner = new Scanner(System.in); 42 | } 43 | -------------------------------------------------------------------------------- /base/lapiseira/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | const line = input(); 8 | console.log("$" + line); 9 | 10 | const par = line.split(" "); 11 | const cmd = par[0]; 12 | 13 | if (cmd === "end") { 14 | break; 15 | } 16 | else if (cmd === "show") { 17 | } 18 | else if (cmd === "init") { 19 | // const thickness = parseFloat(par[1]); 20 | } 21 | else if (cmd === "insert") { 22 | // const thickness = parseFloat(par[1]); 23 | // const hardness = par[2]; 24 | // const size = parseInt(par[3]); 25 | } 26 | else if (cmd === "remove") { 27 | } 28 | else if (cmd === "write") { 29 | } 30 | else if (cmd === "pull") { 31 | } 32 | else { 33 | console.log("fail: comando invalido"); 34 | } 35 | } 36 | } 37 | 38 | main(); 39 | -------------------------------------------------------------------------------- /base/lapiseira/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/lapiseira/cover.jpg -------------------------------------------------------------------------------- /base/lapiseira/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/lapiseira/diagrama.png -------------------------------------------------------------------------------- /base/lapiseira/diagrama.puml: -------------------------------------------------------------------------------- 1 | 2 | @startuml 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | left to right direction 6 | 7 | ' Grafite 8 | class Lead { 9 | - hardness : string 10 | - thickness : number 11 | - size : number 12 | __ 13 | + Lead(thickness: number, hardness: string, size: number) 14 | __ 15 | + usagePerSheet(): number 16 | + getSize() : number 17 | + getThickness() : number 18 | + getHardness() : string 19 | __ 20 | + setSize(size : number) 21 | __ 22 | + toString(): string 23 | } 24 | 25 | class Pencil { 26 | - thickness: number 27 | - tip : Lead | null 28 | - barrel : Array 29 | __ 30 | + Pencil(thickness : number) 31 | __ 32 | + insert(lead: Lead) : boolean 33 | + remove() : Lead | null 34 | + pull() : boolean 35 | + writePage(): void 36 | __ 37 | + toString() : string 38 | } 39 | 40 | Pencil "1" o-- "0..*" Lead : > Stores 41 | @enduml -------------------------------------------------------------------------------- /base/ligacao/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/ligacao/cover.jpg -------------------------------------------------------------------------------- /base/manipulacao/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/manipulacao/cover.jpg -------------------------------------------------------------------------------- /base/mensagem/.cache/Readme.md: -------------------------------------------------------------------------------- 1 | # @mensagem 2 | 3 | 4 | [Intro](#intro) | [Guide](#guide) | [Shell](#shell) 5 | -- | -- | -- 6 | 7 | 8 | ![cover](https://raw.githubusercontent.com/qxcodepoo/arcade/master/base/mensagem/cover.jpg) 9 | 10 | Essa atividade é a base conceitual para simplificar a troca de mensagens entre dois usuários de um sistema. Cada usuário deve conter um _inbox_ que guarda as mensagens recebidas. 11 | 12 | *** 13 | 14 | ## Intro 15 | 16 | - Adicionar usuários usando o nome como chave única. 17 | - Enviar mensagens de texto entre usuários. 18 | - Ler as mensagens não lidas de um usuário. 19 | 20 | *** 21 | 22 | ## Guide 23 | 24 | ![diagrama](https://raw.githubusercontent.com/qxcodepoo/arcade/master/base/mensagem/diagrama.png) 25 | 26 | ## Shell 27 | 28 | ```python 29 | #TEST_CASE unique 30 | $addUser david 31 | $addUser celia 32 | $sendMsg david celia voce esta com fome? 33 | $sendMsg david celia ganhei duas cortesias para comer no McLanches, bora? 34 | $inbox david 35 | - empty - 36 | $sendMsg david celia me avisa se quiser ir! 37 | $inbox celia 38 | david:voce esta com fome? 39 | david:ganhei duas cortesias para comer no McLanches, bora? 40 | david:me avisa se quiser ir! 41 | $sendMsg celia david na hora, te encontro la em 10 min 42 | $inbox david 43 | celia:na hora, te encontro la em 10 min 44 | $sendMsg david celia ja to aqui 45 | $inbox celia 46 | david:ja to aqui 47 | $end 48 | ``` 49 | -------------------------------------------------------------------------------- /base/mensagem/.cache/q.tio: -------------------------------------------------------------------------------- 1 | >>>>>>>> INSERT unique 2 | addUser david 3 | addUser celia 4 | sendMsg david celia voce esta com fome? 5 | sendMsg david celia ganhei duas cortesias para comer no McLanches, bora? 6 | inbox david 7 | sendMsg david celia me avisa se quiser ir! 8 | inbox celia 9 | sendMsg celia david na hora, te encontro la em 10 min 10 | inbox david 11 | sendMsg david celia ja to aqui 12 | inbox celia 13 | end 14 | ======== EXPECT 15 | $addUser david 16 | $addUser celia 17 | $sendMsg david celia voce esta com fome? 18 | $sendMsg david celia ganhei duas cortesias para comer no McLanches, bora? 19 | $inbox david 20 | - empty - 21 | $sendMsg david celia me avisa se quiser ir! 22 | $inbox celia 23 | david:voce esta com fome? 24 | david:ganhei duas cortesias para comer no McLanches, bora? 25 | david:me avisa se quiser ir! 26 | $sendMsg celia david na hora, te encontro la em 10 min 27 | $inbox david 28 | celia:na hora, te encontro la em 10 min 29 | $sendMsg david celia ja to aqui 30 | $inbox celia 31 | david:ja to aqui 32 | $end 33 | <<<<<<<< FINISH 34 | 35 | -------------------------------------------------------------------------------- /base/mensagem/Readme.md: -------------------------------------------------------------------------------- 1 | # @mensagem 2 | 3 | 4 | [Intro](#intro) | [Guide](#guide) | [Shell](#shell) 5 | -- | -- | -- 6 | 7 | 8 | ![cover](cover.jpg) 9 | 10 | Essa atividade é a base conceitual para simplificar a troca de mensagens entre dois usuários de um sistema. Cada usuário deve conter um _inbox_ que guarda as mensagens recebidas. 11 | 12 | *** 13 | 14 | ## Intro 15 | 16 | - Adicionar usuários usando o nome como chave única. 17 | - Enviar mensagens de texto entre usuários. 18 | - Ler as mensagens não lidas de um usuário. 19 | 20 | *** 21 | 22 | ## Guide 23 | 24 | ![diagrama](diagrama.png) 25 | 26 | ## Shell 27 | 28 | ```python 29 | #TEST_CASE unique 30 | $addUser david 31 | $addUser celia 32 | $sendMsg david celia voce esta com fome? 33 | $sendMsg david celia ganhei duas cortesias para comer no McLanches, bora? 34 | $inbox david 35 | - empty - 36 | $sendMsg david celia me avisa se quiser ir! 37 | $inbox celia 38 | david:voce esta com fome? 39 | david:ganhei duas cortesias para comer no McLanches, bora? 40 | david:me avisa se quiser ir! 41 | $sendMsg celia david na hora, te encontro la em 10 min 42 | $inbox david 43 | celia:na hora, te encontro la em 10 min 44 | $sendMsg david celia ja to aqui 45 | $inbox celia 46 | david:ja to aqui 47 | $end 48 | ``` 49 | -------------------------------------------------------------------------------- /base/mensagem/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/mensagem/cover.jpg -------------------------------------------------------------------------------- /base/mensagem/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/mensagem/diagrama.png -------------------------------------------------------------------------------- /base/motoca/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | //CRIE SUA MOTO AQUI 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | // else if (cmd == "init") { 18 | // // INICIE SUA MOTO USANDO O CONSTRUTOR 19 | // const power = parseInt(par[1]); 20 | // } 21 | // else if (cmd == "show") { 22 | // // MOSTRE O ESTADO DA MOTO 23 | // } 24 | // else if (cmd == "enter") { 25 | // // CRIE UM OBJETO PESSOA E INSIRA NA MOTO 26 | // const name = par[1]; 27 | // const age = parseInt(par[2]); 28 | // } 29 | // else if (cmd == "leave") { 30 | // // REMOVA A PESSOA DA MOTO 31 | // // SE O OBJETO RETORNADO NÃO FOR NULO, MOSTRE SEUS DADOS 32 | // } 33 | // else if (cmd == "honk") { 34 | // // TOQUE A BUZINA 35 | // } 36 | // else if (cmd == "buy") { 37 | // // COMPRE TEMPO DE USO DA MOTO 38 | // const time = parseInt(par[1]); 39 | // } 40 | // else if (cmd == "drive") { 41 | // // DIRIJA A MOTO 42 | // const time = parseInt(par[1]); 43 | // } 44 | else { 45 | console.log("fail: comando invalido"); 46 | } 47 | } 48 | } 49 | 50 | main() 51 | -------------------------------------------------------------------------------- /base/motoca/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/motoca/cover.jpg -------------------------------------------------------------------------------- /base/motoca/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/motoca/diagrama.png -------------------------------------------------------------------------------- /base/motoca/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | left to right direction 6 | 7 | class Motorcycle { 8 | - person: Person | null 9 | - power : numberg 10 | - time : number 11 | __ 12 | + Motorcycle(power: number) 13 | + insertPerson(person: Person): boolean 14 | + remove(): Person | null 15 | __ 16 | + buyTime(time : number): void 17 | + drive (time : number): void 18 | + honk() : void 19 | __ 20 | + getPerson(): Person 21 | + getPower() : number 22 | + getTime() : number 23 | __ 24 | + toString(): string 25 | } 26 | 27 | class Person { 28 | - age : number 29 | - name: string 30 | __ 31 | + Person(name: string, age: number) 32 | __ 33 | + getAge() : number 34 | + getName(): string 35 | __ 36 | + toString(): string 37 | } 38 | 39 | Person "0..1" --o "1" Motorcycle : < Carry 40 | @enduml 41 | -------------------------------------------------------------------------------- /base/motouber/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | using namespace std; 5 | 6 | 7 | int main() { 8 | 9 | while (true) { 10 | string line, cmd; 11 | getline(cin, line); 12 | cout << "$" << line << endl; 13 | 14 | stringstream ss(line); 15 | ss >> cmd; 16 | 17 | if (cmd == "end") { 18 | break; 19 | } 20 | // else if (cmd == "show") { 21 | // } 22 | // else if (cmd == "setDriver") { 23 | // string name; 24 | // int money; 25 | // ss >> name >> money; 26 | // } 27 | // else if (cmd == "setPass") { 28 | // string name; 29 | // int money; 30 | // ss >> name >> money; 31 | // } 32 | // else if (cmd == "drive") { 33 | // int distance; 34 | // ss >> distance; 35 | // } 36 | // else if (cmd == "leavePass") { 37 | // } 38 | else { 39 | cout << "fail: command not found\n"; 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /base/motouber/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class Shell { 4 | 5 | public static void main(String[] args) { 6 | while (true) { 7 | var line = scanner.nextLine(); 8 | System.out.println("$" + line); 9 | 10 | var par = line.split(" "); 11 | var cmd = par[0]; 12 | 13 | if (cmd.equals("end")) { 14 | break; 15 | } 16 | // else if (cmd.equals("show")) { 17 | // } 18 | // else if (cmd.equals("setDriver")) { 19 | // String name = par[1]; 20 | // int money = Integer.parseInt(par[2]); 21 | // } 22 | // else if (cmd.equals("setPass")) { 23 | // String name = par[1]; 24 | // int money = Integer.parseInt(par[2]); 25 | // } 26 | // else if (cmd.equals("drive")) { 27 | // int distance = Integer.parseInt(par[1]); 28 | // } 29 | // else if (cmd.equals("leavePass")) { 30 | // } 31 | else { 32 | System.out.println("fail: command not found"); 33 | } 34 | } 35 | } 36 | static Scanner scanner = new Scanner(System.in); 37 | } 38 | -------------------------------------------------------------------------------- /base/motouber/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | function input() { return ""; } 2 | export {}; 3 | 4 | function main(): void { 5 | while (true) { 6 | const line = input(); 7 | console.log("$" + line); 8 | 9 | const par = line.split(" "); 10 | const cmd = par[0]; 11 | 12 | if (cmd == "end") { 13 | break; 14 | } 15 | // else if (cmd == "show") { 16 | // } 17 | // else if (cmd == "setDriver") { 18 | // const name = par[1]; 19 | // const money = parseInt(par[2]); 20 | // } 21 | // else if (cmd == "setPass") { 22 | // const name = par[1]; 23 | // const money = parseInt(par[2]); 24 | // } 25 | // else if (cmd == "drive") { 26 | // const distance = parseInt(par[1]); 27 | // } 28 | // else if (cmd == "leavePass") { 29 | // } 30 | else { 31 | console.log("fail: command not found"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/motouber/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/motouber/cover.jpg -------------------------------------------------------------------------------- /base/notebook/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/notebook/.cache/q.tio -------------------------------------------------------------------------------- /base/notebook/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/notebook/cover.jpg -------------------------------------------------------------------------------- /base/paciente/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/paciente/cover.jpg -------------------------------------------------------------------------------- /base/paciente/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/paciente/diagrama.png -------------------------------------------------------------------------------- /base/paciente/old/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/paciente/old/diagrama.png -------------------------------------------------------------------------------- /base/petshop/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/petshop/.cache/q.tio -------------------------------------------------------------------------------- /base/petshop/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/petshop/cover.jpg -------------------------------------------------------------------------------- /base/petshop/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/petshop/diagrama.png -------------------------------------------------------------------------------- /base/petshop/original.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/petshop/original.jpg -------------------------------------------------------------------------------- /base/porquinho/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | while (true) { 6 | const line = input(); 7 | console.log("$" + line); 8 | 9 | const par = line.split(" "); 10 | const cmd = par[0]; 11 | 12 | if (cmd == "end") { 13 | break; 14 | } 15 | else if (cmd == "init") { 16 | // const volume = parseInt(par[1]); 17 | } 18 | else if (cmd == "show") { 19 | } 20 | else if (cmd == "addCoin") { 21 | // const value = parseInt(par[1]); 22 | } 23 | else if (cmd == "addItem") { 24 | // const label = par[1]; 25 | // const volume = parseInt(par[2]); 26 | } 27 | else if (cmd == "break") { 28 | } 29 | else if (cmd == "extractCoins") { 30 | } 31 | else if (cmd == "extractItems") { 32 | } 33 | else { 34 | console.log("fail: invalid command"); 35 | } 36 | } 37 | } 38 | 39 | main(); 40 | -------------------------------------------------------------------------------- /base/porquinho/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/porquinho/cover.jpg -------------------------------------------------------------------------------- /base/porquinho/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/porquinho/diagrama.png -------------------------------------------------------------------------------- /base/porquinho/imagem.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/porquinho/imagem.jpg -------------------------------------------------------------------------------- /base/produto/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; 2 | export {}; 3 | 4 | -------------------------------------------------------------------------------- /base/produto/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/produto/diagrama.png -------------------------------------------------------------------------------- /base/pula-pula/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | using namespace std; 6 | 7 | template 8 | string map_join(const CONTAINER& c, FUNC f, string sep) { 9 | stringstream ss; 10 | for (auto it = c.begin(); it != c.end(); it++) { 11 | ss << (it == c.begin() ? "" : sep); 12 | ss << f(*it); 13 | } 14 | return ss.str(); 15 | } 16 | 17 | 18 | int main() { 19 | 20 | while (true) { 21 | string line, cmd; 22 | getline(cin, line); 23 | cout << "$" << line << endl; 24 | 25 | stringstream ss(line); 26 | ss >> cmd; 27 | 28 | if (cmd == "end") { 29 | break; 30 | } else if (cmd == "show") { 31 | } else if (cmd == "arrive") { 32 | // string name; 33 | // int age; 34 | // ss >> name >> age; 35 | } else if (cmd == "enter") { 36 | } else if (cmd == "leave") { 37 | } else if (cmd == "remove") { 38 | // string name; 39 | // ss >> name; 40 | } else { 41 | cout << "fail: comando invalido" << endl; 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /base/pula-pula/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | import java.util.LinkedList; 3 | 4 | public class Shell { 5 | public static void main(String[] args) { 6 | while(true) { 7 | var line = scanner.nextLine(); 8 | System.out.println("$" + line); 9 | 10 | var par = line.split(" "); 11 | var cmd = par[0]; 12 | 13 | if (cmd.equals("end")) { 14 | break; 15 | } 16 | else if (cmd.equals("show")) { 17 | } 18 | else if (cmd.equals("arrive")) { 19 | // var name = par[1]; 20 | // var age = Integer.parseInt(par[2]); 21 | } 22 | else if (cmd.equals("enter")) { 23 | } 24 | else if (cmd.equals("leave")) { 25 | } 26 | else if (cmd.equals("remove")) { 27 | // var name = par[1]; 28 | } 29 | else { 30 | System.out.println("fail: comando invalido"); 31 | } 32 | } 33 | } 34 | 35 | private static Scanner scanner = new Scanner(System.in); 36 | } 37 | -------------------------------------------------------------------------------- /base/pula-pula/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | function main() { 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } else if (cmd == "show") { //TODO 17 | } else if (cmd == "arrive") { 18 | // const name = par[1]; 19 | // const age = parseInt(par[2]); 20 | } else if (cmd == "enter") { 21 | } else if (cmd == "leave") { 22 | } else if (cmd == "remove") { 23 | // const name = par[1]; 24 | } else { 25 | console.log("fail: comando invalido"); 26 | } 27 | } 28 | } 29 | 30 | main(); 31 | -------------------------------------------------------------------------------- /base/pula-pula/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/pula-pula/cover.jpg -------------------------------------------------------------------------------- /base/pula-pula/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/pula-pula/diagrama.png -------------------------------------------------------------------------------- /base/pula-pula/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | left to right direction 6 | 7 | class Kid { 8 | - age : number 9 | - name: string 10 | __ 11 | + Kid(name: string, age: number) 12 | + toString(): string 13 | __ 14 | + getAge() : number 15 | + getName() : string 16 | + setAge (age : number): void 17 | + setName(name: string): void 18 | } 19 | 20 | class Trampoline { 21 | - playing: List 22 | - waiting: List 23 | __ 24 | - {static} removeFromList(name: string, list: List): Kid | null 25 | __ 26 | + Trampoline() 27 | + toString(): string 28 | __ 29 | + arrive(kid: Kid): void 30 | + enter() : void 31 | + leave() : void 32 | + removeKid(name: string): Kid | null 33 | } 34 | 35 | 36 | Trampoline "1" o-- "0..*" Kid : > stores 37 | @enduml -------------------------------------------------------------------------------- /base/relogio/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include // std::setfill, std::setw 4 | using namespace std; 5 | 6 | int main() { 7 | // CRIE SEU RELÓGIO AQUI 8 | 9 | while (true) { 10 | string line, cmd; 11 | getline(cin, line); 12 | cout << "$" << line << endl; 13 | 14 | stringstream ss(line); 15 | ss >> cmd; 16 | 17 | if (cmd == "end") { 18 | break; 19 | } else if (cmd == "set") { 20 | 21 | // Chame os métodos setHour, setMinute e setSecond 22 | // int hour {}, minute {}, second {}; 23 | // ss >> hour >> minute >> second; 24 | } else if (cmd == "init") { 25 | 26 | // Chame o construtor para inicializar o relógio 27 | // int hour {}, minute {}, second {}; 28 | // ss >> hour >> minute >> second; 29 | } else if (cmd == "show") { 30 | 31 | // Chame o método str e imprima o horário 32 | // cout << time.str() << endl; 33 | } else if (cmd == "next") { 34 | 35 | // Chame o método nextSecond 36 | // time.nextSecond(); 37 | } else { 38 | cout << "fail: comando invalido" << endl; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /base/relogio/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | 4 | public class Shell { 5 | public static void main(String[] a) { 6 | // CRIE SEU RELÓGIO AQUI 7 | 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | 12 | var par = line.split(" "); 13 | var cmd = par[0]; 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } 18 | else if (cmd.equals("show")) { 19 | // MOSTRE O RELÓGIO AQUI 20 | } 21 | else if (cmd.equals("init")) { 22 | // INICIE O RELÓGIO AQUI utilizando o construtor 23 | // int hour = Integer.parseInt(par[1]); 24 | // int minute = Integer.parseInt(par[2]); 25 | // int second = Integer.parseInt(par[3]); 26 | } 27 | else if (cmd.equals("set")) { 28 | // CHAME OS MÉTODOS SET AQUI 29 | // int hour = Integer.parseInt(par[1]); 30 | // int minute = Integer.parseInt(par[2]); 31 | // int second = Integer.parseInt(par[3]); 32 | } 33 | else if (cmd.equals("next")) { 34 | // CHAME O MÉTODO nextSecond AQUI 35 | } 36 | else { 37 | System.out.println("fail: comando invalido"); 38 | } 39 | } 40 | } 41 | 42 | private static Scanner scanner = new Scanner(System.in); 43 | } 44 | -------------------------------------------------------------------------------- /base/relogio/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | function main() { 4 | // CRIE SEU RELÓGIO AQUI 5 | while (true) { 6 | let line = input(); 7 | console.log("$" + line); 8 | 9 | const args = line.split(" "); 10 | const cmd = args[0]; 11 | 12 | if (cmd == "end") { 13 | break; 14 | } else if (cmd == "show") { 15 | // MOSTRE SEU RELÓGIO AQUI 16 | } else if (cmd == "init") { 17 | // INICIE SEU RELÓGIO AQUI UTILIZANDO O CONSTRUTOR 18 | // const hour = parseInt(args[1]); 19 | // const minute = parseInt(args[2]); 20 | // const second = parseInt(args[3]); 21 | } else if (cmd == "set") { 22 | // AJUSTE SEU RELÓGIO AQUI CHAMANDO OS MÉTODOS setHour, setMinute e setSecond 23 | // const hour = parseInt(args[1]); 24 | // const minute = parseInt(args[2]); 25 | // const second = parseInt(args[3]); 26 | } else if (cmd == "next") { 27 | // AVANCE SEU RELÓGIO AQUI CHAMANDO O MÉTODO nextSecond 28 | } else { 29 | console.log("fail: comando invalido"); 30 | } 31 | } 32 | } 33 | 34 | main() 35 | -------------------------------------------------------------------------------- /base/relogio/.comments/figura.jpg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Spiral clock 4 | A clock spiraling into itself 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /base/relogio/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/relogio/cover.jpg -------------------------------------------------------------------------------- /base/relogio/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/relogio/diagrama.png -------------------------------------------------------------------------------- /base/relogio/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | 7 | class Time { 8 | - hour : number 9 | - minute: number 10 | - second: number 11 | __ 12 | 13 | + Time(hour: number, minute: number, second: number) 14 | __ 15 | + getHour() : number 16 | + getMinute(): number 17 | + getSecond(): number 18 | __ 19 | + setHour (value: number): void 20 | + setMinute(value: number): void 21 | + setSecond(value: number): void 22 | __ 23 | + nextSecond() : void 24 | } 25 | 26 | class Legenda { 27 | + atributoPublic 28 | - atributoPrivate 29 | # atributoProtected 30 | __ 31 | + métodoPublic() 32 | - métodoPrivate() 33 | # métodoProtected() 34 | } 35 | 36 | @enduml -------------------------------------------------------------------------------- /base/roupa/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | using namespace std; 5 | 6 | int main() { 7 | // CRIE SEU OBJETO AQUI 8 | while (true) { 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << endl; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "size") { // TENTE ATRIBUIR UM TAMANHO 17 | // string size; 18 | // ss >> size; 19 | } else if (cmd == "show") { // MOSTRE AS INFORMAÇÕES DO OBJETO 20 | } else if (cmd == "end") { 21 | break; 22 | } else { 23 | cout << "fail: Comando inválido" << endl; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /base/roupa/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | public class Shell { 4 | public static void main(String[] args) { 5 | // CRIE SEU OBJETO AQUI 6 | 7 | while (true) { 8 | var line = scanner.nextLine(); 9 | System.out.println("$" + line); 10 | 11 | var par = line.split(" "); 12 | var cmd = par[0]; 13 | 14 | if (cmd.equals("end")) { 15 | break; 16 | } 17 | else if (cmd.equals("size")) { // TENTE ATRIBUIR UM TAMANHO A ROUPA 18 | // String size = par[1]; 19 | } 20 | else if (cmd.equals("show")) { // MOSTRE A ROUPA 21 | } 22 | else { 23 | System.out.println("fail: Comando inválido"); 24 | } 25 | } 26 | } 27 | private static Scanner scanner = new Scanner(System.in); 28 | } 29 | -------------------------------------------------------------------------------- /base/roupa/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main(): void { 5 | // CRIE SEU OBJETO AQUI 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const args = line.split(" "); 12 | const cmd = args[0]; 13 | 14 | if (cmd == "size") { // TENTE ATRIBUIR UM TAMANHO A ROUPA 15 | // const size = args[1]; 16 | } else if (cmd == "show") { // MOSTRE A ROUPA 17 | } else if (cmd == "end") { 18 | break; 19 | } else { 20 | console.log("fail: Comando inválido"); 21 | } 22 | } 23 | } 24 | 25 | main(); 26 | -------------------------------------------------------------------------------- /base/roupa/.cache/q.tio: -------------------------------------------------------------------------------- 1 | >>>>>>>> INSERT 2 | show 3 | size F 4 | show 5 | size PP 6 | show 7 | end 8 | ======== EXPECT 9 | $show 10 | size: () 11 | $size F 12 | fail: Valor inválido, tente PP, P, M, G, GG ou XG 13 | $show 14 | size: () 15 | $size PP 16 | $show 17 | size: (PP) 18 | $end 19 | <<<<<<<< FINISH 20 | 21 | -------------------------------------------------------------------------------- /base/roupa/Readme.md: -------------------------------------------------------------------------------- 1 | # Roupa com testes 2 | 3 | 4 | [Intro](#intro) | [Shell](#shell) | [Draft](#draft) 5 | -- | -- | -- 6 | 7 | 8 | ![_](cover.jpg) 9 | 10 | ## Intro 11 | 12 | [![youtube icon](https://raw.githubusercontent.com/qxcodepoo/arcade/master/base/animal/../youguide.png)](https://youtu.be/27-PmhwFHYY?si=gAScW7a_CyxVNnTv) 13 | 14 | 15 | - Vamos implementar uma classe que controla os possíveis valores de tamanho para uma roupa. 16 | - Os tamanhos serão identificados como uma variável tipo texto, e os valores válidos são "PP", "P", "M" e "G", "GG" e "XG". 17 | - Faça o objeto roupa iniciar o tamanho como uma string vazia, para expressar que nenhum tamanho foi atribuído. 18 | - Crie um construtor que não recebe parâmetros e inicializa o tamanho como uma string vazia. 19 | - Crie o método setTamanho que apenas aceita os valores válidos de tamanho. 20 | - Caso o valor seja inválido, avise e dê uma mensagem de erro informando quais os valores permitidos. 21 | - Coloque o atributo tamanho como privado e crie um método getTamanho para acessá-lo e setTamanho para alterá-lo. 22 | 23 | ## Shell 24 | 25 | ```bash 26 | #TEST_CASE 27 | $show 28 | size: () 29 | 30 | $size F 31 | fail: Valor inválido, tente PP, P, M, G, GG ou XG 32 | 33 | $show 34 | size: () 35 | 36 | $size PP 37 | $show 38 | size: (PP) 39 | 40 | $end 41 | 42 | ``` 43 | 44 | ## Draft 45 | 46 | 47 | - cpp 48 | - [shell.cpp](.cache/draft/cpp/shell.cpp) 49 | - java 50 | - [Shell.java](.cache/draft/java/Shell.java) 51 | - ts 52 | - [shell.ts](.cache/draft/ts/shell.ts) 53 | -------------------------------------------------------------------------------- /base/roupa/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/roupa/cover.jpg -------------------------------------------------------------------------------- /base/salario/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/salario/cover.jpg -------------------------------------------------------------------------------- /base/salario/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/salario/diagrama.png -------------------------------------------------------------------------------- /base/salario/figura.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/salario/figura.png -------------------------------------------------------------------------------- /base/shapes/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | using namespace std; 8 | 9 | template 10 | auto map_join(const CONTAINER& c, FUNC f, const string& sep = ", ") { 11 | stringstream ss; 12 | for (auto it = c.begin(); it != c.end(); ++it) { 13 | ss << (it != c.begin() ? sep : ""); 14 | ss << f(*it); 15 | } 16 | return ss.str(); 17 | } 18 | 19 | int main() { 20 | // vector> shapes; 21 | while (true) { 22 | string line, cmd; 23 | getline(cin, line); 24 | cout << "$" << line << endl; 25 | 26 | stringstream ss(line); 27 | ss >> cmd; 28 | 29 | if (cmd == "end") { 30 | break; 31 | } 32 | else if (cmd == "show") { 33 | // Imprima as formas, uma por linha 34 | } 35 | else if (cmd == "circle") { 36 | // Crie um novo circulo e adicione ao vetor 37 | // double x{}, y{}, radius{}; 38 | // ss >> x >> y >> radius; 39 | } 40 | else if (cmd == "rect") { 41 | // Crie um retangulo e insira no vetor 42 | // double x1{}, y1{}, x2{}, y2{}; 43 | // ss >> x1 >> y1 >> x2 >> y2; 44 | } 45 | else if (cmd == "info") { 46 | // Imprima as informações de área e perímetro de todas as formas 47 | } 48 | else { 49 | cout << "fail: comando inválido" << '\n'; 50 | } 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /base/shapes/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | import java.util.stream.Collectors; 3 | import java.text.DecimalFormat; 4 | 5 | public class Shell { 6 | 7 | // public static String info(Shape shape) { 8 | // DecimalFormat df = new DecimalFormat("#.00"); 9 | // return String.format("%s: A=%s P=%s", shape.getName(), df.format(shape.getArea()), df.format(shape.getPerimeter())); 10 | // } 11 | public static void main(String[] a) { 12 | while (true) { 13 | var line = scanner.nextLine(); 14 | System.out.println("$" + line); 15 | 16 | var par = line.split(" "); 17 | var cmd = par[0]; 18 | 19 | if (cmd.equals("end")) { 20 | break; 21 | } 22 | else if (cmd.equals("show")) { 23 | } 24 | else if (cmd.equals("circle")) { 25 | // var x = Double.parseDouble(par[1]); 26 | // var y = Double.parseDouble(par[2]); 27 | // var radius = Double.parseDouble(par[3]); 28 | } 29 | else if (cmd.equals("rect")) { 30 | // var x1 = Double.parseDouble(par[1]); 31 | // var y1 = Double.parseDouble(par[2]); 32 | // var x2 = Double.parseDouble(par[3]); 33 | // var y2 = Double.parseDouble(par[4]); 34 | } 35 | else if (cmd.equals("info")) { 36 | } 37 | else { 38 | System.out.println("Comando inválido"); 39 | } 40 | } 41 | } 42 | 43 | private static Scanner scanner = new Scanner(System.in); 44 | } 45 | -------------------------------------------------------------------------------- /base/shapes/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | // const shapes: Shape[] = []; 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | else if (cmd == "show") { 18 | } 19 | else if (cmd == "circle") { 20 | // const x = parseFloat(par[1]); 21 | // const y = parseFloat(par[2]); 22 | // const r = parseFloat(par[3]); 23 | } 24 | else if (cmd == "rect") { 25 | // const x1 = parseFloat(par[1]); 26 | // const y1 = parseFloat(par[2]); 27 | // const x2 = parseFloat(par[3]); 28 | // const y2 = parseFloat(par[4]); 29 | } 30 | else if (cmd == "info") { 31 | } 32 | else { 33 | console.log("fail: invalid command"); 34 | } 35 | } 36 | } 37 | 38 | main(); 39 | -------------------------------------------------------------------------------- /base/shapes/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/shapes/cover.jpg -------------------------------------------------------------------------------- /base/shapes/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/shapes/diagrama.png -------------------------------------------------------------------------------- /base/shapes/diagrama.puml: -------------------------------------------------------------------------------- 1 | 2 | @startuml 3 | 4 | skinparam defaultFontName "Source Code Pro" 5 | skinparam dpi 150 6 | 7 | 8 | 9 | class Point2D { 10 | + x: double 11 | + y: double 12 | 13 | + Point2D(x: double, y: double) 14 | + toString(): string 15 | } 16 | 17 | class Calc { 18 | + {static} distance(a: Point2D, b: Point2D): double 19 | } 20 | 21 | interface Shape { 22 | ' getName(): string 23 | + getName(): string 24 | 25 | ' os métodos abaixo não são implementadas 26 | ' na classe Shape, apenas nas classes filhas 27 | 28 | ' retorna se o ponto está dentro da forma 29 | + inside(Point2D: point): boolean 30 | 31 | ' retorna a área da forma 32 | + getArea(): double 33 | 34 | ' retorna o perímetro da forma 35 | + getPerimeter(): double 36 | } 37 | 38 | class Circle { 39 | + center: Point2D 40 | + radius: double 41 | 42 | __ 43 | + Circle(center: Point2D, radius: double) 44 | + inside(point: Point2D): boolean 45 | + getArea(): double 46 | + getPerimeter(): double 47 | + toString(): string 48 | } 49 | 50 | class Rectangle { 51 | + P1: Point2D 52 | + P2: Point2D 53 | 54 | __ 55 | + Rectangle(P1: Point2D, P2: Point2D) 56 | 57 | + inside(point: Point2D): boolean 58 | + getArea(): double 59 | + getPerimeter(): double 60 | + toString(): string 61 | } 62 | 63 | 64 | Circle --|> Shape 65 | Rectangle --|> Shape 66 | Point2D --* Circle 67 | Point2D --* Rectangle 68 | @enduml -------------------------------------------------------------------------------- /base/tabuleiro/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | using namespace std; 5 | 6 | int main() { 7 | 8 | while(true) { 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << endl; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "end") { 17 | break; 18 | } else if (cmd == "init") { 19 | // int nPlayers, size; 20 | // ss >> nPlayers >> size; 21 | // board = Board(nPlayers, size); 22 | } else if (cmd == "addTrap") { 23 | // int pos; 24 | // ss >> pos; 25 | // board.addTrap(pos); 26 | } else if (cmd == "roll") { 27 | // int value; 28 | // ss >> value; 29 | } else if (cmd == "show") { 30 | } else { 31 | cout << "fail: command not found" << endl; 32 | } 33 | 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /base/tabuleiro/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | // } 4 | 5 | public class Shell { 6 | private static Scanner scanner = new Scanner(System.in); 7 | public static void main(String[] args) { 8 | 9 | while (true) { 10 | String line = scanner.nextLine(); 11 | System.out.println("$" + line); 12 | 13 | var par = line.split(" "); 14 | var cmd = par[0]; 15 | 16 | 17 | if (cmd.equals("end")) { 18 | break; 19 | } 20 | else if (cmd.equals("init")) { 21 | // var nPlayers = Integer.parseInt(par[1]); 22 | // var size = Integer.parseInt(par[2]); 23 | } 24 | else if (cmd.equals("addTrap")) { 25 | // var pos = Integer.parseInt(par[1]); 26 | } 27 | else if (cmd.equals("roll")) { 28 | // var value = Integer.parseInt(par[1]); 29 | } 30 | else if (cmd.equals("show")) { 31 | } 32 | else { 33 | System.out.println("invalid command"); 34 | } 35 | } 36 | scanner.close(); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /base/tabuleiro/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | 5 | function main() { 6 | 7 | while (true) { 8 | let line = input(); 9 | console.log("$" + line); 10 | 11 | let args = line.split(" "); 12 | let cmd = args[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | else if (cmd == "init") { 18 | // let nPlayers = parseInt(args[1]); 19 | // let size = parseInt(args[2]); 20 | } 21 | else if (cmd == "addTrap") { 22 | // let pos = parseInt(args[1]); 23 | } 24 | else if (cmd == "roll") { 25 | // let value = parseInt(args[1]); 26 | } 27 | else if (cmd == "show") { 28 | } 29 | else { 30 | console.log("Comando inválido"); 31 | } 32 | } 33 | } 34 | 35 | main() 36 | -------------------------------------------------------------------------------- /base/tabuleiro/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tabuleiro/cover.jpg -------------------------------------------------------------------------------- /base/tabuleiro/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tabuleiro/diagrama.png -------------------------------------------------------------------------------- /base/tabuleiro/diagrama.puml: -------------------------------------------------------------------------------- 1 | 2 | @startuml 3 | 4 | skinparam defaultFontName "Source Code Pro" 5 | skinparam dpi 150 6 | left to right direction 7 | class Player { 8 | - label: number 9 | - pos : number 10 | - free : boolean 11 | __ 12 | + Player(label: number) 13 | + isFree() : boolean 14 | + toString() : string 15 | __ 16 | + getLabel(): number 17 | + getPos() : number 18 | + setPos(pos: number) 19 | + setFree(free : boolean): void 20 | } 21 | 22 | class Board { 23 | - trapList : Array 24 | - players : Array 25 | - running : boolean 26 | - boardSize: number 27 | __ 28 | + Board(nPlayers: number, boardSize: number) 29 | + toString(): string 30 | __ 31 | + addTrap (pos : number): void 32 | + rollDice(value: number): void 33 | } 34 | 35 | Board "1" *-- "2..*" Player : > has 36 | @enduml 37 | -------------------------------------------------------------------------------- /base/tabuleiro/tabuleiro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tabuleiro/tabuleiro.png -------------------------------------------------------------------------------- /base/tamagotchi/.cache/draft/cpp/shell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | using namespace std; 5 | 6 | int main() { 7 | 8 | while (true) { 9 | string line, cmd; 10 | getline(cin, line); 11 | cout << "$" << line << endl; 12 | 13 | stringstream ss(line); 14 | ss >> cmd; 15 | 16 | if (cmd == "end") { 17 | break; 18 | } 19 | // else if (cmd == "init") { 20 | // // CRIE UM NOVO JOGO COM UM NOVO PET 21 | // int energy, clean; 22 | // ss >> energy >> clean; 23 | // } 24 | // else if (cmd == "show") { 25 | // } 26 | // else if (cmd == "play") { 27 | // } 28 | // else if (cmd == "shower") { 29 | // } 30 | // else if (cmd == "eat") { 31 | // } 32 | // else if (cmd == "sleep") { 33 | // } 34 | else { 35 | cout << "fail: comando invalido" << endl; 36 | } 37 | } 38 | return 0; 39 | } 40 | -------------------------------------------------------------------------------- /base/tamagotchi/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | public class Shell { 4 | public static void main(String[] a) { 5 | 6 | while (true) { 7 | var line = scanner.nextLine(); 8 | System.out.println("$" + line); 9 | 10 | var par = line.split(" "); 11 | var cmd = par[0]; 12 | 13 | if (cmd.equals("end")) { 14 | break; 15 | } 16 | // else if (cmd.equals("init")) { 17 | // // CRIE UM NOVO JOGO COM UM NOVO PET 18 | // var energy = Integer.parseInt(par[1]); 19 | // var clean = Integer.parseInt(par[2]); 20 | // } 21 | // else if (cmd.equals("show")) { 22 | // } 23 | // else if (cmd.equals("play")) { 24 | // } 25 | // else if (cmd.equals("shower")) { 26 | // } 27 | // else if (cmd.equals("sleep")) { 28 | // } 29 | else { 30 | System.out.println("fail: comando invalido"); 31 | } 32 | } 33 | } 34 | 35 | private static Scanner scanner = new Scanner(System.in); 36 | } 37 | -------------------------------------------------------------------------------- /base/tamagotchi/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export {}; 3 | 4 | function main() { 5 | // CRIE SEU JOGO AQUI COM UM PET ZERADO 6 | 7 | while (true) { 8 | const line = input(); 9 | console.log("$" + line); 10 | 11 | const par = line.split(" "); 12 | const cmd = par[0]; 13 | 14 | if (cmd == "end") { 15 | break; 16 | } 17 | // else if (cmd == "init") { 18 | // // CRIE UM NOVO JOGO COM UM NOVO PET 19 | // const energy = parseInt(par[1]); 20 | // const clean = parseInt(par[2]); 21 | // } 22 | // else if (cmd == "play") { 23 | // } 24 | // else if (cmd == "shower") { 25 | // } 26 | // else if (cmd == "sleep") { 27 | // } 28 | // else if (cmd == "show") { 29 | // } 30 | else { 31 | console.log("fail: comando invalido"); 32 | } 33 | } 34 | } 35 | 36 | main(); 37 | -------------------------------------------------------------------------------- /base/tamagotchi/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tamagotchi/cover.jpg -------------------------------------------------------------------------------- /base/tamagotchi/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tamagotchi/diagrama.png -------------------------------------------------------------------------------- /base/tamagotchi/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | class Pet { 9 | - energyMax: number 10 | - cleanMax : number 11 | - energy : number 12 | - clean : number 13 | - age : number 14 | - alive : boolean 15 | __ 16 | + Pet(energy: number, clean: number) 17 | + isAlive(): boolean 18 | + toString(): string 19 | __ 20 | + setEnergy(value: number): void 21 | + setClean(value: number) : void 22 | + setAge(value: number) : void 23 | __ 24 | + getClean() : number 25 | + getCleanMax() : number 26 | + getEnergy() : number 27 | + getEnergyMax(): number 28 | + getAge() : number 29 | } 30 | 31 | class Game { 32 | - pet: Pet 33 | __ 34 | + Game(pet: Pet) 35 | + toString() : string 36 | __ 37 | + play() : void 38 | + shower(): void 39 | + sleep() : void 40 | } 41 | 42 | Game "1" *-- "1" Pet 43 | 44 | @enduml 45 | -------------------------------------------------------------------------------- /base/tarifas/.cache/draft/java/Shell.java: -------------------------------------------------------------------------------- 1 | import java.util.ArrayList; 2 | import java.util.List; 3 | import java.util.Scanner; 4 | import java.util.stream.Collectors; 5 | 6 | 7 | public class Shell{ 8 | public static void main(String[] _args) { 9 | while (true) { 10 | var line = scanner.nextLine(); 11 | var args = line.split(" "); 12 | var cmd = args[0]; 13 | System.out.println("$" + line); 14 | 15 | if (cmd.equals("end")) { 16 | break; 17 | } else if (cmd.equals("show")) { 18 | } else if (cmd.equals("init")) { 19 | // var id = Integer.parseInt(args[1]); 20 | } else if (cmd.equals("withdraw")) { 21 | // var value = Integer.parseInt(args[1]); 22 | } else if (cmd.equals("fee")) { 23 | // var value = Integer.parseInt(args[1]); 24 | } else if (cmd.equals("deposit")) { 25 | // var value = Integer.parseInt(args[1]); 26 | } else if (cmd.equals("reverse")) { 27 | // for (int i = 1; i < args.length; i++) { 28 | // var index = Integer.parseInt(args[i]); 29 | // } 30 | } else if (cmd.equals("extract")) { 31 | // var qtdOp = Integer.parseInt(args[1]); 32 | } 33 | else { 34 | System.out.println("fail: comando invalido"); 35 | } 36 | } 37 | } 38 | 39 | static Scanner scanner = new Scanner(System.in); 40 | } 41 | -------------------------------------------------------------------------------- /base/tarifas/.cache/draft/ts/shell.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; // MODO_TESTE 2 | export { }; 3 | 4 | function main() { 5 | 6 | while (true) { 7 | let line = input(); 8 | console.log("$" + line); 9 | let args = line.split(" "); 10 | 11 | if (args[0] == "end") { 12 | break; 13 | } else if (args[0] == "init") { 14 | const id = parseInt(args[1]); 15 | } else if (args[0] == "show") { 16 | } else if (args[0] == "withdraw") { 17 | const value = parseInt(args[1]); 18 | } else if (args[0] == "fee") { 19 | const value = parseInt(args[1]); 20 | } else if (args[0] == "reverse") { 21 | for (let i = 1; i < args.length; i++) { 22 | } 23 | } else if (args[0] == "deposit") { 24 | const value = parseInt(args[1]); 25 | } else if (args[0] == "extract") { 26 | const qtdOp = parseInt(args[1]); 27 | } else { 28 | console.log("fail: invalid command"); 29 | } 30 | } 31 | } 32 | 33 | main(); 34 | -------------------------------------------------------------------------------- /base/tarifas/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tarifas/cover.jpg -------------------------------------------------------------------------------- /base/tarifas/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/tarifas/diagrama.png -------------------------------------------------------------------------------- /base/toalha/.cache/q.tio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/toalha/.cache/q.tio -------------------------------------------------------------------------------- /base/toalha/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/toalha/cover.jpg -------------------------------------------------------------------------------- /base/toalha/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/toalha/diagrama.png -------------------------------------------------------------------------------- /base/toalha/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Towel { 7 | - color: String 8 | - size: String 9 | - wetness: number 10 | __ 11 | + constructor(color: string, size: string) 12 | + dry(amount: number): void 13 | + wringOut(): void 14 | + getMaxWetness(): number 15 | + isDry(): boolean 16 | + toString(): string 17 | + show(): void 18 | } 19 | @enduml 20 | -------------------------------------------------------------------------------- /base/trem/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/trem/cover.jpg -------------------------------------------------------------------------------- /base/trem/diagrama.asta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/trem/diagrama.asta -------------------------------------------------------------------------------- /base/trem/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/trem/diagrama.png -------------------------------------------------------------------------------- /base/twitter/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/twitter/cover.jpg -------------------------------------------------------------------------------- /base/twitter/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/twitter/diagrama.png -------------------------------------------------------------------------------- /base/twitter/old/Makefile: -------------------------------------------------------------------------------- 1 | java: 2 | javac Controller.java 3 | 4 | run: java 5 | th run "java Controller" link.md -v -------------------------------------------------------------------------------- /base/twitter/old/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/twitter/old/diagrama.png -------------------------------------------------------------------------------- /base/twitter/parsediag.py: -------------------------------------------------------------------------------- 1 | import os 2 | from typing import List, Dict, Tuple 3 | 4 | lines = open("solver.cpp").read().split("\n") 5 | output: List[str] = [] 6 | 7 | output.append("@startuml") 8 | output.append('skinparam defaultFontName "JetBrains Mono Medium"') 9 | 10 | for line in lines: 11 | if line.startswith(" // +") or line.startswith(" // -") or line.startswith(" // ~") or line.startswith(" // __"): 12 | output.append(line.replace(" // ", " ")) 13 | output.append(" '") 14 | elif line.startswith(" // "): 15 | output.append(line.replace(" // ", " ")) 16 | elif line.startswith("//!"): 17 | continue 18 | elif line.startswith("// class"): 19 | output.append(line.replace("// ", "")) 20 | output.append(" '") 21 | elif line.startswith("// "): 22 | output.append(line.replace("// ", "")) 23 | elif line.startswith("};"): 24 | output.append("}") 25 | output.append("") 26 | 27 | output.append("@enduml") 28 | 29 | print("\n".join(output)) -------------------------------------------------------------------------------- /base/twitter/player.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/twitter/player.png -------------------------------------------------------------------------------- /base/vetores/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/vetores/cover.jpg -------------------------------------------------------------------------------- /base/whatsapp/_controller.md: -------------------------------------------------------------------------------- 1 | # Empty #empty 2 | 3 | -------------------------------------------------------------------------------- /base/whatsapp/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/whatsapp/cover.jpg -------------------------------------------------------------------------------- /base/whatsapp/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/whatsapp/diagrama.png -------------------------------------------------------------------------------- /base/whatsapp/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | class User { 4 | - username: string 5 | - chats: map 6 | __cadastro__ 7 | - addChat(chat: Chat*): void 8 | __ 9 | + User(username: string) 10 | + toString(): string 11 | __ 12 | + getChats(): map 13 | + getUsername(): string 14 | __ 15 | friend class Service; 16 | } 17 | 18 | class Chat { 19 | - chatId: int 20 | - chatName: string 21 | - users: map 22 | __cadastro__ 23 | - addUser(user: User*) 24 | __ 25 | + Chat(chatId: int, chatName: string) 26 | + getUsers(): const map& 27 | + toString(): string 28 | __ 29 | + getChatId(): int 30 | + getChatName(): string 31 | __ 32 | friend class Service; 33 | } 34 | 35 | class Service { 36 | + map> users; 37 | + map> chats; 38 | - int nextChatId {0}; 39 | __addUser__ 40 | + Service() 41 | + addUser(username: string) 42 | + toString(): string 43 | __create__ 44 | + createChat(username: string , chatName: string): void 45 | + inviteToChat(owner: string, invitee: string, chatId: int): void 46 | + getUsers(): const map>& 47 | + getChats(): const map>& 48 | } 49 | 50 | 51 | Inbox --> "-user" User 52 | Inbox --> "-msgs" Msg 53 | User --> "-notify" Notify 54 | @enduml -------------------------------------------------------------------------------- /base/youguide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/youguide.png -------------------------------------------------------------------------------- /base/yousolver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/base/yousolver.png -------------------------------------------------------------------------------- /wiki/git/acesso.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/acesso.png -------------------------------------------------------------------------------- /wiki/git/alu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/alu.png -------------------------------------------------------------------------------- /wiki/git/arvores.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/arvores.png -------------------------------------------------------------------------------- /wiki/git/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/cover.jpg -------------------------------------------------------------------------------- /wiki/git/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/diagrama.png -------------------------------------------------------------------------------- /wiki/git/doc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/doc.png -------------------------------------------------------------------------------- /wiki/git/github.md: -------------------------------------------------------------------------------- 1 | # Habilitando a conta Educational no Github 2 | 3 | - Acesse o [LINK](https://education.github.com/discount_requests/application). 4 | - Escolha a opção de Estudante 5 | 6 | ![_](acesso.png) 7 | 8 | - Cadastre o email @alu.ufc.br e escolha a Universidade Federal do Ceará 9 | 10 | ![_](alu.png) 11 | 12 | - Na tela seguinte, envie um **FOTO** ou **PRINT** de um documento com **DATA** que comprove seu vínculo com a universidade. Pode ser o comprovante de matrícula. Para tirar o **PRINT**, gere o pdf e converta a página com os dados para png. No linux, o comando para conversão é 13 | 14 | ```bash 15 | magick -density 300 input.pdf -quality 100 output.png 16 | ``` 17 | 18 | - Após fazer upload, ele vai mostrar se o documento foi rejeitado por não ter a resolução mínima, ou foi aceito. No print abaixo, o documento foi aceito dentro da resolução mínima. 19 | 20 | ![_](doc.png) 21 | 22 | - A resposta da solicitação não é imediata. A solicitação leva alguns dias para ser processada. No próprio [LINK](https://education.github.com/discount_requests/application) de aplicação, será mostrado o status da sua solicitação e se ele for expirado. Se você ainda for aluno quando o link expirar, basta refazer a socitação reenviando um documento comprobatório. 23 | 24 | ![_](request.png) 25 | 26 | ## Habilitando o copilot na sua conta do Github Education 27 | 28 | Acesse a página do [copilot](https://github.com/github-copilot/free_signup). 29 | 30 | Escolha quais as autoriações você deseja dar ao copilot e clique e salve as configurações. 31 | 32 | Instale o copilot no seu vscode e pronto. Você já pode começar a usar o copilot. 33 | -------------------------------------------------------------------------------- /wiki/git/local_ssh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/local_ssh.png -------------------------------------------------------------------------------- /wiki/git/request.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/git/request.png -------------------------------------------------------------------------------- /wiki/git/wsl-configure-ts.sh: -------------------------------------------------------------------------------- 1 | BLUE='\033[0;34m' 2 | GREEN='\033[0;32m' 3 | NC='\033[0m' 4 | 5 | echo -n "${BLUE}Instalando esbuild... " 6 | sudo apt install -y esbuild >> /dev/null 2>&1 7 | 8 | echo -n "Feito!\nInstalando nodejs... " 9 | sudo apt install -y nodejs >> /dev/null 2>&1 10 | 11 | echo "Feito!\n${GREEN} Extensão para TS instalado com sucesso!${NC}" -------------------------------------------------------------------------------- /wiki/git/wsl-configure.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | NAME=$1 4 | EMAIL=$2 5 | DIR=~/.local/bin 6 | BLUE='\033[0;34m' 7 | GREEN='\033[0;32m' 8 | RED='\033[0;31m' 9 | NC='\033[0m' 10 | 11 | sudo -v 12 | 13 | echo -n "${BLUE}Atualizando repositórios e configurando o git... " 14 | sudo apt update >> /dev/null 2>&1 15 | git config --global user.email "${EMAIL}" 16 | git config --global user.name "${NAME}" 17 | 18 | echo -n "Feito!\nInstalando pipx... " 19 | sudo apt install -y pipx >> /dev/null 2>&1 20 | 21 | echo -n "Feito!\nInstalando TKO... " 22 | pipx install tko >> /dev/null 2>&1 23 | 24 | echo -n "Feito!\nAdicionando ${DIR} ao PATH... " 25 | echo "export PATH=\"$DIR:\$PATH\"" >> ~/.bashrc 26 | 27 | # echo -n "Feito!\nClonando repositório ${URL}... ${NC}" 28 | 29 | # # Extrair o nome do repositório da URL 30 | # REPO_NAME=$(basename -s .git "$URL") 31 | 32 | # # Clonar o repositório 33 | # cd ~/ 34 | # git clone "$URL" 35 | 36 | # echo -n "${BLUE}Feito!\nIniciando POO em ~/${REPO_NAME}..." 37 | 38 | # cd ~/$REPO_NAME 39 | 40 | # tko start poo >> /dev/null 2>&1 41 | 42 | echo "Feito!\nReiniciando terminal..." 43 | 44 | bash 45 | 46 | echo "Feito!\n${GREEN}WSL Configurado com sucesso!${NC}" -------------------------------------------------------------------------------- /wiki/git/wsl.md: -------------------------------------------------------------------------------- 1 | # Script para instalação do tko e dependencias no WSL 2 | 3 | WSL significa Windows Subsystem for Linux, é um ambiente de execução de aplicativos Linux no Windows. 4 | 5 | ## Instalando o WSL 6 | 7 | No Command Prompt (cmd) rode o seguinte comando: 8 | 9 | ```bash 10 | wsl --install 11 | # Aperte sim nos pop-ups que aparecerem; após finalizado, reinicie o computador. 12 | ``` 13 | 14 | Após reiniciar, uma janela WSL abrirá automaticamente e a instalação do Ubuntu irá começar. Quando requisitado, digite o seu UNIX username, ou seja, nome de usuário, e a sua senha. Não é obrigatório serem os mesmos da sua conta no Windows. 15 | OBS: O campo de senha ficará em branco. É um comportamento normal do Ubuntu. 16 | 17 | ## Após instalar 18 | 19 | Para configurar o WSL instalando o TKO e as dependências necessárias, rode o seguinte comando no terminal do Ubuntu substituindo nome e email pelos seus dados: 20 | 21 | ```bash 22 | sh -c "$(curl -fsSL https://raw.githubusercontent.com/qxcodepoo/arcade/refs/heads/master/wiki/git/wsl-configure.sh)" 23 | ``` 24 | 25 | Caso você precise das dependências de TypeScript, rode este comando: 26 | 27 | ```bash 28 | sh -c "$(curl -fsSL https://raw.githubusercontent.com/qxcodepoo/arcade/refs/heads/master/wiki/git/wsl-configure-ts.sh)" 29 | ``` 30 | 31 | ## Antes de começar a editar 32 | 33 | Abra o VSCode e instale a extensão `WSL` do Windows, com aproximadamente 30 milhões de downloads. 34 | 35 | ## Usando o VSCode 36 | 37 | Abra o terminal do Ubunto, navegue até onde está seu repositório, digite `code ` para abrir o vscode na pasta. 38 | -------------------------------------------------------------------------------- /wiki/images/alien1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien1.jpg -------------------------------------------------------------------------------- /wiki/images/alien2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien2.jpg -------------------------------------------------------------------------------- /wiki/images/alien3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien3.jpg -------------------------------------------------------------------------------- /wiki/images/alien4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien4.jpg -------------------------------------------------------------------------------- /wiki/images/alien5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien5.jpg -------------------------------------------------------------------------------- /wiki/images/alien6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien6.jpg -------------------------------------------------------------------------------- /wiki/images/alien7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien7.jpg -------------------------------------------------------------------------------- /wiki/images/alien8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien8.jpg -------------------------------------------------------------------------------- /wiki/images/alien9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/alien9.jpg -------------------------------------------------------------------------------- /wiki/images/explicacao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/explicacao.png -------------------------------------------------------------------------------- /wiki/images/resolucao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/images/resolucao.png -------------------------------------------------------------------------------- /wiki/instalacao/README.md: -------------------------------------------------------------------------------- 1 | # Instalação C++ e TS 2 | 3 | ![_](cover.jpg) 4 | 5 | - [cpp](cpp.md) 6 | - [ts](ts.md) 7 | -------------------------------------------------------------------------------- /wiki/instalacao/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/instalacao/cover.jpg -------------------------------------------------------------------------------- /wiki/instalacao/cpp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/instalacao/cpp.jpg -------------------------------------------------------------------------------- /wiki/instalacao/cpp.md: -------------------------------------------------------------------------------- 1 | # Instalação C++ e TS 2 | 3 | ![cover](cpp.jpg) 4 | 5 | ## Caminho mais fácil 6 | 7 | Instale o Linux Subsystem for windows 10. 8 | [Tutorial](https://www.ssl.com/pt/como/ativar-o-subsistema-linux-instalar-o-ubuntu-windows-10/) 9 | 10 | ## Caminho não tão fácil 11 | 12 | Instale o [MinGW](https://www.geeksforgeeks.org/complete-guide-to-install-c17-in-windows/) 13 | 14 | Verifique se a versão do gcc é a pelo menos a 9.2 para ter acesso ao C++17 utilizando o comando `gcc --version` no terminal. 15 | 16 | ## IDES sugeridas 17 | 18 | - Vscode (mais rápido, leve e personalizável) 19 | - QtCreator (mais completo, com recursos avançados, porém mais pesado) 20 | -------------------------------------------------------------------------------- /wiki/instalacao/ts.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/instalacao/ts.jpg -------------------------------------------------------------------------------- /wiki/main/Main.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | import java.util.ArrayList; 3 | 4 | public class Main { 5 | public static void main(String[] a) { 6 | ArrayList vet = new ArrayList<>(); 7 | 8 | while (true) { 9 | var line = scanner.nextLine(); 10 | System.out.println("$" + line); 11 | var args = line.split(" "); 12 | var cmd = args[0]; 13 | 14 | if (cmd.equals("end")) { 15 | break; 16 | } else if (cmd.equals("push")) { 17 | for (int i = 1; i < args.length; i++) { 18 | vet.add(args[i]); 19 | } 20 | } else if (cmd.equals("show")) { 21 | System.out.println("[" + String.join(", ", vet) + "]"); 22 | } else if (cmd.equals("erase")) { 23 | var pos = Integer.parseInt(args[1]); 24 | vet.remove(pos); 25 | } else if (cmd.equals("media")) { 26 | double soma = 0; 27 | for (int i = 0; i < vet.size(); i++) { 28 | soma += Double.parseDouble(vet.get(i)); 29 | } 30 | System.out.println(String.format("%.2f", soma / vet.size())); 31 | } else { 32 | System.out.println("fail: comando invalido"); 33 | } 34 | } 35 | } 36 | 37 | private static Scanner scanner = new Scanner(System.in); 38 | } 39 | -------------------------------------------------------------------------------- /wiki/main/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | tk run Readme.md main.cpp 3 | tk run Readme.md main.ts 4 | tk run Readme.md Main.java 5 | -------------------------------------------------------------------------------- /wiki/main/README.md: -------------------------------------------------------------------------------- 1 | # Criando a Main 2 | 3 | ![_](cover.jpg) 4 | 5 | - Em c++: 6 | - Código: [main.cpp](main.cpp) 7 | 8 | - Em java: 9 | - Código: [Main.java](Main.java) 10 | 11 | - Em typescript: 12 | - Código: [main.ts](main.ts) 13 | 14 | ## Guide 15 | 16 | O modelo básico da main é: 17 | 18 | ```py 19 | def main(): 20 | 21 | coisa = Coisa(); // Elemento a ser manipulado 22 | 23 | while True: 24 | line = input(); // lê a linha 25 | args = line.split(" "); // quebra em array de palavras 26 | cmd = args[0] // o comando é a primeira palavra 27 | print("$" + line); // mostra a linha lida 28 | 29 | if cmd == "end": 30 | break; 31 | elif cmd == "nome do comando": 32 | valor = int(args[1]) 33 | nome = args[2] 34 | coisa.funcaoTal(valor, nome) 35 | 36 | elif cmd == "outro comando": 37 | //outra invocacao 38 | else: 39 | write("fail: comando invalido"); 40 | ``` 41 | 42 | ## Shell 43 | 44 | ```s 45 | #TEST_CASE teste simples 46 | $show 47 | [] 48 | 49 | #TEST_CASE inserindo vários números em lote 50 | $push 1 4 3 2 51 | $show 52 | [1, 4, 3, 2] 53 | 54 | #TEST_CASE apagando por índice 55 | $erase 1 56 | $show 57 | [1, 3, 2] 58 | 59 | #TEST_CASE calculando a media 60 | $media 61 | 2.00 62 | 63 | $end 64 | ``` 65 | -------------------------------------------------------------------------------- /wiki/main/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/main/cover.jpg -------------------------------------------------------------------------------- /wiki/main/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | using namespace std; 6 | 7 | template 8 | string join(const CONTAINER& c, FUNC f, const string& delim) { 9 | stringstream ss; 10 | for (auto it = c.begin(); it != c.end(); ++it) { 11 | ss << (it == c.begin() ? "" : delim) << f(*it); 12 | } 13 | return ss.str(); 14 | } 15 | 16 | int main() 17 | { 18 | std::vector vet; 19 | while (true) 20 | { 21 | string line, cmd; 22 | getline(cin, line); 23 | cout << "$" << line << '\n'; 24 | 25 | stringstream ss(line); 26 | ss >> cmd; 27 | 28 | if (cmd == "end") 29 | { 30 | break; 31 | } 32 | else if (cmd == "push") 33 | { 34 | int value{}; 35 | while (ss >> value) 36 | { 37 | vet.push_back(value); 38 | } 39 | } 40 | else if (cmd == "show") 41 | { 42 | cout << "[" + join(vet, [](auto x){return x;}, ", ") + "]" << '\n'; 43 | } 44 | else if (cmd == "erase") 45 | { 46 | int index{}; 47 | ss >> index; 48 | vet.erase(vet.begin() + index); 49 | } 50 | else if (cmd == "media") 51 | { 52 | double sum = 0; 53 | for (auto item : vet) 54 | { 55 | sum += item; 56 | } 57 | cout << fixed << setprecision(2) << sum / vet.size() << '\n'; 58 | } 59 | else 60 | { 61 | cout << "fail: invalid command" << '\n'; 62 | } 63 | } 64 | } -------------------------------------------------------------------------------- /wiki/main/main.ts: -------------------------------------------------------------------------------- 1 | const input = () => ""; 2 | export { }; 3 | 4 | function main() { 5 | let vet = new Array(); 6 | 7 | while (true) { 8 | console.log("$", ""); 9 | let line = input(); 10 | console.log(line); 11 | let args = line.split(" "); 12 | 13 | if (args[0] === "end") { 14 | break; 15 | } 16 | else if (args[0] === "push") { 17 | for (let i = 1; i < args.length; i++) { 18 | vet.push(args[i]); 19 | } 20 | } 21 | else if (args[0] === "show") { 22 | console.log("[" + vet.join(", ") + "]"); 23 | } 24 | else if (args[0] === "erase") { 25 | vet.splice(+args[1], 1); 26 | } 27 | else if (args[0] === "media") { 28 | let soma = 0; 29 | for (let i = 0; i < vet.length; i++) { 30 | soma += +vet[i]; 31 | } 32 | // imprime a soma com duas casas decimais 33 | console.log((soma / vet.length).toFixed(2)); 34 | } 35 | else { 36 | console.log("fail: comando invalido"); 37 | } 38 | } 39 | } 40 | 41 | main(); -------------------------------------------------------------------------------- /wiki/memoria/README.md: -------------------------------------------------------------------------------- 1 | # Pesquisa sobre alocação de memória 2 | 3 | Escolha duas linguagens além da sua linguagem de estudo e tente comparar como funciona o processo de alocação e desalocação de memória. 4 | 5 | Sugestões: java, c++, python, javascript, rust 6 | 7 | Pesquise sobre: 8 | 9 | - Alocação é explicita ou implícita? SEMPRE new pra criar novos objetos? 10 | - Permite desalocação manual ou é possível forçar a coleta de lixo? 11 | - Se não tiver coletor de lixo, como funciona a desalocação? 12 | - Faz contagem de referências para saber a hora de liberar as variáveis? 13 | - Como funcionam vazamentos de memória nessas linguagens? Ou ela não tem vazamento de memória? 14 | -------------------------------------------------------------------------------- /wiki/memoria/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/memoria/cover.jpg -------------------------------------------------------------------------------- /wiki/relacionamento/.comments/cover.jpg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | UML - Unified Modeling Language. acronym business concept. vector illustration concept with keywords and icons. lettering illustration with icons for web banner, flyer, landing page 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /wiki/relacionamento/Aeroporto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/Aeroporto.png -------------------------------------------------------------------------------- /wiki/relacionamento/Aeroporto.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | Aeroporto "1" -- "0..*" Voo : é origem 7 | Voo "0..*" -- "1" Aeroporto : é destino 8 | 9 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/atua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/atua.png -------------------------------------------------------------------------------- /wiki/relacionamento/atua.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Ator "1..*" -- "1..*" Filme 9 | (Ator, Filme) .. Atua 10 | 11 | class Ator { 12 | - nomeAtor : String 13 | } 14 | 15 | class Filme { 16 | - tituloFilme : String 17 | - genero : Time 18 | } 19 | 20 | class Atua { 21 | - papelAtor : String 22 | } 23 | 24 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/cliente.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/cliente.png -------------------------------------------------------------------------------- /wiki/relacionamento/cliente.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | left to right direction 4 | 5 | class Cliente { 6 | +nome: String 7 | +endereco: String 8 | +telefone: String 9 | +fazerPedido(): void 10 | } 11 | 12 | class Pedido { 13 | +data: Date 14 | +status: String 15 | +total: double 16 | +adicionarItem(item: Item): void 17 | +removerItem(item: Item): void 18 | } 19 | 20 | class Item { 21 | +quantidade: int 22 | +subtotal: double 23 | +calcularSubtotal(): double 24 | } 25 | 26 | class Produto { 27 | +nome: String 28 | +preco: double 29 | +descricao: String 30 | } 31 | 32 | Cliente "1" -- "0..*" Pedido 33 | Pedido "1" -- "1..*" Item 34 | Item "1" -- "1" Produto 35 | @enduml 36 | -------------------------------------------------------------------------------- /wiki/relacionamento/conectividade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/conectividade.png -------------------------------------------------------------------------------- /wiki/relacionamento/conserto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/conserto.png -------------------------------------------------------------------------------- /wiki/relacionamento/conserto.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | Funcionario "*" -right- "*" Automovel : conserta 7 | Funcionario "*" -down- "*" Especialidade : é especialista 8 | 9 | (Funcionario, Automovel) .. Conserto 10 | (Funcionario, Especialidade) .. Conserto 11 | 12 | class Conserto { 13 | - conserto : String 14 | - totalHoras : double 15 | } 16 | 17 | class Funcionario { 18 | - matricula : int 19 | - nome : String 20 | - Especialidade : Especialidade[0..*] 21 | } 22 | 23 | class Automovel { 24 | - placa : String 25 | - ano : int 26 | } 27 | 28 | class Especialidade { 29 | nome : String 30 | remuneracaoPorHora : double 31 | } 32 | 33 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/conta.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/conta.png -------------------------------------------------------------------------------- /wiki/relacionamento/conta.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa "1..*" o-- "1..*" ContaComum : possui 9 | 10 | class Pessoa { 11 | - nome : String 12 | - endereco : String 13 | - cep : long 14 | - telefone : String 15 | - renda : double 16 | - conta : ContaComum[1..*] 17 | } 18 | 19 | class ContaComum { 20 | - numero : long 21 | - aberturaConta : Data 22 | - fechamentoConta : Date[0..1] 23 | - saldo : double 24 | } 25 | 26 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/contrata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/contrata.png -------------------------------------------------------------------------------- /wiki/relacionamento/contrata.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | Organizacao "contratante" -- "contratado" Empregado : contrata 7 | 8 | class Organizacao { 9 | - contratados : Empregado[0..*] 10 | } 11 | 12 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/cover.jpg -------------------------------------------------------------------------------- /wiki/relacionamento/departamento.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/departamento.png -------------------------------------------------------------------------------- /wiki/relacionamento/departamento.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Departamento "0-1" o-- "0..*" Professores : tem 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/dependente.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/dependente.png -------------------------------------------------------------------------------- /wiki/relacionamento/dependente.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Socio "1" -- "0..*" Dependente : possui 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/dependente2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/dependente2.png -------------------------------------------------------------------------------- /wiki/relacionamento/dependente2.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Socio "1" --> "0..*" Dependente : possui 9 | 10 | class Socio { 11 | - nome : String 12 | - dependente : Dependentes[0..*] 13 | } 14 | 15 | class Dependente { 16 | - nome : String 17 | } 18 | 19 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/dependente3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/dependente3.png -------------------------------------------------------------------------------- /wiki/relacionamento/dependente3.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Socio "1" <--> "0..*" Dependente : possui 9 | 10 | class Socio { 11 | - nome : String 12 | - dependente : Dependentes[0..*] 13 | } 14 | 15 | class Dependente { 16 | - nome : String 17 | - socio : Socio 18 | } 19 | 20 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/endereco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/endereco.png -------------------------------------------------------------------------------- /wiki/relacionamento/endereco.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa "0..*" --> "1..1" Endereco : tem um 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/endereco2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/endereco2.png -------------------------------------------------------------------------------- /wiki/relacionamento/endereco2.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa "0..*" --> "1..1" Endereco : tem um 9 | 10 | class Pessoa { 11 | - nome : String 12 | - endereco : Endereco 13 | } 14 | 15 | class Endereco { 16 | - rua : String 17 | - cidade : String 18 | - CEP : String 19 | } 20 | 21 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/equipes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/equipes.png -------------------------------------------------------------------------------- /wiki/relacionamento/equipes.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | left to right direction 4 | 5 | class AssociacaoEsportiva { 6 | +nome: String 7 | +adicionarEquipe(equipe: Equipe): void 8 | } 9 | 10 | class Equipe { 11 | +nome: String 12 | +adicionarJogador(jogador: Jogador): void 13 | } 14 | 15 | class Jogador { 16 | +nome: String 17 | } 18 | 19 | AssociacaoEsportiva o-- "0..*" Equipe 20 | Equipe "1" o-- "0..*" Jogador 21 | Jogador "0..*" -- "0..*" Equipe 22 | @enduml 23 | -------------------------------------------------------------------------------- /wiki/relacionamento/escreve: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/escreve -------------------------------------------------------------------------------- /wiki/relacionamento/escreve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/escreve.png -------------------------------------------------------------------------------- /wiki/relacionamento/escreve.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa -- Livro : escreve 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/escreve2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/escreve2.png -------------------------------------------------------------------------------- /wiki/relacionamento/escreve2.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa -- Livro : escreve 9 | 10 | class Pessoa { 11 | - nome : String 12 | } 13 | 14 | class Livro { 15 | - autor : Pessoa 16 | } 17 | 18 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/escreve3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/escreve3.png -------------------------------------------------------------------------------- /wiki/relacionamento/escreve3.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa "1..*" -- "0..*" Livro : escreve 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/escreve4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/escreve4.png -------------------------------------------------------------------------------- /wiki/relacionamento/escreve4.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pessoa "autor" -- "obra" Livro : escreve 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/frame.png -------------------------------------------------------------------------------- /wiki/relacionamento/frame.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Frame *- Button : has 9 | Frame *-- TextField : has 10 | Frame *-- Label : has 11 | Frame *-- List : has 12 | 13 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/gerencia.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/gerencia.png -------------------------------------------------------------------------------- /wiki/relacionamento/gerencia.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Empregado "1" -- "0-1" Departamento : gerencia 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/lapiseira.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/lapiseira.png -------------------------------------------------------------------------------- /wiki/relacionamento/lapiseira.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Lapiseira "1" o-- "0..*" Grafite : usa 9 | 10 | class Lapiseira { 11 | - calibre : float 12 | - ponta : Grafite | null 13 | - barril: Array 14 | __ 15 | + inserir(grafite : Grafite) : boolean 16 | + remover() : Grafite | null 17 | } 18 | 19 | class Grafite { 20 | - calibre : float 21 | - dureza : String 22 | - tamanho : float 23 | } 24 | 25 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/livro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/livro.png -------------------------------------------------------------------------------- /wiki/relacionamento/livro.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Livro "1" *-- "*" Capitulo : contém 9 | Capitulo "1" *-- "*" Secao : contém 10 | 11 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/lotado.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/lotado.png -------------------------------------------------------------------------------- /wiki/relacionamento/lotado.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Empregado "0..*" -- "1" Departamento : está lotado 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/motoca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/motoca.png -------------------------------------------------------------------------------- /wiki/relacionamento/motoca.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Person "0..1" <--o "1" Motorcycle : Carry 9 | 10 | class Person { 11 | - age : int 12 | - name : String 13 | + Person(name : String, age : int) 14 | __ 15 | + getAge() : int 16 | + getName() : String 17 | -- 18 | + toString() : String 19 | } 20 | 21 | class Motorcycle { 22 | - person : Person 23 | - power : int 24 | - time : int 25 | __ 26 | + Motorcycle(power : int) 27 | + buy(time : int) 28 | + drive(time : int) 29 | + enter(person : Person) : boolean 30 | + honk() 31 | + leave() : Person 32 | __ 33 | + getPerson() : Person 34 | + getPower() : int 35 | + getTime() : int 36 | -- 37 | + toString() : String 38 | } 39 | 40 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/multiplicidade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/multiplicidade.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association15.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association15.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Organização "0..*" --> "0..*" Indivíduo : contrata 9 | 10 | class Organização { 11 | - contratados : Indivíduo[0..*] 12 | } 13 | 14 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association17.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association17.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Funcionario "0..* -supervisionado" --> "1 -supervisor" Funcionario : é supervisionado 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association18.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association18.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Funcionario "0..* -supervisionado" --> "1 -supervisor" Funcionario : é supervisionado 9 | 10 | class Funcionario { 11 | - supervisor : Funcionario 12 | } 13 | 14 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association22.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association22.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | AssociacaoEsportiva "*" o-- "*" Equipe : < Afiliada 9 | Equipe "*" o-- "*" Jogador : membro 10 | 11 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association31.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association31.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Departamento "0..1" -- "0..*" Professor : > tem 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association9-eps-converted-to.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association9-eps-converted-to.pdf -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/old/Association9.png -------------------------------------------------------------------------------- /wiki/relacionamento/old/Association9.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Cliente "1" --> "0..*" Pedido : faz 9 | Pedido "1" --> "1..*" Item : contém 10 | Item "0..*" x--> "1" Produto : contém 11 | 12 | class Cliente { 13 | - id : String 14 | - nome : String 15 | - endereco : Endereco 16 | - dataNascimento : Date 17 | - pedidos : Pedido[0..*] 18 | } 19 | 20 | class Pedido { 21 | - id : String 22 | - status : String 23 | - item : Item[0..*] 24 | } 25 | 26 | class Item { 27 | - produto : Produto 28 | - quantidade : int 29 | - valor : double 30 | } 31 | 32 | class Produto { 33 | - id : String 34 | - nome : String 35 | - descricao : String 36 | - valor : double 37 | - dataFabricacao : Date 38 | - dataValidade : Date 39 | } 40 | 41 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/pedido.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/pedido.png -------------------------------------------------------------------------------- /wiki/relacionamento/pedido.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Pedido "1" *-- "1..*" ItemPedido 9 | ItemPedido "*" *--> "1" Produto 10 | 11 | class Pedido { 12 | - id : int 13 | - status : int 14 | - itens : ItemPedido[1..*] 15 | - data : Date 16 | - hora : Time 17 | } 18 | 19 | class ItemPedido { 20 | - quantidade : int 21 | - valor : float 22 | - produto : Produto 23 | } 24 | 25 | class Produto { 26 | - id 27 | - nome 28 | - descricao 29 | - precoUnitario 30 | - desconto 31 | - dataFabricacao 32 | - dataValidade 33 | } 34 | 35 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/perfil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/perfil.png -------------------------------------------------------------------------------- /wiki/relacionamento/perfil.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | class Perfil { 3 | +nome: String 4 | +adicionarSeguidor(seguidor: Perfil): void 5 | +adicionarSeguido(seguido: Perfil): void 6 | } 7 | 8 | Perfil "0..*" -- "0..*" Perfil : segue > 9 | @enduml 10 | -------------------------------------------------------------------------------- /wiki/relacionamento/publicado.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/publicado.png -------------------------------------------------------------------------------- /wiki/relacionamento/publicado.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Livro -- Editora : é publicado por 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/publicado2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/publicado2.png -------------------------------------------------------------------------------- /wiki/relacionamento/publicado2.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Livro -- Editora : é publicado por 9 | 10 | class Livro { 11 | - codigo : int 12 | - descLivro : Strign 13 | - ISBN : String 14 | - editora : Editora 15 | } 16 | 17 | class Editora { 18 | - codEditora : int 19 | - razaoSocial : String 20 | - contato : String 21 | - telefone : String 22 | } 23 | 24 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/publicado3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/publicado3.png -------------------------------------------------------------------------------- /wiki/relacionamento/publicado3.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | left to right direction 7 | 8 | Livro "1..*" -- "1..*" Editora : é publicado por 9 | 10 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/socio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/socio.png -------------------------------------------------------------------------------- /wiki/relacionamento/socio.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | Clube "0..*" o-- "0..*" Socio : sociedade 7 | 8 | @enduml -------------------------------------------------------------------------------- /wiki/relacionamento/supervisor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/supervisor.png -------------------------------------------------------------------------------- /wiki/relacionamento/supervisor.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | left to right direction 4 | 5 | class Funcionario { 6 | +nome: String 7 | +supervisor: Funcionario 8 | } 9 | 10 | Funcionario "1" --> "0..1" Funcionario: supervisor 11 | @enduml 12 | -------------------------------------------------------------------------------- /wiki/relacionamento/teste.py: -------------------------------------------------------------------------------- 1 | a = "#características-das-associações" 2 | b = "#caracterı́sticas-das-associações" 3 | 4 | print(len(a)) 5 | print(len(b)) 6 | -------------------------------------------------------------------------------- /wiki/relacionamento/todo_parte.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relacionamento/todo_parte.png -------------------------------------------------------------------------------- /wiki/relatorio/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relatorio/cover.jpg -------------------------------------------------------------------------------- /wiki/relatorio/relatorio.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/relatorio/relatorio.jpg -------------------------------------------------------------------------------- /wiki/root/flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/root/flow.png -------------------------------------------------------------------------------- /wiki/root/legenda.puml: -------------------------------------------------------------------------------- 1 | @startuml flow 2 | "**Intro**"#skyblue -down-> [ ]"**Tópico**" #skyblue 3 | "**Tópico**"--> "Resolvido" #pink 4 | "Resolvido"--> "Obrigatório" #green 5 | "Obrigatório"--> "Opcional" #yellow 6 | "Obrigatório"--> "Desafio" #red 7 | @enduml -------------------------------------------------------------------------------- /wiki/typescript/acordo.md: -------------------------------------------------------------------------------- 1 | # Acordo 2 | 3 | - Planilha de notas 4 | - Entrega das atividades 5 | - Assiduidade 6 | - Participação em aula 7 | - Entrega de atividades 8 | - Atrasos 9 | - Relatórios 10 | - Plágio 11 | - Avaliações 12 | - Nota Final 13 | -------------------------------------------------------------------------------- /wiki/typescript/algoritmos_vetores_leitura.md: -------------------------------------------------------------------------------- 1 | # Algoritmos básicos em Vetores 2 | 3 | ## Leitura 4 | 5 | Precisamos aprender os algoritmos básicos para manipular vetores. Esses algoritmos são muito utilizados em jogos e animações. 6 | 7 | ```typescript 8 | 9 | function existe(vet: number[], value: number): boolean; 10 | 11 | function indiceDe(vet: number[], value: number): number; 12 | 13 | function indiceDoMenorValor(vet: number[]): number; 14 | 15 | function indicePrimeiroPositivo(vet: number[]): number; 16 | 17 | function indiceDoMenorPositivo(vet: number[]): number; 18 | 19 | ``` 20 | -------------------------------------------------------------------------------- /wiki/typescript/algoritmos_vetores_pratica.md: -------------------------------------------------------------------------------- 1 | # Prática 2 | 3 | - Faça e refaça os algoritmos estudados em sala de aula. 4 | - Utilize o moodle com o problema: [LINK](https://github.com/qxcodepoo/arcade/blob/master/base/000/Readme.md) para rodar os testes. 5 | -------------------------------------------------------------------------------- /wiki/typescript/arrays_revisao.md: -------------------------------------------------------------------------------- 1 | # Revisão Arrays 2 | 3 | - Qual as duas formas de criar um array, tanto usando `tipo[]` como usando `new Array`? Qual a sintaxe para cada um deles? 4 | - length é um método ou um atributo da classe Array? 5 | - Para que serve o length? 6 | - Quais os métodos para inserir no fim e inserir no começo do array? O que esses métodos retornam? 7 | - Quais os métodos para remover do fim e remover do começo do array? O que eles retornam? 8 | - O que acontece se eu tentar remover algo do fim de um array vazio? 9 | - Para que serve a função splice e o que são os parâmetros delas? 10 | - A função splice retorna que tipo de dado? 11 | - Quais as duas forma de fazer um for para percorrer um array? 12 | - Cite dois casos que eu não consigo resolver utilizando o `for of`. 13 | - Como seria um laço para percorrer o elemento de trás pra frente? 14 | - Se eu tiver um array de números e quiser dobrar o valor de cada elemento do array, por que eu não consigo fazer com o `for of`? 15 | - Como funciona a função `indexOf`? 16 | - Se eu tenho uma lista de nomes chamada `nomes` como eu faço pra imprimir um nome por linha, mas sem utilizar o `for`, utilizando apenas a função `join` e o `console.log()`? 17 | -------------------------------------------------------------------------------- /wiki/typescript/busca_leitura.md: -------------------------------------------------------------------------------- 1 | # Leitura 2 | 3 | Você precisa entender como funciona o modelo de testes. 4 | 5 | A atividade do Animal já está resolvida, dê uma olhada: 6 | 7 | [![image](https://user-images.githubusercontent.com/4747652/263152148-cf916c4a-6c07-4d36-bc9c-ac8a2f9b348c.png)](https://www.youtube.com/watch?v=PU6-anlu5jI) 8 | -------------------------------------------------------------------------------- /wiki/typescript/busca_pratica.md: -------------------------------------------------------------------------------- 1 | # Prática 2 | 3 | - Treine com a atividade do @054 Animal. 4 | - Copie o rascunho e faça a atividade da seguinte forma: 5 | - Apague o conteúdo do método, tente reescrever o método do zero. 6 | - Apague um pedaço da invocação do método na main, tente reescrever a invocação da main do zero. 7 | - Faça a atividade do @002 Carro como exercício. 8 | -------------------------------------------------------------------------------- /wiki/typescript/circulos_colisao_pratica.md: -------------------------------------------------------------------------------- 1 | # Pratica - Círculos e Pontos Colidindo 2 | 3 | 4 | - [Parte 1 - Está contido](#parte-1---está-contido) 5 | - [Draft1](#draft1) 6 | - [Resultado1](#resultado1) 7 | - [Parte 2 - Está colidindo com outro retângulo](#parte-2---está-colidindo-com-outro-retângulo) 8 | - [Draft2](#draft2) 9 | - [Resultado2](#resultado2) 10 | - [Parte 3 - Colisão entre múltiplos retângulos](#parte-3---colisão-entre-múltiplos-retângulos) 11 | - [Draft3](#draft3) 12 | 13 | 14 | - Pegue o Retângulo que você criou na atividade [Pontos e Círculos](vector2d_pratica.md) 15 | 16 | ## Parte 1 - Está contido 17 | 18 | Faça o método `contains` da classe `Rect` recebe um ponto e retorna `true` se o ponto estiver dentro do retângulo e `false` caso contrário. 19 | 20 | Depois, utilize esse sketch para testar o método: 21 | 22 | ### Draft1 23 | 24 | [draft1](../../codigos/rect1.ts) 25 | 26 | ### Resultado1 27 | 28 | [link](https://user-images.githubusercontent.com/4747652/273888957-eef111c4-b920-4f99-824f-dc389d713848.mp4) 29 | 30 | ## Parte 2 - Está colidindo com outro retângulo 31 | 32 | ![Alt text](image.png) 33 | 34 | [link](https://user-images.githubusercontent.com/4747652/273901159-d80ee59e-9860-425a-8aaf-a7532e87d59b.mp4) 35 | 36 | ### Draft2 37 | 38 | [draft2](../../codigos/rect2.ts) 39 | 40 | ### Resultado2 41 | 42 | [link](https://user-images.githubusercontent.com/4747652/273901808-336c1097-2183-466d-9b21-1dc4fa979e57.mp4) 43 | 44 | ## Parte 3 - Colisão entre múltiplos retângulos 45 | 46 | [link](https://user-images.githubusercontent.com/4747652/273925252-44225ceb-f9dc-47fa-b0ce-0e71c5a37cd6.mp4) 47 | 48 | ### Draft3 49 | 50 | [draft3](../../codigos/rect3.ts) 51 | -------------------------------------------------------------------------------- /wiki/typescript/classes_pratica.md: -------------------------------------------------------------------------------- 1 | # Classes prática 2 | 3 | - Crie uma classe `Animal` com os atributos `especie` e `barulho`. 4 | - Crie um construtor que receba esses dois atributos e os inicialize. 5 | - Crie um método `void` `fazerBarulho` que imprima o barulho do animal. 6 | - Crie os objetos `cachorro`, `gato` e `vaca` com os respectivos barulhos. 7 | - Chame os métodos `fazerBarulho` de cada um dos objetos. 8 | - Crie um objeto da espécie `gato`, mas que faça o barulho `miovisk` e salve numa variável chamada gatoRusso. 9 | - Crie um objeto da especie `gatoZumbi`, mas que faça o barulho `meeh` e salve numa variável chamada gatoZumbi. 10 | - Adicione um atributo `alive` na classe `Animal` e inicialize com `true`. 11 | - Crie um método `void` `morrer` que altere o atributo `alive` para `false`, a não ser que o animal seja um `gatoZumbi`, porque gatos zumbis não morrem. 12 | -------------------------------------------------------------------------------- /wiki/typescript/classes_revisao.md: -------------------------------------------------------------------------------- 1 | # Classes Revisão 2 | 3 | - O que é abstração em programação? 4 | - Qual a diferença entre classes e objetos? 5 | - O que é um atributo? 6 | - O que é um método? 7 | - O que é um construtor? Por que ele é importante? Por que ele é diferente de um método normal? 8 | - Qual a diferença entre variáveis e objetos? 9 | - O que é a tabela de variáveis, tecnicamente chamada de tabela de símbolos? 10 | - Quando podemos dizer que duas variáveis que armazenam objetos são iguais? `a === b`? 11 | - O que é um objeto anônimo? 12 | - Qual a forma padrão de se criar um objeto? 13 | - O que a palavra `this` significa? 14 | - A linha de código `let x = [1, 2, 3]` está criando qual objeto indiretamente? 15 | - Como poderíamos criar o objeto da linha acima de forma direta usando `new`? 16 | -------------------------------------------------------------------------------- /wiki/typescript/fup_pratica.md: -------------------------------------------------------------------------------- 1 | # Prática 2 | 3 | Faça o código seguindo o que se pede: 4 | 5 | - Para todas as variáveis e funções, seja explícito sobre os tipos de dados que eles recebem e retornam. 6 | - crie uma variável `nome` do tipo `string` e atribua a ela o valor `"João"`; 7 | - crie uma variável `idade` do tipo `number` e atribua a ela o valor `18`; 8 | - crie uma constante `limite` do tipo `number` e atribua a ela o valor `18`; 9 | - crie uma variável `maiorDeIdade` do tipo `boolean` e atribua a ela o valor `false`; 10 | - faça um `if` que verifica se `idade` é maior ou igual a `limite` e mude o valor de `maiorDeIdade` para `true` se for maior ou igual; 11 | - crie um vetor de frutas do tipo `string` e adicione a ele as frutas `"maçã"`, `"banana"` e `"laranja"`; 12 | - crie um `for` que imprime cada fruta do vetor de frutas utilizando `console.log`; 13 | - faça um vetor de nomes do tipo `number` ou `null` e adicione a ele os valores `1`, `2`, `null`, `4`, `0`, `null`; 14 | - faça um `for` que imprime cada nome do vetor de nomes utilizando `console.log` apenas se o valor não for `null`; 15 | - crie uma função que recebe uma idade e retorna `criança` se a idade for menor que `12`, `adolescente` se a idade for menor que `18` e `adulto` se a idade for maior ou igual a `18`; 16 | - chame a função para alguns valores de idade e imprima os resultados utilizando `console.log`; 17 | -------------------------------------------------------------------------------- /wiki/typescript/fup_revisao.md: -------------------------------------------------------------------------------- 1 | # Revisão 2 | 3 | - O que é TypeScript e como ele se relaciona com o JavaScript? 4 | - Porque dizemos que Typescript é transpilado ao invés de compilado? 5 | - Qual é a diferença entre variáveis ​​declaradas com `var`, `let` e `const` em TypeScript? 6 | - Como você define um tipo explícito para uma variável em TypeScript? 7 | - O que é inferência de tipos? 8 | - Qual a diferença entre atribuição de tipo e inicialização de variável? Me dê um exemplo de variável inicializada e não inicializada. 9 | - Qual valor possui uma variável não inicializada? 10 | - Quais os três tipos de dados primitivos em TypeScript? 11 | - Quais os três tipos de dados que representam "ausência de valor" em TypeScript? Quando usar cada um deles? 12 | - O que é o tipo `any` em TypeScript? 13 | - Crie uma variável que pode ser do tipo `string` ou `number`. 14 | - Como você declara um array de números em TypeScript? 15 | - Como converter de `string` para `number` em TypeScript? 16 | - Como converter de `number` para `string` em TypeScript? 17 | - Dado um número quebrado, como você arredonda ele para baixo? 18 | - Como verificar se uma variável que pode ser `null` possui um valor? 19 | - Se `for` e `while` podem fazer a mesma coisa, por que usar um em vez do outro? 20 | -------------------------------------------------------------------------------- /wiki/typescript/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/typescript/image.png -------------------------------------------------------------------------------- /wiki/typescript/p5_pratica.md: -------------------------------------------------------------------------------- 1 | # P5 Prática 2 | 3 | - Crie um projeto P5 em typescript. 4 | - Inicialize o fundo com a cor azul. 5 | - Defina o framerate para 10 6 | - Desenhe um quadrado no centro da tela de 100x100, com borda preta e preenchimento branco. 7 | - Desenhe uma elipse na posição do mouse de 50x50. 8 | - Todo frame, essa elipse deve ter uma cor aleatória, mas o nível de opacidade deve ser de 50. 9 | - Toda vez que o mouse for pressionado, a elipse deve aumentar de tamanho. 10 | - Se a tecla espaço for pressionada, limpe a tela. 11 | - Se a tecla `s` for pressionada, salve a tela. 12 | 13 | ## Resultado 14 | 15 | [LINK](https://user-images.githubusercontent.com/4747652/261316321-84f08bfa-8a1e-4186-8d1e-f6f9de72537a.mp4) 16 | -------------------------------------------------------------------------------- /wiki/typescript/p5_revisao.md: -------------------------------------------------------------------------------- 1 | # P5 Revisão 2 | 3 | - Qual a diferença entre a função `setup` e a função `draw`? 4 | - Qual a diferença entre `stroke` e `fill`? 5 | - Quais as diferentes formas de se passar uma cor para uma função? 6 | - Cite 4 variáveis de globais do P5 que já vem definidas. 7 | - Cite duas funções que são invocadas por eventos. 8 | - O que significam os 4 valores do RGBA? 9 | - Quais funções para remover a borda e o preenchimento de uma forma? 10 | -------------------------------------------------------------------------------- /wiki/typescript/tko.md: -------------------------------------------------------------------------------- 1 | # TKO 2 | 3 | Para rodar os testes localmente ou no replit você precisará do `tko` instalado. 4 | 5 | ## Instalação via replit 6 | 7 | 1. Crie um projeto `typescript` em [replit.com](https://replit.com) 8 | 2. Abra o `Shell` e copie a seguinte linha de comando: 9 | 10 | ```bash 11 | curl -sSL https://raw.githubusercontent.com/senapk/tko/master/replit/ts/update.sh | bash 12 | ``` 13 | 14 | Após instalar, aperte o botão `Run` para iniciar o `habilitar` os comandos. 15 | 16 | ## Instalação local no Windows 17 | 18 | ### 1. Instale o python 19 | 20 | - Instale o `python` utilizando o instalador do [site oficial](https://www.python.org/downloads/) 21 | - Marque a opção `Add Python to PATH` durante a instalação. 22 | - Para verificar se a instalação foi bem sucedida, abra o `powershell` e digite: 23 | 24 | ```bash 25 | python --version 26 | ``` 27 | 28 | Se não tiver dado certo, se der comando não encontrado, execute o instalador de novo e certifique-se de marcar a opção `Add Python to PATH`. 29 | 30 | ### 2. Instale o esbuild e o tko 31 | 32 | - Abra o powershell e digite as seguintes linhas, uma por vez: 33 | 34 | ```bash 35 | 36 | # para instalar o tko 37 | pip install tko 38 | 39 | # reabra o powershell como admin antes e dar o próximo comando 40 | # para habilitar a execução de scripts 41 | Set-ExecutionPolicy Unrestricted 42 | ``` 43 | -------------------------------------------------------------------------------- /wiki/typescript/typescript.md: -------------------------------------------------------------------------------- 1 | # typescript 2 | 3 | 4 | - [ts: Windows](#ts-windows) 5 | - [ts: Debian](#ts-debian) 6 | - [Rodando projetos modo texto](#rodando-projetos-modo-texto) 7 | - [Para quem usa Arch](#para-quem-usa-arch) 8 | 9 | 10 | ## ts: Windows 11 | 12 | Abra o power Shell e insira esses comandos: 13 | 14 | ```bash 15 | # Verificar se o nodejs e npm estão instalados 16 | node -v 17 | npm -v 18 | 19 | # Instalar o typescript e ts-node 20 | npm install typescript ts-node esbuild 21 | 22 | # feche e reabra o powershell como admin antes e dar o próximo comando 23 | # para habilitar a execução de scripts 24 | Set-ExecutionPolicy Unrestricted 25 | 26 | # Testando 27 | tsc -v 28 | ts-node -v 29 | ``` 30 | 31 | ## ts: Debian 32 | 33 | ```bash 34 | # Instalando globalmente se você tem permissão de admin 35 | sudo npm install -g typescript ts-node esbuild 36 | # Se não tiver permissão de admin instale localmente 37 | npm install typescript ts-node esbuild 38 | 39 | # Testando 40 | tsc -v 41 | ts-node -v 42 | ``` 43 | 44 | ## Rodando projetos modo texto 45 | 46 | - Abra o vscode 47 | - Escolha Abrir Pasta, e abra a pasta onde você vai salvar seus projetos. 48 | - Crie um arquivo chamado `ola.ts` com o seguinte conteúdo: 49 | 50 | ```typescript 51 | console.log("Olá Mundo"); 52 | ``` 53 | 54 | - Abra o terminal (ctrl+shift+`) 55 | - Selecione o terminal bash 56 | - Digite o comando `npx ts-node ola.ts` 57 | - Se tudo deu certo, você deve ver a mensagem `Olá Mundo` no terminal. 58 | 59 | ## Para quem usa Arch 60 | 61 | Para quem usa Arch Linux ou Manjaro, a instalação de tudo é uma única linha: 62 | 63 | ```bash 64 | sudo pacman -S nodejs npm typescript ts-node esbuild code 65 | ``` 66 | -------------------------------------------------------------------------------- /wiki/typescript/vector2d_pratica.md: -------------------------------------------------------------------------------- 1 | # Prática - Classes Aninhadas 2 | 3 | Crie uma class Retangulo que representa um retângulo na tela. Essa classe deve ter os seguintes atributos: 4 | 5 | - `posicao`: um objeto do tipo `Vector2d` que representa a posição do retângulo na tela. 6 | - `tamanho`: um objeto do tipo `Vector2d` que representa o tamanho do retângulo na tela. 7 | 8 | A classe `Retangulo` deve ter os seguintes métodos: 9 | 10 | - `constructor(x: number, y: number, width: number, height: number)`: inicializa os atributos `posicao` e `tamanho 11 | - `contemPonto(ponto: Vector2d)`: retorna `true` se o ponto passado como parâmetro estiver dentro do retângulo e `false` caso contrário. 12 | - `desenhar()`: desenha o retângulo na tela. 13 | 14 | - No seu programa, crie um retângulo na posição (100, 100) e com tamanho (50, 50). 15 | - Desenhe o retângulo na tela. 16 | - Sempre que clicar com o mouse, mude a posição do retângulo para a posição do clique. 17 | - Sempre que o mouse estiver dentro do retângulo, mude a cor do retângulo para vermelho e diminua o tamanho em x e y em 1 pixel. 18 | - Sempre que o mouse estiver fora do retângulo, mude a cor do retângulo para azul e aumente o tamanho em x e y em 1 pixel. 19 | 20 | ## Resultado Esperado 21 | 22 | [resultado](https://user-images.githubusercontent.com/4747652/266047852-5d58bcef-fc82-49da-b887-b62f535e5e90.mp4) 23 | -------------------------------------------------------------------------------- /wiki/uml/diagrama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qxcodepoo/arcade/e00b8bd3c81bc034a5583374f66195f47809aa0c/wiki/uml/diagrama.png -------------------------------------------------------------------------------- /wiki/uml/diagrama.puml: -------------------------------------------------------------------------------- 1 | @startuml _diagrama 2 | 3 | skinparam defaultFontName "Source Code Pro" 4 | skinparam dpi 150 5 | 6 | class Casa { 7 | dono: Adulto 8 | moradores: Morador[] 9 | comodos: Cômodo[] 10 | } 11 | 12 | class Cômodo { 13 | } 14 | 15 | class Parede { 16 | } 17 | 18 | class Móvel { 19 | } 20 | 21 | 22 | interface Morador { 23 | } 24 | 25 | class Pet { 26 | 27 | } 28 | 29 | abstract class Pessoa { 30 | } 31 | 32 | class Criança { 33 | } 34 | 35 | class Adulto { 36 | 37 | } 38 | 39 | Casa *-- "muitos" Cômodo 40 | Cômodo *-- "4" Parede 41 | Cômodo o-- "0..*" Móvel 42 | Casa o-- "1..*" Morador 43 | Morador <|-- Pet 44 | Morador <|-- Pessoa 45 | Casa o-- "1" Adulto 46 | Pessoa <|-- Criança 47 | Pessoa <|-- Adulto 48 | 49 | 50 | @enduml 51 | --------------------------------------------------------------------------------