309 / 209 / 111
Регистрация: 14.05.2020
Сообщений: 884
1

Радиус и диаметр

21.08.2020, 04:59. Показов 568. Ответов 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <vector>
using namespace std;
 
constexpr int INF = 0x3F3F3F3F;
int min (int a, int b)
{
    return a < b ? a : b;
}
int main(void)
{
    int n, tmp; cin >> n;
    vector<vector<int>>arr(n, vector<int>(n));
    
    for(size_t i = 0; i < n; ++i)
    {
        for(size_t j = 0; j < n; ++j)
        {
            cin >> arr[i][j];
            if(arr[i][j] < 0) arr[i][j] = INF;
        }
    }
    for(size_t k = 0; k < n; ++k)
    {
        for(size_t i = 0; i < n; ++i)
        {
            for(size_t j = 0; j < n; ++j)
            {
                if(arr[i][j] > arr[i][k] + arr[k][j])
                {
                    arr[i][j] = arr[i][k] + arr[k][j];
                }
            }
        }
    }
    
    int _min = arr[0][0], max = arr[0][1];
    for(size_t i = 0; i < n; ++i)
    {
        for(size_t j = 0; j < n; ++j)
        {
            if(arr[i][j] > max and arr[i][j] != INF) max = arr[i][j];
            if(arr[i][j] < _min and arr[i][j] != INF) _min = arr[i][j];
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }
    cout << max << endl;
    cout << _min << endl;
 
    
    return 0;
}
4
0 -1 1 2
-1 0 -1 5
1 -1 0 4
2 5 4 0
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.08.2020, 04:59
Ответы с готовыми решениями:

дан радиус окружности найти её диаметр с++
Помогите Пожалуйста!!! 1) дан радиус окружности найти её диаметр 2)Считая , что Земля - идеальная...

Пусть элементами Круга являются радиус диаметр и длина окружности
Пусть элементами Круга являются радиус диаметр и длина окружности

Зная радиус, диаметр или длину окружности вычислить площадь круга
2) Пусть элементами круга является радиус (первый элемент) , диаметр (второй элемент) и длина...

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

4
2618 / 2207 / 236
Регистрация: 03.07.2012
Сообщений: 7,974
Записей в блоге: 1
21.08.2020, 08:13 2
И че это за фигня?
0
Don't worry, be happy
17148 / 10031 / 1933
Регистрация: 27.09.2012
Сообщений: 24,970
Записей в блоге: 1
21.08.2020, 11:13 3
Цитата Сообщение от VLaDoS_2001a Посмотреть сообщение
решаю с помощью алгоритма Флойда
Красава.
Цитата Сообщение от VLaDoS_2001a Посмотреть сообщение
Ошибка с радиусом
Некрасава.
0
Модератор
Эксперт по электронике
7656 / 3820 / 1483
Регистрация: 01.02.2015
Сообщений: 11,826
Записей в блоге: 2
21.08.2020, 11:30 4
В строке 29 нужно проверять еще и на неравенство INF обоих слагаемых
0
309 / 209 / 111
Регистрация: 14.05.2020
Сообщений: 884
21.08.2020, 16:16  [ТС] 5
если кому-то надо
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
#include <iostream>
#include <vector>
using namespace std;
constexpr int inf = 0x3F3F3F3F;
int main(void)
{
    int n, tmp; cin >> n;
    vector<vector<int>>g(n, vector<int>(n));
    for(size_t i = 0; i < n; ++i)
    {
        for(size_t j = 0; j < n; ++j)
        {
            cin >> g[i][j];
            if(g[i][j] < 0) g[i][j] = inf;
        }
    }
    for(size_t k = 0; k < n; ++k)
    {
        for(size_t i = 0; i < n; ++i)
        {
            for(size_t j = 0; j < n; ++j)
            {
                if(g[i][j] > g[i][k] + g[k][j])
                {
                    g[i][j] = g[i][k] + g[k][j];
                }
            }
        }
    }
    int d = 0, r = inf;
    for(size_t i = 0; i < n; ++i)
    {
        tmp = 0;
        for(size_t j = 0; j < n; ++j)
        {
            if(tmp < g[i][j]) tmp = g[i][j];
        }
        if(d < tmp) d = tmp;
        if(r > tmp) r = tmp;
    }
    cout << d << endl << r << endl;
    return EXIT_SUCCESS;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.08.2020, 16:16

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Считать радиус и выдать на печать диаметр окружности, радиус и площадь
Здравствуйте, уважаемые! Начал изучать язык С и столкнулся с задачей такой. //Напишите программу,...

Радиус,диаметр и центр графа
Подскажите, пожалуйста библиотеку, с помощью которой можно найти радиус и диаметр графа.Буду очень...

Определить диаметр, радиус и центр графа
Для определения центра, радиуса и диаметра графа, я нашел матрицу P (матрицу расстояний между...

Дан радиус окружности. Найти ее диаметр.
Помогите решить простые задачи мозги кипят: 2-я. Дан радиус окружности. Найти ее диаметр.

Найти диаметр, радиус и центры невзвешенного орграфа
Дана матрица смежности взвешенного орграфа 0, 4, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0,...

Матрица расстояний, диаметр, радиус и центр графа
Здравствуйте, помогите пожалуйста, расскажите как найти матрицу расстояний, диаметр, радиус и центр...


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

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

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