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

Составить описание класса для представления комплексных чисел. Прокомментировать код

05.01.2014, 22:51. Показов 1578. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Форумчане, помогите пожалуйста, нужно максимально подробное комментирование текстов программ.
1.Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций сложения, вычитания и умножения комплексных чисел.
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication9_2
{
    class Complex
    {
        public double r, i;
        public Complex Sum(Complex a, Complex b)
        {
            Complex res = new Complex();
            res.r = a.r + b.r;
            res.i = a.i + b.i;
            return res;
        }
 
        public Complex Multiplication(Complex a, Complex b)
        {
            Complex res = new Complex();
            res.r = a.r * b.r;
            res.i = a.i * b.i;
            return res;
        }
 
        public Complex Subtract(Complex a, Complex b)
        {
            Complex res = new Complex();
            res.r = a.r - b.r;
            res.i = a.i - b.i;
            return res;
        }
 
        public void Print(Complex a)
        {
            Console.Write("{0} + i{1}", a.r, a.i);
        }
 
        public void PrintLine(Complex a)
        {
            Console.WriteLine("{0} + i{1}", a.r, a.i);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите действительную часть первого комплексного числа: ");
            double r1 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите мнимую часть первого комплексного числа: ");
            double i1 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите действительную часть второго комплексного числа: ");
            double r2 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите мнимую часть первого комплексного числа: ");
            double i2 = Convert.ToDouble(Console.ReadLine());
            Console.Clear();
            Complex c1 = new Complex();
            Complex c2 = new Complex();
            c1.r = r1;
            c1.i = i1;
            c2.r = r2;
            c2.i = i2;
            Console.WriteLine("Введенные комплексные числа: ");
            c1.PrintLine(c1);
            c2.PrintLine(c2);
            Console.WriteLine("\nДля продолжения нажмите [Enter]");
            Console.ReadLine();
            Console.Clear();
            Console.WriteLine("Сложение комплексных чисел:       {0} + {1}i", c1.Sum(c1, c2).r, c1.Sum(c1, c2).i);
            Console.WriteLine("Умножение комплексных чисел:      {0} * {1}i", c1.Multiplication(c1, c2).r, c1.Multiplication(c1, c2).i);
            Console.WriteLine("Вычитание комплексных чисел:      {0} - {1}i", c1.Subtract(c1, c2).r, c1.Subtract(c1, c2).i);
            Console.WriteLine("\nДля выхода из программы нажмите [Enter]");
            Console.ReadLine();
        }
    }
}
2.В одномерном массиве состоящем из n целочисленных элементов, вычислить:
-номер максимального элемента массива
-произведение элементов массива, расположенных между первым и вторым нулевыми элементами
Преобразовать массив таким образом, чтобы в его первой половине располагались элементы, стоявшие в нечетных позициях, а во второй половине – стоявшие в четных позициях.
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplicationdsmassiv
{
    class Function
    {
        //функция печати массива на экран
        public static void PrintArray(int[] a)
        {
            foreach (int i in a) Console.Write(i + "  ");
            Console.WriteLine();
        }
        //----------------------------------------------
 
        //функция поиска максимального элемента в массиве
        public int IndexOfMaxElement(int[] a, int size)
        {
            int max = a[0];
            int index = 0;
            for (int i = 0; i < size; i++)
            {
                if (a[i] > max)
                {
                    max = a[i];
                    index = i;
                }
            }
            return index;
        }
        //-----------------------------------------------------
 
        //функция поиска индексов левого и правого нулей
        public void ZeroIndex(int[] a, int size, out int leftIndex, out int rightIndex)
        {
            leftIndex = rightIndex = 0;
            //в данном цикле находится индекс самого левого нуля
            for (int i = 0; i < size; i++)
            {
                if (a[i] == 0)
                {
                    leftIndex = i;
                    break;
                }
            }
            //----------------------------------------------
            //в данном цикле находится индекс самого правого нуля
            for (int i = size - 1; i >= 0; i--)
            {
                if (a[i] == 0)
                {
                    rightIndex = i;
                    break;
                }
            }
            //------------------------------------------------------
        }
        //-----------------------------------------------------
 
        //функция находит произведение элементов между крайними нулями
        public int Proizvedenie(int[] a, int leftIndex, int rightIndex)
        {
            int proiz = 1;
            for (int i = leftIndex + 1; i < rightIndex; i++) proiz *= a[i];
            return proiz;
        }
        //-------------------------------------------------------------
 
        //функция перестановки элементов в массиве
        public void Exchange(int[] a, int size)
        {
            int temp; //для обмена значений
            for (int i = 0, j = 1; i < size / 2; i++, j += 2)
            {
                temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }
        }
        //------------------------------------------------------------
    }
 
    class MainClass
    {
        static void Main()
        {
            const int arraySize = 10;               //размер массива
            int[] array = new int[arraySize] { 2, 22, 0, 4, 7, 25, 0, 8, 9, 4 };  //сам массив
            Function function = new Function();
            int leftIndex, rightIndex;
            Console.WriteLine("Исходный массив:" + Environment.NewLine);
            Function.PrintArray(array);
            Console.WriteLine();
 
            Console.Write("Номер максимального элемента в массиве: " +
                           function.IndexOfMaxElement(array, arraySize) +
                           Environment.NewLine);
            function.ZeroIndex(array, arraySize, out leftIndex, out rightIndex);
            Console.WriteLine("Произведение элементов, находящихся между крайними нулями: " +
                               function.Proizvedenie(array, leftIndex, rightIndex) +
                               Environment.NewLine);
 
            Console.WriteLine("Массив после перестановки элементов: " + Environment.NewLine);
            function.Exchange(array, arraySize);
            Function.PrintArray(array);
            Console.ReadKey();
        }
    }
3.Дана целочисленная прямоугольная матрица. Определить количество столбцов, не содержащих ни одного нулевого элемента. Характеристикой строки целочисленной матрицы назовем сумму её положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace dssadanie3
{
    class Program
    {
        static void Main(string[] args)
        {
            int str = 4, stolb = 4;
            int[,] massiv = new int[str, stolb];
            Random rnd = new Random();
 
            // Задаем случайную матрицу и выводим на экран
            for (int i = 0; i < str; ++i)
            {
                for (int j = 0; j < stolb; ++j)
                {
                    massiv[i, j] = rnd.Next(0, 10);
                    Console.Write(" \t" + massiv[i, j]);
                }
                Console.WriteLine();
            }
 
            // Перебираем каждый элемент матрицы и если он равен 0, тогда инкрементируем локальную переменную kolElem и 
            // выводим потом на экран в каждой строке. Если строка не содержит нулевые элементы матрицы, инкрементируем 
            // локальную переменную kolStr
            int kolElem = 0;
            int kolStr = 0;
            for (int j = 0; j < stolb; ++j)
            {
                for (int i = 0; i < str; ++i)
                {
                    if (massiv[i, j] == 0)
                    {
                        ++kolElem;
                    }
                }
                Console.WriteLine("Столбец {0} содержит {1} нулевых элементов", (j + 1), kolElem);
                if (kolElem == 0)
                {
                    ++kolStr;
                }
                else
                {
                    kolElem = 0;
                }
            }
 
            // Выводим на экран локальную переменную kolStr
            Console.WriteLine("Количество столбцов, не содержащих нулевые элементы: " + kolStr);
            Console.WriteLine();
 
            //Находим максимальное значение в матрице
            int maxElem = 0;
            int kolVstrech = 0;
            for (int i = 0; i < str; ++i)
            {
                for (int j = 0; j < stolb; ++j)
                {
                    if (massiv[i, j] == maxElem)
                    {
                        ++kolVstrech;
                    }
 
                    if (massiv[i, j] > maxElem)
                    {
                        maxElem = massiv[i, j];
                        kolVstrech = 1;
                    }
 
                }
            }
            while (kolVstrech < 2)
            {
                if (kolVstrech <= 1)
                {
                    Console.WriteLine("Максимальное значение: {0} не повторяется в матрице, поэтому ищем новое максимальное значение, которое встречается два или более раз", maxElem);
                    int maxElemPrediduschiy = maxElem;
                    maxElem = 0;
                    kolVstrech = 0;
                    for (int i = 0; i < str; ++i)
                    {
                        for (int j = 0; j < stolb; ++j)
                        {
                            if ((massiv[i, j] == maxElem) && (massiv[i, j] < maxElemPrediduschiy))
                            {
                                ++kolVstrech;
                            }
 
                            if ((massiv[i, j] > maxElem) && (massiv[i, j] < maxElemPrediduschiy))
                            {
                                maxElem = massiv[i, j];
                                kolVstrech = 1;
                            }
 
                        }
                    }
                }
            }
 
            // Находим максимальное 
            Console.WriteLine("Максимальный элемент: {0}, встречается {1} раз(а)", maxElem, kolVstrech);
            Console.ReadKey();
        }
    }
}
4.Написать программу, которая считывает текст из файла и выводит на экран предложения, содержащие максимальное количество знаков пунктуации.
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
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace zadanie4
{
    class Program
    {
        static void Main(string[] args)
        {
            char[] separators = { '.', '!', '?' };
            string[] sentences = File.ReadAllText(@"C:\test.txt",
                Encoding.Default).Split(separators, StringSplitOptions.RemoveEmptyEntries);
 
            int[] coutComas = new int[sentences.Count()];
            for (int i = 0; i < sentences.Count(); i++)
                coutComas[i] = sentences[i].Split(',').Count() - 1;
 
            int maxComas = coutComas.Max();
 
            for (int i = 0; i < sentences.Count(); i++)
                if (coutComas[i] == maxComas)
                    Console.Write(sentences[i]);
 
            Console.ReadKey();
        }
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.01.2014, 22:51
Ответы с готовыми решениями:

Составить описание класса для представления комплексных чисел
Необходимо составить описание класса для представления комплексных чисел с возможностью задания вещественной и мнимой частей как числами...

Составить описание класса для представления комплексных чисел
Составить описание класса для представления комплексных чисел. Предусмотреть свойство для получения значения числа. Обеспечить перегрузку...

Составить описание класса для представления комплексных чисел
Здравствуйте. Помогите пожалуйста реализовать меню в программе. Тут написан класс по заданию: Составить описание класса для...

3
1 / 1 / 0
Регистрация: 24.11.2013
Сообщений: 142
07.01.2014, 19:06  [ТС]
Всем спасибо за помощь!

Добавлено через 2 часа 37 минут
Помогите хотя бы 4 программу прокомментировать
0
 Аватар для Temirlan90
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
08.01.2014, 08:48
4)
Кликните здесь для просмотра всего текста
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
using System;
using System.IO;
using System.Linq;
using System.Text;
 
namespace CyberForumTasks
{
    class Program
    {
        static void Main(string[] args)
        {
            // Символьный массив разделителей для знаков . ! ?
            char[] separators = { '.', '!', '?' };
            // Строковый массив, в массив передается контент файла test.txt
            string[] sentences = File.ReadAllText(@"C:\test.txt",
                Encoding.Default).Split(separators, StringSplitOptions.RemoveEmptyEntries);
            // Считаем количество элементов в массиве sentences
            int[] coutComas = new int[sentences.Count()];
            // Считаем запятые с массива sentences
            for (int i = 0; i < sentences.Count(); i++)
                coutComas[i] = sentences[i].Split(',').Count() - 1;
            // Находим элемент с максимальным количесвтом запятых
            int maxComas = coutComas.Max();
            // Выводим данную строку
            for (int i = 0; i < sentences.Count(); i++)
                if (coutComas[i] == maxComas)
                    Console.Write(sentences[i]);
 
            Console.ReadKey();
        }
    }
}
1
1 / 1 / 0
Регистрация: 24.11.2013
Сообщений: 142
08.01.2014, 11:16  [ТС]
Temirlan90, спасибо огромное! Хоть вы помогли.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.01.2014, 11:16
Помогаю со студенческими работами здесь

Составить описание класса для представления комплексных чисел
Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций сложения, вычитания и умножения комплексных...

Описание класса для представления комплексных чисел
Здравствуте! Помогите составить описание класса для представления комплексных чисел. При этом необходимо разработать методы-свойства для...

Описание класса для представления комплексных чисел
Принялся за очередную лабу и вот... Помогите разобраться немного с понятием описание класса. В общем задача: -составить описание...

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

Составить описание класса для представления комплексных чисел
Нужна помощь новичку:-| Задание было такое Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru