C# Desenvolvimento

Exercício em C# – Interface e List (Cadastro de obras de arte)

computer program language text
Photo by Jorge Jesus on Pexels.com

O post Exercício em C# – Interface e List (Cadastro de obras de arte) tem como objetivo apresentar o enunciado e a resposta de um exercício sobre Interface e Lista. Neste exercício o usuário deverá criar um sistema para controlar o cadastro de obras de arte.

Exercício em C# – Interface e List (Cadastro de obras de arte)

Crie um programa que tem como objetivo cadastrar todas as suas obras de arte de um colecionador.

Ao executar o sistema o usuário deverá informar quantas obras de arte deseja cadastrar e efetuar o cadastro das mesmas informando o nome e descrição de cada uma delas.

Após terminar o cadastro de todas as obras de arte o sistema deverá exibir uma lista de todas as obras que foram cadastradas (exibir o nome e descrição de cada obra).

IMPORTE

O programa deverá atender os seguintes requisitos:

  • Possuir uma interface com o nome de IArte;
  • Deverá ser adicionado na interface as propriedade Nome e Descricao do tipo String para serem implementadas posteriormente na classe Arte;
  • Deverá ser adicionado na interface o método ExibirDados do tipo void que será implementado posteriormente na classe Arte;
  • Possuir uma classe Arte para representar as artes do usuário;
  • A classe Arte deverá implementar a Interface IArte;
  • Utilize listas (List) para armazenar as artes que o usuário deverá cadastrar;

Resposta

using System;
using System.Collections.Generic;

//interface IArte
public interface IArte
    {
        String Nome { get; set; }
        String Descricao { get; set; }
        void ExibiDados();
    }
    
//classe Arte
public class Arte : IArte
    {
        public Arte()
        {
            this.Nome = "";
            this.Descricao = "";
        }

        public Arte(string nome, string descricao)
        {
            this.Nome = nome;
            this.Descricao = descricao;
        }

        private string nome;
        public string Nome { 
            get { return this.nome; }

            set { this.nome = value.ToUpper(); } 
        }
        private string descricao;
        public string Descricao
        {
            get { return this.descricao; }

            set { this.descricao = value.ToUpper(); }
        }
        public void ExibiDados()
        {
            //Console.WriteLine("Arte: " + this.Nome + " Descricao: " + this.Descricao);
            Console.WriteLine("Arte: {0} - Descricao: {1}", this.Nome, this.Descricao);
        }
    }
    
//programa principal
class Program
    {
        static void Main(string[] args)
        {
            List<Arte> Artes = new List<Arte>();
            int n = 0;
            Arte arte;

            Console.WriteLine("Controle de obras de arte");
            Console.Write("Quantas obras você quer inserir: ");
            n = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Iniciando o cadastro das obras de arte");
            for (int i = 1; i <= n; i++)
            {
                Console.WriteLine("Leitura da Obra {0}", i);
                arte = new Arte();
                Console.Write("Nome: ");
                arte.Nome = Console.ReadLine();
                Console.Write("Descricao: ");
                arte.Descricao = Console.ReadLine();
                Artes.Add(arte);
            }

            Console.WriteLine("Lista das obras de arte cadastradas");
            //for (int i = 0; i < n; i++)
            //{
            //    Artes[i].ExibiDados();
            //}

            foreach (var item in Artes)
            {
                item.ExibiDados();
            }

            Console.ReadKey();
        }
    }

Super dicas

Quer aprender muito mais sobre programação? Então se inscreva no curso Programação Orientada a Objetos utilizando a linguagem C#.

Se inscreva em nosso canal e compartilhe as matérias que gostar com os seus colegas.

Participe dos nossos grupos de estudos do Facebook e Telegram.

Aproveite também e venha fazer parte do nosso clube de vantagens e ter acesso exclusivo a vídeos, tutoriais, cursos e muito mais.

Clique no link para se tornar um membro do dfilitto – clube de vantagens e ter acesso a todos os benefícios do nosso clube.

About the author

Danilo Filitto

Mestre em Ciência da Computação pela Universidade Estadual de Maringá - UEM, Pós-Graduado em Redes de Computadores e Comunicação de Dados pela Universidade do Estado do Paraná - UEL, Bacharel em Ciência da Computação pela Universidade do Oeste Paulista - UNOESTE.

Atuo na área acadêmica como professor desde 2006. Atualmente leciono na UNOESTE (Universidade do Oeste Paulista), no SENAC (Serviço Nacional de Aprendizagem Comercial) e possuo vários cursos na Udemy (https://www.udemy.com/user/danilo-filitto/).

Além disso, sou o CEO dos sites https:www.dfilitto.com.br e https:www.makeindiegames.com.br

Você também pode me encontrar no YouTube por meio do endereço https://www.youtube.com/danilofilittoppr

Add Comment

Click here to post a comment

Inscreva-se para receber em seus e-mais as notícias do nosso site

Quer aprender a programar?