Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2012, 19:06   #1
meta13
 
Регистрация: 16.11.2011
Сообщений: 9
Лампочка абстрактный класс

Всем привет, нужна помощь в задачи, звучит так:
Создать абстрактный класс Программное_обеспечение с методами, позволяющими вывести на экран информацию о программном обеспечении, а также определить соответствие возможности использования (на момент текущей даты).
Создать производные классы: Свободное (название, производитель), Условно-бесплатное (название, производитель, дата установки, срок бесплатного использования), Коммерческое (название, производитель, цена, дата установки, срок использования) со своими методами вывода информации на экран, и определения возможности использования на текущую дату.
Создать базу (массив) из n видов программного обеспечения, вывести полную информацию из базы на экран, а также организовать поиск программного обеспечения, которое допустимо использовать на текущую дату.
Исходник:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Класс_клиент // Описание класса
{
abstract class Программное_обеспечение
{
abstract public void Show();
abstract public void Poisk(string n);
}
class Свободные: Программное_обеспечение
{
protected string Naz;
protected string Prz;
public Свободные (string Naz, string Prz)
{
this.Naz=Naz;
this.Prz=Prz;
}
public override void Show()
{
Console.WriteLine();
Console.WriteLine("Svobodnue:");
Console.WriteLine("Nazvanie: "+Naz);
Console.WriteLine("Prouzvodutel: "+Prz);
}

}
class Условно_бесплатное:Свободные
{
protected string sr;
protected string data;
public Условно_бесплатное(string Naz,string Prz): base
(Naz,Prz)
{
this.sr=sr;
this.data=data;
}
public override void Show()
{
Console.WriteLine();
Console.WriteLine("Условно-бесплатное: ");
Console.WriteLine("Nazvanie: "+Naz);
Console.WriteLine("Proizvodutel: "+Prz);
Console.WriteLine("data ystanovku: "+data);
Console.WriteLine("Srok Uspolzovania: "+sr);
}
}
class Коммерческое:Свободные
{
protected string price;
public Коммерческое (string Naz, string Prz,string price, string data, string sr) : base(Naz,Prz, data,sr)
{
this.price = price;
}
public override void Show()
{
Console.WriteLine();
Console.WriteLine("Коммерческое: ");
Console.WriteLine("Nazvanie: "+Naz);
Console.WriteLine("Proizvodutel: "+Prz);
Console.WriteLine("Cena: "+price);
Console.WriteLine("data ystanovku: "+data);
Console.WriteLine("Srok Uspolzovania: "+sr);
}

public override void Poisk(string n)
{
if (this is Условно_бесплатное) if (n == this.Data)
this.Show();
else
if (this is Коммерческое) if (n == (this as Коммерческое).Data) this.Show();
}
}

}



Выдает: Ошибка 1 "Класс_клиент.Свободные" не реализует наследуемый абстрактный член "Класс_клиент.Программное_обеспечен ие.Poisk(string)" 13 12
meta13 вне форума Ответить с цитированием
Старый 21.03.2012, 19:07   #2
meta13
 
Регистрация: 16.11.2011
Сообщений: 9
По умолчанию

namespace Класс_клиент
{
class Progam
{
static Свободные Svob()
{
Console.WriteLine();
Console.WriteLine("Svobodnue: ");
Console.Write("Nazvanie: ");
string s=Console.ReadLine();
Console.Write("Proizvodutel: ");
string s1=Console.ReadLine();
return new Свободные(s,s1);
}
static Условно_бесплатное YsBs()
{
Console.WriteLine();
Console.WriteLine("Условно-бесплатное: ");
Console.WriteLine("Nazvanie: ");
string s=Console.ReadLine();
Console.WriteLine("Proizvodutel: ");
string s1=Console.ReadLine();
Console.WriteLine("Data Ystanovku: ");
string s2=Console.ReadLine();
Console.WriteLine("Data uspolzovani9: ");
string s3=Console.ReadLine();
return new Условно_бесплатное(s,s1,s2,s3);
}
static Коммерческое Kom()
{
Console.WriteLine();
Console.WriteLine("Коммерческое: ");
Console.WriteLine("Nazvanie: ");
string s=Console.ReadLine();
Console.WriteLine("Proizvodutel: ");
string s1=Console.ReadLine();
Console.WriteLine("Cena: ");
string s2=Console.ReadLine();
Console.WriteLine("Data Ystanovku: ");
string s3=Console.ReadLine();
Console.WriteLine("Data uspolzovani9: ");
string s4=Console.ReadLine();
return new Коммерческое(s,s1,s2,s3,s4);
}
static void Main(string[] args)
{
Console.Write("Введите количество кomplekt: ");
int n = int.Parse(Console.ReadLine());
Программное_обеспечение[,] ob = new Программное_обеспечение[n, 3];
for (int i = 0; i < n; i++)
{
ob[i, 0] = Svob();
ob[i, 1] = YsBs();
ob[i, 2] = Kom();
}
foreach (Программное_обеспечение a in ob)
{
a.Show();
}
Console.WriteLine();
Console.Write("Введите дату для поиска: ");
string v = Console.ReadLine();
foreach (Программное_обеспечение a in ob)
{
a.Poisk(v);
}
Console.ReadKey();
}
}
}


Продолжение кода....;как убрать ошибку?
meta13 вне форума Ответить с цитированием
Старый 22.03.2012, 19:14   #3
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

1. Оформляй код в теги Code.
2. в классе "Класс_клиент.Свободные" создай метод:
Код:
public override void Poisk(string)
3. Не советую называть классы русскими буквами, вообще не используй их в коде(кроме сообщений)
Hollander вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
c# абстрактный класс tanek Помощь студентам 1 22.02.2012 11:23
Абстрактный класс чисел Ale-X91 Общие вопросы C/C++ 2 29.07.2011 11:49
абстрактный класс С++ zhenya.ya Помощь студентам 0 05.11.2010 20:23
Наследование: абстрактный класс zak Общие вопросы C/C++ 4 22.12.2007 13:49