1
resposta

Resposta - Agendamento médico

Classe:

public class Consultation
{
    public string PatientName { get; set; }
    public string DoctorName { get; set; }
    public DateTime ConsultationDate { get; set; }
    public bool Rescheduled { get; set; }

    public Consultation(string patientName, string doctorName, DateTime consultationDate)
    {
        PatientName = patientName;
        DoctorName = doctorName;
        ConsultationDate = consultationDate;
        Rescheduled = false;
    }

    public void reschedule(DateTime newDate)
    {
        ConsultationDate = newDate;
        Rescheduled = true;
    }

    public void display_consultation()
    {
        if (Rescheduled)
        {
            Console.WriteLine($"Appointment scheduled with {DoctorName} for patient {PatientName}.");
            Console.WriteLine($"New date: {ConsultationDate.ToString("dd/MM/yyyy")}");
            return;
        }
        Console.WriteLine($"Appointment scheduled with {DoctorName} for patient {PatientName}.");
        Console.WriteLine($"Date: {ConsultationDate.ToString("dd/MM/yyyy")}");
    }
}

Instância:

Consultation consultation = new Consultation("João Lima", "Dra. Renata", new DateTime(2025, 5, 20));
consultation.display_consultation();
consultation.reschedule(new DateTime(2025, 5, 25));
consultation.display_consultation();
1 resposta

Olá, Carlos, como vai?

Seu código está funcional e cumpre bem a ideia do exercício. As propriedades estão claras, o construtor organiza corretamente os dados e o controle de reagendamento ficou simples e objetivo. Há apenas um ponto opcional que você pode considerar: ajustar os nomes dos métodos para seguir o padrão PascalCase do C#, já que isso melhora a legibilidade no ecossistema da linguagem.

Continue compartilhando seus exercícios, é ótimo acompanhar sua evolução. O fórum está à disposição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!