Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
student2ks
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 7
1

граф сцепления

09.04.2013, 20:08. Просмотров 537. Ответов 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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lr7
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Console.Write("\nВведите размер матрицы 1:");
            int m = Convert.ToInt32(System.Console.ReadLine());
            int n = Convert.ToInt32(System.Console.ReadLine());
            int [,] mas = new int[m,n];
            vvod(ref mas, m, n);
            printMatr(mas);
 
            System.Console.Write("\nВведите размер матриц 2:");
            m = Convert.ToInt32(System.Console.ReadLine());
            n = Convert.ToInt32(System.Console.ReadLine());
            int[,] mas2 = new int[m, n];
            vvod(ref mas2, m, n);
            printMatr(mas2);
 
            add(mas, mas2);
            sub(mas, mas2);
            mul(mas, mas2);
            sumEl(mas);
            System.Console.ReadKey();
        }
        //---------------------------------------------------------------------------------
        static void vvod(ref  int [,] matr , int strokaCount, int stolbecCount)
        {
            System.Console.WriteLine("\n-------------------------------------------");
            for (int i = 0; i < strokaCount; i++)
                for (int j = 0; j < stolbecCount; j++)
                {
                    System.Console.Write("Matr[" + i + "][" + j + "] =");
                    matr[i,j] = Convert.ToInt32(System.Console.ReadLine());
                }
            System.Console.WriteLine("\n-------------------------------------------");
        }
        //--------------------------------------------------------------------------------
        static void printMatr(int[,] Matr)
        {
            System.Console.WriteLine();
            for (int i = 0; i < Matr.GetLength(0); i++)
            {
                System.Console.WriteLine();
                for (int j = 0; j < Matr.GetLength(1); j++)
                {
                    System.Console.Write(Matr[i,j]+"\t");
                }
            }
 
        }
        //--------------------------------------------------------------------------------
        static void add(int[,] matr1, int[,] matr2)
        {
            if (matr1.GetLength(0) != matr2.GetLength(0) || matr1.GetLength(1) != matr2.GetLength(1))
            {
                System.Console.WriteLine("\nРазные размеры матриц, нельзя сложить!");
            }
            else
            {
                int[,] res = new int[matr1.GetLength(0), matr1.GetLength(1)];
                for (int i = 0; i < matr1.GetLength(0); i++)
                    for (int j = 0; j < matr1.GetLength(1); j++)
                        res[i, j] = matr1[i, j] + matr2[i, j];
                System.Console.WriteLine("\nРезультат суммы матриц");
                printMatr(res);
            }
        }
        //--------------------------------------------------------------------------------
        static void mul(int[,] a, int[,] b)
        {
            if (a.GetLength(1) != b.GetLength(0))
            {
                System.Console.WriteLine("\nМатрицы нельзя перемножить");
            }
            else
            {
                int[,] r = new int[a.GetLength(0), b.GetLength(1)];
                for (int i = 0; i < a.GetLength(0); i++)
                {
                    for (int j = 0; j < b.GetLength(1); j++)
                    {
                        for (int k = 0; k < b.GetLength(0); k++)
                        {
                            r[i, j] += a[i, k] * b[k, j];
                        }
                    }
                }
                System.Console.WriteLine("\n-----Результат умножения-----\n");
                printMatr(r);
            }
        }
        //--------------------------------------------------------------------------------
        static void sub(int[,] matr1, int[,] matr2)
        {
            if (matr1.GetLength(0) != matr2.GetLength(0) || matr1.GetLength(1) != matr2.GetLength(1))
            {
                System.Console.WriteLine("\nРазные размеры матриц, нельзя вычесть!");
            }
            else
            {
                int[,] res = new int[matr1.GetLength(0), matr1.GetLength(1)];
                for (int i = 0; i < matr1.GetLength(0); i++)
                    for (int j = 0; j < matr1.GetLength(1); j++)
                        res[i, j] = matr1[i, j] + matr2[i, j];
                System.Console.WriteLine("\nРезультат разности матриц");
                printMatr(res);
            }
        }
        //--------------------------------------------------------------------------------
        static void sumEl(int [,] Matr)
        {   
            int sum = 0;
            for (int i = 0; i < Matr.GetLength(0); i++)
                for (int j = 0; j < Matr.GetLength(1); j++)
                        sum+=Matr[i,j];
            System.Console.WriteLine("\nСумма элементов "+sum);
        }
        //--------------------------------------------------------------------------------
    }
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2013, 20:08
Ответы с готовыми решениями:

Граф библиотека
Привет всем, не могу понять малеха задание вот Входные данные направлен ациклический граф (DAG)....

Граф коммутаторов
Здравствуйте! Требуется - построить граф, каждый узел которого является коммутатором. У...

Неориентированный граф
Неориентированный граф представляет собой схему встреч между людьми.После ввода графа...

Сегментация изображений (граф)
Привет. Задали задание сложное в универе, буду благодарен за подсказки или код. Нужно сделать...

Граф и компоненты связности
Дан граф, который состоит из нескольких компонентов связности. Найти компоненты связности,...

3
НеСказочник
58 / 46 / 13
Регистрация: 12.11.2012
Сообщений: 367
Записей в блоге: 2
10.04.2013, 00:37 2
А встроенной диаграммой классов в Visual Studio совсем не судьба воспользоваться?

PS: Там инструмент такой есть, который сам тебе всё построит.

Добавлено через 22 секунды
Сам часто пользуюсь, когда программы большие пишу.
0
student2ks
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 7
17.04.2013, 23:23  [ТС] 3
а немогли бы вы подсказать где именно?
0
НеСказочник
58 / 46 / 13
Регистрация: 12.11.2012
Сообщений: 367
Записей в блоге: 2
17.04.2013, 23:51 4
В Visual Studio 2008 и новее есть такая штука, как ClassDiagram. А ещё более новых и UML поддерживается. При чем система не только сама построит вам все графы и обозначит взаимодействия, но и создаст или изменит каркас исходника по новому или изменённому графу. Особенно хорошо этот инструмент прописали в Visual Ctudio 2012. У них прямо на этом упор был сделан (судя по выступлению одного из сотрудников Microsoft)
0
17.04.2013, 23:51
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2013, 23:51

ошибка сцепления строк С++
добрый вечер! Возникла проблема в программе: string str=&quot;D:\\Tab&quot;+n+&quot;.txt&quot; подчеркивает &quot;.txt&quot;...

Подскажите зависимость сцепления от скорости, массы...
Приветствую, господа! Интересно узнать график / соотношение массы трактора ( авто) к максимальной...

Ваз 2190 тресет педаль сцепления
Добрый день! После рыбалки начало трести педаль сцепления, что это может быть а самое главное на...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.