From c40b3c93d0bc399d435f4bdcea1e02aff7cdcf15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thiago=20Figueir=C3=B3=20Ribeiro?= Date: Wed, 31 Jan 2024 17:34:18 -0300 Subject: [PATCH 1/2] =?UTF-8?q?feat/=20Cria=C3=A7=C3=A3o=20de=20l=C3=B3gic?= =?UTF-8?q?a=20pra=20gerar=20forma=C3=A7=C3=B5es=20e=20matricular=20alunos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- desafio.kt | 46 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/desafio.kt b/desafio.kt index f2ebe619..7baf9170 100644 --- a/desafio.kt +++ b/desafio.kt @@ -1,21 +1,43 @@ -// [Template no Kotlin Playground](https://pl.kotl.in/WcteahpyN) +fun main() { + program() +} enum class Nivel { BASICO, INTERMEDIARIO, DIFICIL } - -class Usuario - -data class ConteudoEducacional(var nome: String, val duracao: Int = 60) - -data class Formacao(val nome: String, var conteudos: List) { +class Usuario (val nome: String, val idade: Int) +data class ConteudoEducacional(val nome: String, val creditos: Int) +data class Formacao(val nome: String, val nivel: Nivel, var conteudos: List) { val inscritos = mutableListOf() fun matricular(usuario: Usuario) { - TODO("Utilize o parâmetro $usuario para simular uma matrícula (usar a lista de $inscritos).") + inscritos.add(usuario) } } +fun program(){ -fun main() { - TODO("Analise as classes modeladas para este domínio de aplicação e pense em formas de evoluí-las.") - TODO("Simule alguns cenários de teste. Para isso, crie alguns objetos usando as classes em questão.") -} + // Definindo quais disciplinas irão fazer parte do curso. + val listaDeDisciplinas = listOf( + ConteudoEducacional("Introdução à programação em C", 2,), + ConteudoEducacional("Banco de Dados I", 3), + ConteudoEducacional("Processos Estocáticos", 4) + ) + + // Criando o curso. + var formacao = Formacao("Engenharia da Computação (Computação Aplicada)", Nivel.DIFICIL, listaDeDisciplinas) + + // Matriculando alguns alunos: + formacao.matricular(Usuario("Thiago", 34)) + formacao.matricular(Usuario("Julia", 9)) + formacao.matricular(Usuario("Bruce Lee", 53)) + + println("Nome da formação: " + formacao.nome) + println("Nível de dificuldade: " + formacao.nivel) + + println("Disciplinas: ") + for (materias in 0..formacao.conteudos.size-1) + println(formacao.conteudos[materias].nome) + + println("Alunos Matriculados: ") + for (alunos in 0..formacao.inscritos.size-1) + println(formacao.inscritos[alunos].nome + ", " + formacao.inscritos[alunos].idade + " anos.") +} \ No newline at end of file From 5d22a297edd79572f50ddf614694d406087b3e1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thiago=20Figueir=C3=B3=20Ribeiro?= Date: Wed, 31 Jan 2024 17:35:46 -0300 Subject: [PATCH 2/2] =?UTF-8?q?feat/=20Cria=C3=A7=C3=A3o=20de=20l=C3=B3gic?= =?UTF-8?q?a=20pra=20gerar=20forma=C3=A7=C3=B5es=20e=20matricular=20alunos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- desafio.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desafio.kt b/desafio.kt index 7baf9170..a100fef3 100644 --- a/desafio.kt +++ b/desafio.kt @@ -23,7 +23,7 @@ fun program(){ ) // Criando o curso. - var formacao = Formacao("Engenharia da Computação (Computação Aplicada)", Nivel.DIFICIL, listaDeDisciplinas) + val formacao = Formacao("Engenharia da Computação (Computação Aplicada)", Nivel.DIFICIL, listaDeDisciplinas) // Matriculando alguns alunos: formacao.matricular(Usuario("Thiago", 34))