Добавить класс клиент в котором использовать клиентский статический и динамический метод - C#
Формулировка задачи:
Ребята , вообщем сдавал лабораторную работу, и на пункте 4 чёт я подзастрял.Объясните пожалуйста что такое класс клиент вообще и как мне его сюда в мой код добавить ?
Задание:
1. Добавить класс потомок;
2. Добавить метод реализуемый в потомке
3. Использовать в классе потомке доступ к полям базового класса
4.
Добавить класс клиент в котором использовать клиентский статический и динамический ме- тод.using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication19
{
class Person // класс в котором использован клиентский статический и динамический метод.
{
public string Name;
static public int Age;
public Person(string name, int age)
{
this.Name = name;
Age = age;
Console.WriteLine("\nИмя: " + Name);
}
public static void ShowInfo()
{
Console.WriteLine("Возраст: " + Age);
}
}
class Student : Person
{
public string HighSchoolName;
public bool Status;
// Передачапараметроввбазовыйконструктор
public Student(string name, int age, string hsName, bool status)
: base(name, age)
{
HighSchoolName = hsName;
Status = status;
}
public void Show()
{
// Обращение к методу базового класса, используя ключевое слово base
Person.ShowInfo();
string temp;
Console.Write("НазваниеВУЗа: " + HighSchoolName + "\n" + "Бюджет/Контракт: " + (temp = Status == true ? "1\n" : "2\n"));
}
}
class laba1
{
public laba1(int a, int b) // заполнениемассива
{
Random r = new Random();
for (int i = 0; i < a; i++)
for (int j = 0; j < b; j++)
Matrix[i, j] = r.Next(-100, 100);
}
public int[,] Matrix = new int[100, 100];
public void Vivod(int c, int d) //методвыводаматрицы
{
//выводимматрицу
for (int i = 0; i < c; i++)
{
for (int j = 0; j < d; j++)
Console.Write(Matrix[i, j] + "\t");
Console.WriteLine("");
}
}
public int this[int i, int j] // индексатормассива
{
get { return Matrix[i, j]; }
set { Matrix[i, j] = value; }
}
}
class podmatrix
{
public podmatrix(ref int[,] matr, int a, int b)
//в конструктор передаём параметры: указатель на исходную матрицу, длинну ширину создаваемой матрицы
{
A = a; B = b;
for (int i = 0; i < a; i++)
for (int j = 0; j < b; j++)
Array[i, j] = matr[i, j]; //передаём элементы исходную матрицы в подматрицу
}
private int A, B; // А,В - размер матрицы
private int[,] Array = new int[300, 300]; //объявляемматрицу
public void showArray() //методвыводаподматрицы
{
for (int i = 0; i < A; i++)
{
for (int j = 0; j < B; j++)
Console.Write(Array[i, j] + "\t");
Console.Write("\n");
}
}
}
class mainlaba1
{
public static void Main()
{
Console.WriteLine("Авторкода:");
Student person = new Student("Валентин", 17, "КрНУ", true);
person.Show();
int a = 0, b = 0, c = 0, d = 0;
Console.WriteLine("\nКод:");
Console.WriteLine("Данаматрица: Martix[a, b]");
try
{
do
{
Console.Write("Введите количество строк a = ");
a = Int32.Parse(Console.ReadLine());
if (a > 100)
{
Console.WriteLine("Вы вышли за пределы массива ");
}
} while (a > 100);
do
{
Console.Write("Введите количество столбцов b = ");
b = Int32.Parse(Console.ReadLine());
if (b > 100)
{
Console.WriteLine("Вы вышли за пределы массива ");
}
} while (b > 100);
}
catch
{
Console.WriteLine("Неверный ввод");
}
laba1 rev = new laba1(a, b);
rev.Vivod(a, b);
try
{
Console.WriteLine("Доступ к элементу массива по индексу:");
Console.Write("Введите индекс строки матрицы:");
a = Convert.ToInt32(Console.ReadLine());
Console.Write("Введите индекс столбца матрицы:");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(+rev[a - 1, b - 1]);
Console.WriteLine("Выводим на экран подматрицу:");
Console.WriteLine("Данаматрица: PodMatr[c, d]");
do
{
Console.Write("Введите количество строк подматрицы с= ");
c = Int32.Parse(Console.ReadLine());
if (c > 300)
{
Console.WriteLine("Вы вышли за пределы массива ");
}
} while (c > 300);
do
{
Console.Write("Введите количество столбцов подматрицы d = ");
d = Int32.Parse(Console.ReadLine());
if (d > 300)
{
Console.WriteLine("Вы вышли за пределы массива");
}
} while (d > 300);
}
catch { Console.WriteLine("Неверный ввод"); }
podmatrix A = new podmatrix(ref rev.Matrix, c, d);
A.showArray();
Console.ReadKey();
}
}
}
http://www.intuit.ru/studies/courses/1076/429/lecture/9732?page=2
почитал на интуите , по сути класс Student клиент класса Person , так ?
Решение задачи: «Добавить класс клиент в котором использовать клиентский статический и динамический метод»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication19
{
class Person
{
public string name;
static public int Age;
public Person(string name, int age)
{
this.name = name;
Age = age;
}
public void ShowName()
{
Console.WriteLine("Имя: " + name);
}
}
class Client : Person
{
public string HighSchoolName;
public bool Status;
// Передача параметров в базовый конструктор
public Client(string name, int age, string hsName, bool status)
: base(name, age)
{
HighSchoolName = hsName;
Status = status;
}
public void ShowInfo()
{
//Обращение к методу базового класса используя ключевое слово base
base.ShowName();
string temp;
Console.Write("Название ВУЗа: " + HighSchoolName + "\n" + "Бюджет/Контракт: " + (temp = Status == true ? "1\n" : "2\n"));
}
public static void ShowAge()
{
Console.WriteLine("Возраст: " + Age);
}
}
class mainlaba1
{
public static void Main()
{
Console.WriteLine("Авторкода:");
Client client = new Client("Валентин", 17, "КрНУ", true);
Client.ShowAge();
client.ShowInfo();
Console.ReadKey();
}
}
}