1.Criar uma classe que representa um filme, com dados como seu titulo, duração e
elenco. Após isso, colocá-la no namespace Alura.Filmes.
namespace Alura.Filmes;
class Filme
{
private int duracao;
public string Titulo { get; set; }
public int Duracao
{
get => duracao;
set
{
if (value < 0)
{
duracao = 0;
}
else
{
duracao = value;
}
}
}
public List<string> Elenco = new List<string>();
public Filme(string titulo, int duracao, List<string> elenco)
{
Titulo = titulo;
Duracao = duracao;
Elenco = elenco;
}
public void AdicionarElenco(string ator)
{
Elenco.Add(ator);
Console.WriteLine($"\n{ator} adicionado ao elenco.\n");
}
public void ExibirElenco()
{
if (Elenco.Count == 0)
{
Console.WriteLine("O Elenco está vazio.");
}
else
{
var ListaOrdenada = Elenco.OrderBy(ator => ator).ToList();
Console.WriteLine("Lista do Elenco:");
foreach (string ator in ListaOrdenada)
{
Console.WriteLine($"-{ator}");
}
}
}
}
2.Criar um programa Program.cs, instanciar seus 5 filmes favoritos, guardá-los
em uma lista e mostrar as suas informações no console.
using Alura.Filmes;
var listaElenco = new List<string>() { "Asterion", "Song", "Valor" };
var filme1 = new Filme("Doom", 170, listaElenco);
filme1.ExibirElenco();
filme1.AdicionarElenco("Sunny");
filme1.ExibirElenco();
var filme2 = new Filme("Super Mario Brothers", 210, new List<string>() { "Mario", "Luigi" });
var filme3 = new Filme("Mario Galaxy World ", 210, new List<string>() {"Mario" });
var filme4 = new Filme("Mario 3", 230, new List<string>() { "Wario", "Luigi" });
var filme5 = new Filme("Mario 4", 200, new List<string>() { "Wario" });
List<Filme> filmesFavoritos = new() { filme2, filme3 };
filmesFavoritos.Add(filme4);
filmesFavoritos.Add(filme5);
foreach (Filme f in filmesFavoritos)
{
Console.WriteLine($"\nTítulo do filme: {f.Titulo}");
Console.WriteLine($"Duração: {f.Duracao} Minutos");
f.ExibirElenco();
}
- Criar uma classe Artista, que representa uma pessoa que atua em filmes, no
namespace Alura.Filmes. A classe deve conter atributos como o nome, idade e uma
lista de filmes onde o artista atuou.
namespace Alura.Filmes;
class Artista
{
public string Nome { get; set; }
public int Idade { get; }
private List<Filme> FilmesAtuados { get; set; } = new List<Filme>();
public Artista(string nome, int idade)
{
Nome = nome;
Idade = idade;
}
public void AdicionarFilmeAtuado(Filme filme)
{
if (filme.Elenco.Contains(this.Nome))
{
FilmesAtuados.Add(filme);
Console.WriteLine($"Filme {filme.Titulo} Adicionado com sucesso!\n");
}
else
{
Console.WriteLine($"\nErro: O ator {Nome} não fez parte do elenco deste filme\n");
}
}
public void ExibirFilmesAtuados()
{
Console.WriteLine($"A lista de filmes que o {Nome} atuou são as seguintes:");
foreach(Filme filme in FilmesAtuados)
{
Console.WriteLine($"--{filme.Titulo}");
}
}
}
resolução da 3 no program.cs:
Console.Clear();
var ator1 = new Artista("Mario", 50);
ator1.AdicionarFilmeAtuado(filme2);
ator1.AdicionarFilmeAtuado(filme3);
ator1.AdicionarFilmeAtuado(filme4);
ator1.ExibirFilmesAtuados();