Форум программистов, компьютерный форум CyberForum.ru

Соединение 3 в 1-ну - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 19:59     Соединение 3 в 1-ну #1
1. Даны три числа {A,B,C}. Разработать алгоритм поиска наименьшего значения из {|a-b|}, {|a-c|}, {|b-c|}.
2. Из положительный элементов массива T(14) выбрать наименьший по значению элемент и поменять местами с 3-м элементов этого массива.
3. Определить минимальный положительный элемент главной диагонали матрицы A(5,5) и заменить все элементы строки и столбца, в котором он находится, числом K.

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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#include "StdAfx.h" //не относиться, к программе.
 
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>
 
 
 
using namespace std;
 
 
int task1() 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                cout << "Input element T[ " << i << " ] - ";    
                T[ i ] = rand() % 21 - 10;
                cout << T[ i ] << endl;
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ )
                cout << setw( 4 ) << T[ i ];
        
        int index = 0;
 
        for ( int i = 1; i < arrSize; i++ ) { 
                if ( T[ i ] >= 0 && T[ index ] < 0 ) {
                        index = i;
                }
                else if ( T[ i ] >= 0 && T[ index ] >= 0 && T[ i ] < T[ index ] ) {
                        index = i;
                }
        }       
 
        if ( T[ index ] < 0 ) 
                index = -1;
 
        if ( index >= 0 ) {
                cout << "\n\nMinimal element of array T[ " << index << " ] - " << T[ index ] << endl;
                int temp = T[ 2 ];
                T[ 2 ] = T[ index ];
                T[ index ] = temp;
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ) 
                        cout << setw( 4 ) << T[ i ];
                cout << endl << endl;
        }
        else
                cout << "\n\nAn array does not have positive elements\n\n";
}
 
int task2() 
 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ][ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                for ( int j = 0; j < arrSize; j++ ) { 
                        //cout << "Input element T[ " << i << " ][ " << j << " ] - ";   
                        T[ i ][ j ] = rand() % 21 - 10;
                        //cout << T[ i ] << endl;               
                } 
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ ){
                for ( int j = 0; j < arrSize; j++ ) 
                        cout << setw( 4 ) << T[ i ][ j ];
                cout << endl;
        }
        
        int indexRowCol = 0;
 
        for ( int i = 0; i < arrSize; i++ ) { 
                if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] < 0 ) {
                        indexRowCol = i;
                }
                else if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] >= 0 && T[ i ][ i ] < T[ indexRowCol ][ indexRowCol ] ) {
                        indexRowCol = i;
                }
        }       
 
        cout << "Index - " << indexRowCol << endl;
 
        if ( T[ indexRowCol ][ indexRowCol ] < 0 ) 
                indexRowCol = -1;
 
        if ( indexRowCol >= 0 ) {
                cout << "\n\nMinimal element of main diagonal in matrix T[ " << indexRowCol << " ][ " 
                          << indexRowCol << " ] is " << T[ indexRowCol ][ indexRowCol ] << endl;
                int temp = T[ indexRowCol ][ indexRowCol ];
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                if ( i == indexRowCol || j == indexRowCol) 
                                        T[ i ][ j ] = temp;
                }
 
 
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                cout << setw( 4 ) << T[ i ][ j ];
                        cout << endl;
                }
                cout << endl << endl;
        }
        else
                cout << "\n\nMatrix does not have positive elements in main diagonal\n\n";
}
 
#include "StdAfx.h"
 
#include <iostream>
#include <cmath>
#include <algorithm>
 
int task3 ()
{
    const int SIZE = 3;
    int MAS [SIZE];
    int a, b, c;
 
    std::cin >> a >> b >> c;
 
    MAS[0] = fabs (a-b);
    MAS[1] = fabs (a-c);
    MAS[2] = fabs (b-c);
 
    std::cout << *std::max_element (MAS, MAS + SIZE);
    return 0;
}
 
int main () 
{
task1();
task2();
task3();
}
Вывод:
1>------ Построение начато: проект: Zadacha1, Конфигурация: Debug Win32 ------
1> Zadacha1.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(132): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(133): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(134): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

В чём может быть проблема?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2011, 19:59     Соединение 3 в 1-ну
Посмотрите здесь:

C++ Соединение отрезков
C++ соединение символов ?
Соединение Strings C++
C++ Соединение с базой Oracle
C++ соединение с БД C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
27.03.2011, 20:06     Соединение 3 в 1-ну #2
132-134 замени на
C++
1
2
3
MAS[0] = fabs (static_cast<double>(a-b));
MAS[1] = fabs (static_cast<double>(a-c));
MAS[2] = fabs (static_cast<double>(b-c));
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 20:16  [ТС]     Соединение 3 в 1-ну #3
Не помогло

1>------ Построение начато: проект: Zadacha1, Конфигурация: Debug Win32 ------
1> Zadacha3.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(15): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(16): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(17): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1> Zadacha1.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(127): warning C4244: =: преобразование "double" в "int", возможна потеря данных
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(128): warning C4244: =: преобразование "double" в "int", возможна потеря данных
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(129): warning C4244: =: преобразование "double" в "int", возможна потеря данных
1> Создание кода...
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(57): error C4716: task1: должна возвращать значение
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(118): error C4716: task2: должна возвращать значение
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 20:25     Соединение 3 в 1-ну #4
Цитата Сообщение от qheff Посмотреть сообщение
fabs: неоднозначный вызов перегруженной функции
он же тебе ясно пишет не знает какую функцию подставить
есть

Цитата Сообщение от qheff Посмотреть сообщение
может быть "long double fabs(long double)"
Цитата Сообщение от qheff Посмотреть сообщение
float fabs(float)"
Цитата Сообщение от qheff Посмотреть сообщение
double fabs(double)"
а у тебя int
приводи вручную например так
C++
1
MAS[0] = fabs (double(a-b));
массив MAS тоже надо переопределить fabs не возврашает int

Добавлено через 1 минуту
Цитата Сообщение от qheff Посмотреть сообщение
task1: должна возвращать значение
надо что то вернуть хотя бы return 0
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 20:32  [ТС]     Соединение 3 в 1-ну #5
[QUOTE=ValeryS;1492489]он же тебе ясно пишет не знает какую функцию подставить
есть
а у тебя int
приводи вручную например так
C++
1
MAS[0] = fabs (double(a-b));
массив MAS тоже надо переопределить fabs не возврашает int

Можно описать поподробнее как это сделать?
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 20:36     Соединение 3 в 1-ну #6
C++
1
2
3
4
5
6
7
....................................
double MAS [SIZE];
.......................................
 MAS[0] = fabs (double(a-b));
    MAS[1] = fabs (double(a-c));
    MAS[2] = fabs (double(b-c));
..........................................
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 20:41  [ТС]     Соединение 3 в 1-ну #7
Спасибо, стало меньше:
1>------ Построение начато: проект: Zadacha1, Конфигурация: Debug Win32 ------
1> Zadacha3.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(15): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(16): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(17): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1> Zadacha1.cpp
1> Создание кода...
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(55): error C4716: task1: должна возвращать значение
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(116): error C4716: task2: должна возвращать значение
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

теперь про task можно?
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 20:52     Соединение 3 в 1-ну #8
Цитата Сообщение от qheff Посмотреть сообщение
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(15): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(16): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(17): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
Это поменьше ????
Ты все сделал как я написал ?
вот кусок твоей программы который я скомпилил(правда упростил для теста)
C++
1
2
3
4
5
6
7
8
 int a=5;
 int b=7;
 int c=15;
  
  double MAS [3];
    MAS[0] = fabs (double(a-b));
    MAS[1] = fabs (double(a-c));
    MAS[2] = fabs (double(b-c));
все работает без ошибок

Цитата Сообщение от qheff Посмотреть сообщение
теперь про task можно?

Цитата Сообщение от qheff Посмотреть сообщение
int task1()
у тебя описано что функция возвращает значение int
а реализации нет возвращаемого значения
напиши хотя бы
C++
1
return 0
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 21:32  [ТС]     Соединение 3 в 1-ну #9
Цитата Сообщение от ValeryS Посмотреть сообщение
Это поменьше ????
Ты все сделал как я написал ?
вот кусок твоей программы который я скомпилил(правда упростил для теста)
C++
1
2
3
4
5
6
7
8
 int a=5;
 int b=7;
 int c=15;
  
  double MAS [3];
    MAS[0] = fabs (double(a-b));
    MAS[1] = fabs (double(a-c));
    MAS[2] = fabs (double(b-c));
все работает без ошибок

у тебя описано что функция возвращает значение int
а реализации нет возвращаемого значения
напиши хотя бы
C++
1
return 0
Не помогло, к сожалению. Исправил всё что вы сказали.

Добавлено через 34 минуты
Идей нету, что дальше делать?
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 21:47     Соединение 3 в 1-ну #10
int a, b, c;
поменяй
double a, b, c;

то что ты привел в 1 посте это и есть твоя программа 1 файлом?
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 21:50  [ТС]     Соединение 3 в 1-ну #11
Цитата Сообщение от ValeryS Посмотреть сообщение
int a, b, c;
поменяй
double a, b, c;

то что ты привел в 1 посте это и есть твоя программа 1 файлом?
Нет, это три программы, в одном файле.

Добавлено через 2 минуты
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
128
129
130
131
132
133
134
135
136
137
138
#include "StdAfx.h" //не относиться, к программе.
 
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>
#include <cmath>
#include <algorithm>
 
using namespace std;
 
 
int task1() 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                cout << "Input element T[ " << i << " ] - ";    
                T[ i ] = rand() % 21 - 10;
                cout << T[ i ] << endl;
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ )
                cout << setw( 4 ) << T[ i ];
        
        int index = 0;
 
        for ( int i = 1; i < arrSize; i++ ) { 
                if ( T[ i ] >= 0 && T[ index ] < 0 ) {
                        index = i;
                }
                else if ( T[ i ] >= 0 && T[ index ] >= 0 && T[ i ] < T[ index ] ) {
                        index = i;
                }
        }       
 
        if ( T[ index ] < 0 ) 
                index = -1;
 
        if ( index >= 0 ) {
                cout << "\n\nMinimal element of array T[ " << index << " ] - " << T[ index ] << endl;
                int temp = T[ 2 ];
                T[ 2 ] = T[ index ];
                T[ index ] = temp;
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ) 
                        cout << setw( 4 ) << T[ i ];
                cout << endl << endl;
        }
        else
                cout << "\n\nAn array does not have positive elements\n\n";
        return 0;
}
 
int task2() 
 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ][ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                for ( int j = 0; j < arrSize; j++ ) { 
                        //cout << "Input element T[ " << i << " ][ " << j << " ] - ";   
                        T[ i ][ j ] = rand() % 21 - 10;
                        //cout << T[ i ] << endl;               
                } 
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ ){
                for ( int j = 0; j < arrSize; j++ ) 
                        cout << setw( 4 ) << T[ i ][ j ];
                cout << endl;
        }
        
        int indexRowCol = 0;
 
        for ( int i = 0; i < arrSize; i++ ) { 
                if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] < 0 ) {
                        indexRowCol = i;
                }
                else if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] >= 0 && T[ i ][ i ] < T[ indexRowCol ][ indexRowCol ] ) {
                        indexRowCol = i;
                }
        }       
 
        cout << "Index - " << indexRowCol << endl;
 
        if ( T[ indexRowCol ][ indexRowCol ] < 0 ) 
                indexRowCol = -1;
 
        if ( indexRowCol >= 0 ) {
                cout << "\n\nMinimal element of main diagonal in matrix T[ " << indexRowCol << " ][ " 
                          << indexRowCol << " ] is " << T[ indexRowCol ][ indexRowCol ] << endl;
                int temp = T[ indexRowCol ][ indexRowCol ];
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                if ( i == indexRowCol || j == indexRowCol) 
                                        T[ i ][ j ] = temp;
                }
 
 
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                cout << setw( 4 ) << T[ i ][ j ];
                        cout << endl;
                }
                cout << endl << endl;
        }
        else
                cout << "\n\nMatrix does not have positive elements in main diagonal\n\n";
        return 0;
}
 
int task3 ()
{
    const int SIZE = 3;
    double MAS [SIZE];
    double a, b, c;
 
    std::cin >> a >> b >> c;
    int a=5;
    int b=7;
    int c=15;
  
  double MAS [3];
    MAS[0] = fabs (double(a-b));
    MAS[1] = fabs (double(a-c));
    MAS[2] = fabs (double(b-c));
  
    std::cout << *std::max_element (MAS, MAS + SIZE);
    return 0;
}
1>------ Построение начато: проект: Zadacha1, Конфигурация: Debug Win32 ------
1> Zadacha3.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(15): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(16): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha3.cpp(17): error C2668: fabs: неоднозначный вызов перегруженной функции
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(565): может быть "long double fabs(long double)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(517): или "float fabs(float)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(118): или "double fabs(double)"
1> при попытке сопоставить список аргументов "(int)"
1> Zadacha1.cpp
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(127): error C2371: a: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "a"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(128): error C2371: b: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "b"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(129): error C2371: c: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "c"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(131): error C2086: double MAS[3]: переопределение
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(123): см. объявление "MAS"
1> Создание кода...
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Пока так..
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 21:51     Соединение 3 в 1-ну #12
#include "StdAfx.h"
#include <iostream>
#include <cmath>
#include <algorithm>
вот это все из 118 строки в начало файла
которые повторяются выбрось
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 21:53  [ТС]     Соединение 3 в 1-ну #13
Я их давно выбросил. Вон переделка.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 22:04     Соединение 3 в 1-ну #14
"Ну вы вообще" С
что то не то ты пишешь
Цитата Сообщение от qheff Посмотреть сообщение
zadacha3.cpp(15): error C2668: fabs:
ясно пишет что в 15 строке неодназначно вызвана fabs
а у тебя в программе
srand( ( unsigned ) time ( NULL ) );
никаким fabs и непахнет
далее

Цитата Сообщение от qheff Посмотреть сообщение
Нет, это три программы, в одном файле.
это три функции (подпрограммы) но никак не программы
и куда ты дел Main в последней версии

Цитата Сообщение от qheff Посмотреть сообщение
double a, b, c;
std::cin >> a >> b >> c;
int a=5;
int b=7;
int c=15;
Цитата Сообщение от qheff Посмотреть сообщение
>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(127): error C2371: a: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "a"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(128): error C2371: b: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "b"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(129): error C2371: c: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(124): см. объявление "c"
1>c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(131): error C2086: double MAS[3]: переопределение
1> c:\users\жека\documents\visual studio 2010\projects\zadacha1\zadacha1\zadacha1.cpp(123): см. объявление "MAS"
или то или другое

Добавлено через 3 минуты
щелкни 2 раза по ошибке
тебя выбросит в строку где ошибка
скопируй и приведи здесь
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 22:10  [ТС]     Соединение 3 в 1-ну #15
Так. Лишнее убрал, с Main (куда его) и
ясно пишет что в 15 строке неодназначно вызвана fabs
а у тебя в программе
srand( ( unsigned ) time ( NULL ) );
никаким fabs и непахнет
далее

и с этим не очень понятно
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 22:26     Соединение 3 в 1-ну #16
создай новый консольный проект
поставь галочку пустой проект
в "Файлы исходного кода"- Добавить элемент
создай файл Main.ccp
и скопируй туда этот текст
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//#include "StdAfx.h" //не относиться, к программе.
 
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>
#include <cmath>
#include <algorithm>
 
 
 
using namespace std;
 
 
int task1() 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                cout << "Input element T[ " << i << " ] - ";    
                T[ i ] = rand() % 21 - 10;
                cout << T[ i ] << endl;
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ )
                cout << setw( 4 ) << T[ i ];
        
        int index = 0;
 
        for ( int i = 1; i < arrSize; i++ ) { 
                if ( T[ i ] >= 0 && T[ index ] < 0 ) {
                        index = i;
                }
                else if ( T[ i ] >= 0 && T[ index ] >= 0 && T[ i ] < T[ index ] ) {
                        index = i;
                }
        }       
 
        if ( T[ index ] < 0 ) 
                index = -1;
 
        if ( index >= 0 ) {
                cout << "\n\nMinimal element of array T[ " << index << " ] - " << T[ index ] << endl;
                int temp = T[ 2 ];
                T[ 2 ] = T[ index ];
                T[ index ] = temp;
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ) 
                        cout << setw( 4 ) << T[ i ];
                cout << endl << endl;
        }
        else
                cout << "\n\nAn array does not have positive elements\n\n";
 
        return 0;
}
 
int task2() 
 
{
        srand( ( unsigned ) time ( NULL ) );
        const int arrSize = 5;
        int T[ arrSize ][ arrSize ];
        //Вводим значения в массив
        for ( int i = 0; i < arrSize; i++ ) { 
                for ( int j = 0; j < arrSize; j++ ) { 
                        //cout << "Input element T[ " << i << " ][ " << j << " ] - ";   
                        T[ i ][ j ] = rand() % 21 - 10;
                        //cout << T[ i ] << endl;               
                } 
        } 
        //Выводим массив на экран
        cout << "\n\nArray:\n";
        for ( int i = 0; i < arrSize; i++ ){
                for ( int j = 0; j < arrSize; j++ ) 
                        cout << setw( 4 ) << T[ i ][ j ];
                cout << endl;
        }
        
        int indexRowCol = 0;
 
        for ( int i = 0; i < arrSize; i++ ) { 
                if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] < 0 ) {
                        indexRowCol = i;
                }
                else if ( T[ i ][ i ] >= 0 && T[ indexRowCol ][ indexRowCol ] >= 0 && T[ i ][ i ] < T[ indexRowCol ][ indexRowCol ] ) {
                        indexRowCol = i;
                }
        }       
 
        cout << "Index - " << indexRowCol << endl;
 
        if ( T[ indexRowCol ][ indexRowCol ] < 0 ) 
                indexRowCol = -1;
 
        if ( indexRowCol >= 0 ) {
                cout << "\n\nMinimal element of main diagonal in matrix T[ " << indexRowCol << " ][ " 
                          << indexRowCol << " ] is " << T[ indexRowCol ][ indexRowCol ] << endl;
                int temp = T[ indexRowCol ][ indexRowCol ];
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                if ( i == indexRowCol || j == indexRowCol) 
                                        T[ i ][ j ] = temp;
                }
 
 
                cout << "\n\nArray:\n";
                for ( int i = 0; i < arrSize; i++ ){
                        for ( int j = 0; j < arrSize; j++ ) 
                                cout << setw( 4 ) << T[ i ][ j ];
                        cout << endl;
                }
                cout << endl << endl;
        }
        else
                cout << "\n\nMatrix does not have positive elements in main diagonal\n\n";
return 0;
}
 
int task3 ()
{
    const int SIZE = 3;
    double MAS [SIZE];
    int a, b, c;
 
    std::cin >> a >> b >> c;
 
    MAS[0] = fabs (double(a-b));
    MAS[1] = fabs (double(a-c));
    MAS[2] = fabs (double(b-c));
 
    std::cout << *std::max_element (MAS, MAS + SIZE);
    return 0;
}
 
int main () 
{
task1();
task2();
task3();
}
Это твоя программа из первого поста подправленная
Все работает

Добавлено через 2 минуты
Цитата Сообщение от qheff Посмотреть сообщение
#include "StdAfx.h" //не относиться, к программе.
зачем тогда подключаешь
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 22:48  [ТС]     Соединение 3 в 1-ну #17
Спасибо за помощь, но результат такой же как и вначале. Одна задача не работает.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
27.03.2011, 22:57     Соединение 3 в 1-ну #18
что значит не работает ???
Вопрос был об ошибках компиляции
В Алгоритмы я не лез
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2011, 22:57     Соединение 3 в 1-ну
Еще ссылки по теме:

C++ Соединение строки с числом
Соединение чисел C++
C++ Соединение с сервером

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

Или воспользуйтесь поиском по форуму:
qheff
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 24
27.03.2011, 22:57  [ТС]     Соединение 3 в 1-ну #19
Цитата Сообщение от ValeryS Посмотреть сообщение
что значит не работает ???
Вопрос был об ошибках компиляции
В Алгоритмы я не лез
Ладно, спасибо.
Yandex
Объявления
27.03.2011, 22:57     Соединение 3 в 1-ну
Ответ Создать тему
Опции темы

Текущее время: 00:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru