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

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

05.01.2014, 22:51. Показов 1588. Ответов 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
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru