"OOP.Hospital.Adress" не содержит конструктор, который принимает аргументы "4" E:\OOP\OOP\Program.cs - C#
Формулировка задачи:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OOP
{
class Hospital
{
class patient
{
string name; //имя
string lastname; //фамилия
string patronumic; // отчество
Adress adress;//адресс
Disease[] history;
bool isStay;
public patient(string _name, string _lastname, string _patronumic, Adress _adress) //конструктёр пациента
{
/* заносим данные в карточку*/
name = _name;
lastname = _lastname;
patronumic = _patronumic;
adress = _adress;
isStay = true;
history = new Disease[100]; // массив истории болезни пациента
}
public Adress Adress // св-во Адрес
{
get { return adress; } //только чтение
}
public string FIO //фио
{
get { return lastname + " " + name + " " + patronumic; } //только чтение
}
public bool IsStay // стоит ли на учете больной
{
// чтение и запись
get { return isStay; } // получение сведений об учете больного
set { isStay = value; } //измемнение состояния учета
}
public void Visit(DateTime date, string diagnose) // обращение пациента в больницы
{
Disease disease = new Disease(date, diagnose); // регистрируем болезнь
history.SetValue(disease, history.Count()); // заносим в карточку
}
}
string name; //наименование больницы
List<patient> my = new List<patient>();
private struct Adress
{
string street; //улица
string city; // город
byte house; // номер дома
byte flat; //# кваритры
Adress(string _street, string _city, byte _house, byte _flat)//конструктор структуры адреса
{
street = _street;
city = _city;
house = _house;
flat = _flat;
}
}
private struct Disease
{
DateTime time;
string diagnose;
public Disease(DateTime _time, string _diagnose)
{
time = _time;
diagnose = _diagnose;
}
}
public void Hospital1() // конструктор больницы
{
name = "Больница №1"; // задаем имя больницы
}
public void AddPatient(string name, string lastname, string patronymic, Adress adress) // регистрация пациента в больнице
{
patient Patient = new patient(name, lastname, patronymic, adress); // создаем карточку нового больного
my.Add(Patient);// ложим ее в архив
}
public void SetStay(int ID, bool isStay) // снятие/постановка больного на учет в больницу
{
if ((ID < 0) || (ID > my.Count())) // если нет такого пациента, то ничего не делаем
return;
my[ID].IsStay = isStay; // снятие/постановка
}
public void Visit(int ID, DateTime date, string diagnose) // обращение пациента в больницу
{
if ((ID < 0) || (ID > my.Count())) // если нет такого пациента, то ничего не делаем
return;
my[ID].Visit(date, diagnose);
}
public int main()
{
char a;
{
System.Console.Clear();
System.Console.WriteLine("\tБольница \n");
System.Console.WriteLine("1. Добавить пациента");
System.Console.WriteLine("2. Вывести список пациентов");
System.Console.WriteLine("3. Удалить Пациента");
System.Console.WriteLine("4. Обращение пациента");
System.Console.WriteLine("5. постановка/снятие пациента с учета");
System.Console.WriteLine("\n0. выход");
a = System.Console.ReadKey().KeyChar;
switch (a)
{
case '1':
{
System.Console.Clear();
System.Console.WriteLine("Введите имя: ");
string name = Console.ReadLine();
System.Console.WriteLine("Введите фамилию: ");
string lastname = Console.ReadLine();
System.Console.WriteLine("Введите отчество: ");
string patronymic = Console.ReadLine();
System.Console.WriteLine("Введите адрес: \n");
System.Console.WriteLine("город: ");
string _city = Console.ReadLine();
System.Console.WriteLine("Улица: ");
string _street = Console.ReadLine();
System.Console.WriteLine("Дом: ");
byte _house = byte.Parse(Console.ReadLine());
System.Console.WriteLine("Квартира: ");
byte _flat = byte.Parse(Console.ReadLine());
Adress adress = new Adress(_street, _city, _house, _flat);
AddPatient(name, lastname, patronymic, adress);
break;
}
case '2':
{
for (int i = 0; i < my.Count; i++)
{
System.Console.Clear();
System.Console.WriteLine("ID: "+i);
System.Console.WriteLine("FIO: "+my[i].FIO);
System.Console.WriteLine("Учет: "+my[i].IsStay);
}
System.Console.ReadKey();
break;
}
case '3':
{
System.Console.Clear();
System.Console.WriteLine("Напишите номер записи которую хотите удалить: ");
int i = int.Parse(System.Console.ReadLine());
my.RemoveAt(i);
}
break;
case '4':
{
System.Console.Clear();
System.Console.WriteLine("Введите номер пациента: ");
int i = int.Parse(System.Console.ReadLine());
System.Console.WriteLine("Введите диагноз: ");
string s = System.Console.ReadLine();
Visit(i, DateTime.Today, s);
}
break;
case '5' :
{
System.Console.Clear();
System.Console.WriteLine("Введите номер пациента: ");
int i = int.Parse(System.Console.ReadLine());
my[i].IsStay = !my[i].IsStay;
}
break;
}
} while (a != '0') ;
return 0;
}
}
}Решение задачи: «"OOP.Hospital.Adress" не содержит конструктор, который принимает аргументы "4" E:\OOP\OOP\Program.cs»
textual
Листинг программы
internal struct Adress
{
private string city; // город
private byte flat; //# кваритры
private byte house; // номер дома
private string street; //улица
public Adress(string _street, string _city, byte _house, byte _flat) //конструктор структуры адреса
{
street = _street;
city = _city;
house = _house;
flat = _flat;
}
}