• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Чтение Информации Из Файла

  • Автор темы 203
  • Дата начала
2

203

Здравствуйте. У меня есть программа которая находит периметр и площадь круга, треугольника. Но я не могу написать код для того чтобы можно было прочитать информацию из файла вида
krug
7
treyg
4
4
6
pram
5
3
Вот то что написал. Посмотреть вложение ConsoleApplication1.rar
Помогите пожалуйста с чтением. Заранее спасибо.
 
P

polishuchka

Добавьте у классы фигур следующие методы (для круга и прямоугольника аналогично, с учетом их свойств):
public override string ToString()
{
return "treyg: " + s.ToString() + ", " + k.ToString() + ", " + b.ToString();
}

public void ReadTreyg(StreamReader sr)
{
s = Convert.ToInt32(sr.ReadLine());
k = Convert.ToInt32(sr.ReadLine());
s = Convert.ToInt32(sr.ReadLine());
}
В program.cs такой текст:
string sdir = Directory.GetCurrentDirectory();
sNameFile = sdir + @"\GeometrychniFigury.txt";
treyg t1n ;
Kryg k1n ;
pram p1n;
StreamReader sr = new StreamReader(sNameFile);
while (sr.Peek() >= 0) // Зчитуємо рядки допоки вони є у файлі
{
string s = sr.ReadLine();
if (s == "treyg")
{
t1n = new treyg(0, 0, 0);
t1n.ReadTreyg(sr);
Console.WriteLine(t1n.ToString ());
}
if (s == "kryg")
{
k1n = new Kryg(0);
k1n.ReadKryg(sr);
Console.WriteLine(k1n.ToString ());
}
if (s == "pram")
{
p1n = new pram(0, 0);
p1n.ReadPram(sr);
Console.WriteLine(p1n.ToString ());
}

}
Console.ReadKey();
Для треугольника :
public override double ploshad()
{
// Площадь треугольника через периметр:
double p=(s+k+:KillMe:/2.0;
return Math.Sqrt(p * (p - s) * (p - k) * (p - :angry:);

}
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!