Sistema de agenda telefônica no console com base no curso.
- #.NET C#
Esse projeto me ajudou a entender melhor sobre o funcionamento de Listas e também de Loops.
Inicialmente, criamos uma classe para armazenar os atributos e métodos relacionados à agenda, estes foram:
- Um objeto do tipo List nomes (Visa armazenar o nome do qual o telefone será vinculado).
- Um objeto do tipo List telefone (Armazena os telefones)
- Método "MostrarAgenda()" onde aqui executa um loop que ler e imprimi cada posição da lista.
- Método "Adicionar()" onde terá a lógica de adicionar um nome e um telefone em suas respectivas listas.
- Método "Remover()" onde removerá um determinado item das listas (selecionado pelo índice da lista)
Aqui o código do arquivo Agenda.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Threading.Tasks;
namespace Arrays
{
public class Agenda
{
public List<string> nome = new List<string>();
public List<string> telefone = new List<string>();
public void MostrarAgenda(){
for(int i = 0; i < nome.Count; i++){
Console.WriteLine($"\nItem: {i} \nNome: {nome[i]} \nTelefone: {telefone[i]}\n--------------\n");
} //Loop que imprime o índice, nome e telefone da lista.
}
public void Adicionar(){
Console.WriteLine("\nNome: ");
nome.Add(Console.ReadLine());
Console.WriteLine("Telefone: ");
telefone.Add(Console.ReadLine()); //Lógica simples de adição de elementos na lista
}
public void Remover(){
Console.WriteLine("\nDigite o número do item que quer remover: ");
MostrarAgenda(); //Exibe novamente a lista para que o usuário possa ver os elementos.
int opc = Convert.ToInt32(Console.ReadLine()); //Ler a posição que o usuário selecionou
for(int i = 0; i < nome.Count; i++){ //Loop para ler toda a lista novamente
if(opc == i){ // Verifica se a posição que o usuário digitou é igual a qual o contador do loop está
nome.RemoveAt(i);
}else{
Console.WriteLine("\nNão existente\n");
}
}
}
}
}
Em seguida, criamos o "menu" onde exibirá as opções e pegará a opção do usuário.
using Arrays;
Console.WriteLine("-------------Agenda Telefônica------------");
Agenda agenda = new Agenda();
while(true){
Console.WriteLine("1. Ver Agenda \n2. Adicionar na agenda \n3. Excluir da Agenda\n");
string opc = Console.ReadLine();
if(opc.Equals("1")){
if(agenda.nome.Count > 0){
agenda.MostrarAgenda();
}else{
Console.WriteLine("\nAgenda vazia");
continue;
}
}else if(opc.Equals("2")){
agenda.Adicionar();
}else if(opc.Equals("3")){
agenda.Remover();
}else{
Console.WriteLine("\nInsira uma opção válida\n");
continue;
}//Aqui somente verifica a opção do usuário e chama os médotos conforme necessário (aqui também poderia ser usado um switch-case)
}
Esse programa foi bem útil e me ajudou a entender bem melhor como funcionam as Listas, espero que possa ajudar a outros da mesma forma.