Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 25.10.2021
Сообщений: 33

Найти периметр и площадь треугольника

13.10.2022, 12:59. Показов 499. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В ответе всегда выходит 0, где я совершил ошибку при создании классов
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp1
{
    class Treyg
    {
        private double S, P,x1, x2, y1, y2;
        public Treyg()
        {
            Console.Write("Введите значения\nВершины А - x1 = ");
             x1 = Convert.ToDouble(Console.ReadLine());
            Console.Write("y1 = ");
             y1 = Convert.ToDouble(Console.ReadLine());
 
            Console.Write("Вершины B - x2 = ");
             x2 = Convert.ToDouble(Console.ReadLine());
            Console.Write("y2 = ");
             y2 = Convert.ToDouble(Console.ReadLine());
 
            Console.Write("Вершины C - x3 = ");
            double x3 = double.Parse(Console.ReadLine());
            Console.Write("y3 = ");
            double y3 = double.Parse(Console.ReadLine());
        }
        public void Plosh()
       {
            double x2=0, x1=0, y1=0, y2=0, y3=0, x3=0;
 
 
            S = 0.5 * Math.Abs((x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1));
 
            Console.WriteLine("Площадь треугольника равна:{0} " ,S);
            
            }
 
        public void Perim()
        {
            double AB, BC, AC, x2 = 0, x1 = 0, y1 = 0, y2 = 0, y3 = 0, x3 = 0; ;
 
            AB = Math.Sqrt(Math.Pow((x2 - x1), 2) + Math.Pow((y2 - y1), 2));
            AC = Math.Sqrt(Math.Pow((x3 - x1), 2) + Math.Pow((y3 - y1), 2));
            BC = Math.Sqrt(Math.Pow((x3 - x2), 2) + Math.Pow((y3 - y2), 2));
 
            P = AB + AC + BC;
 
            Console.WriteLine("Периметр треугольника: " + P);
            Console.ReadKey();
        }
        static void Main(String[] args)
        {
            Treyg imya = new Treyg();
            imya.Plosh();
            imya.Perim();
        }
        }
    }
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.10.2022, 12:59
Ответы с готовыми решениями:

Найти периметр и площадь треугольника
Заданы координаты трех вершин треугольника (x1, y1) , (x2 , y2 ) , (x3, y3 ) . Найти его периметр и площадь.

Найти периметр и площадь треугольника по формуле Герона
Здравствуйте! Помогите пожалуйста. Даны стороны a, b и c найти периметр и площадь по формуле герона. Программа на консульном...

Найти площадь равностороннего треугольника, зная его периметр
Найти площадь равностороннего треугольника, зная его периметр

3
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
13.10.2022, 13:36
Felixrx, в методах Plosh() и Perim() инициализируете переменные x1 x2 x3 y1 y2 y3 нулями.
0
0 / 0 / 0
Регистрация: 25.10.2021
Сообщений: 33
14.10.2022, 10:06  [ТС]
Немного переделал и не высчитывает Площадь ¯\_(ツ)_/¯
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp1
{
    class Treyg
    {
        private readonly double S;
        private double P;
        private double a;
        private double b;
        private double c;
 
        public Treyg()
        {
            Console.Write("Введите А - ");
            a = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите B - ");
            b = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите C - ");
            c = Convert.ToDouble(Console.ReadLine());
        }
        public void Plosh()
        {
            double S = (P * (P - a) * (P - b) * (P - c));
 
            Console.WriteLine("Площадь треугольника: " + S);
 
        }
        public void Perim()
       {
 
 
 
            double P =(a + b + c) / 2;
 
            Console.WriteLine("Периметр треугольника равен: " + P);
            
            }
 
        static void Main(String[] args)
        {
            Treyg imya = new Treyg();
            imya.Plosh();
            imya.Perim();
            Console.ReadKey();
        }
 
        }
    }
0
740 / 622 / 151
Регистрация: 04.03.2022
Сообщений: 1,272
14.10.2022, 15:59
Лучший ответ Сообщение было отмечено Felixrx как решение

Решение

C#
1
double P =(a + b + c) / 2;
Тут ты объявляешь локальную переменную P. Та, которая Treyg.P остается неинициализированой. Добавь эту строку в метод расчета площади - и будет тебе счастье.
Кстати, обе формулы неправильные...

Добавлено через 4 часа 54 минуты
Например, вот:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
using System;
 
namespace ConsoleApp1
{
    class Triangle
    {
        class Treyg
        {
            private double a = 0;
            private double b = 0;
            private double c = 0;
            private double S = 0;
            private double P = 0;
 
            public Treyg(double an, double bn, double cn)
            {
                a = an;
                b = bn;
                c = cn;
                P = a + b + c;
                double PP = P / 2;
                S = Math.Sqrt(PP * (PP - a) * (PP - b) * (PP - c));
            }
            public override string ToString()
            {
                return "Периметр треугольника равен: " + P + "\nПлощадь треугольника: " + S;
            }
        }
 
        static void Main(String[] args)
        {
            Console.Write("Введите А - ");
            double a = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите B - ");
            double b = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите C - ");
            double c = Convert.ToDouble(Console.ReadLine());
            Treyg imya = new Treyg(a, b, c);
            Console.WriteLine(imya.ToString());
            Console.ReadKey();
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.10.2022, 15:59
Помогаю со студенческими работами здесь

Найти периметр и площадь треугольника, заданного координатами вершин
Заданы координаты трех вершин треугольника (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь.

Найти площадь треугольника, его периметр и длину диагонали
Даны стороны прямоугольника a и b. Найти его площадь S, периметр P и длину диагонали d. , заранее благодарен

Найти стороны и периметр , площадь треугольника за его координатами
Найти стороны и периметр , площадь треугольника за его координатами помогите пожалуста

Треугольник задан координатами своих вершин. Найти периметр и площадь треугольника
Здравствуйте. При компиляции выдают ошибки: error CS0103: Имя "xc" не существует в текущем контексте error CS0103: Имя...

Заданы координаты трех вершин треугольника. Найти его периметр и площадь
Заданы координаты трех вершин треугольника (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь. Помогите с задачей


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru