0 / 0 / 0
Регистрация: 20.11.2013
Сообщений: 4
1

все положительные элементы заменить на их натуральные логарифмы

20.11.2013, 23:53. Показов 1185. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно при помощи функции реализовать программу которая бы все положительные элементы заменить на их натуральные логарифмы. Массив 5 строк 4 столбца. Массив двухмерный. Пытаюсь сделать сам но что то не получается. Помогите очень прошу, завтра утром надо сдать.


Выдает ошибки: error C2668: log: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(575): может быть "long double log(long double)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(527): или "float log(float)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(120): или "double log(double)"
1> при попытке сопоставить список аргументов "(int)"

Мой код:
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
bool Func1(int a[5][4])
    {
        bool b; 
        b=false;
        for(int i=0;i<5;i++)
          for(int j=0;j<4;j++)
               if (a[i][j]>0)
                  {   
                  a[i][j]=log(a[i][j]);
                  b=true;
                  }
               
          
              return b;
    } 
void Func2(int a[5][4])
    {
        
        for(int i=0;i<5;i++)
        {
            for(int j=0;j<4;j++)
              cout<<"a["<<i+1<<"]["<<j+1<<"]="<<a[i][j]<<" ";
            cout<<endl;
        }
    }
int main()
{
    
    int a[5][4];
    for(int i=0;i<5;i++)
            for(int j=0;j<4;j++)
                {
                    cout<<"a["<<i<<"]["<<j<<"]=";
                    cin >> a[i][j];
                }
     Func1(a);
     Func2(a);
     
      
    system("pause");
     return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.11.2013, 23:53
Ответы с готовыми решениями:

Удвоить четные элементы. Натуральные логарифмы минимальных положительных элементов столбцов
Ребят, если поможете буду очень признателен, задание такое: Удвоить четные элементы. Натуральные...

В однородном массиве все отрицательные элементы увеличить на 2, а все положительные заменить на 1
помогите пожалуйста написать программу. В массиве все отрицательные элементы увеличить на 2, а все...

В массиве заменить все отрицательные элементы на минимальный элемент, а все положительные – на максимальный
В массиве из 10 целых чисел заменить все отрицательные элементы на минимальный элемент, а все...

Заменить все положительные элементы на противоположные
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;cmath&gt; using namespace...

6
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
20.11.2013, 23:58 2
Пишет же, что нет log() для int.
0
0 / 0 / 0
Регистрация: 20.11.2013
Сообщений: 4
21.11.2013, 00:00  [ТС] 3
Цитата Сообщение от alsav22 Посмотреть сообщение
Пишет же, что нет log() для int.
так а как тогда будет? я просто делал точно такую же лабу, только там вместо логарифма надо было умножить на 2 положительные елементы
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
21.11.2013, 00:06 4
Делайте массив не int.
1
0 / 0 / 0
Регистрация: 20.11.2013
Сообщений: 4
21.11.2013, 00:07  [ТС] 5
Цитата Сообщение от alsav22 Посмотреть сообщение
Делайте массив не int.
bool что ли?
тогда вообще ничего не пойму... голова уже кипит 5-ю лабу за 4 часа делаю...
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
21.11.2013, 00:09 6
Цитата Сообщение от lutyra Посмотреть сообщение
bool что ли?
Цитата Сообщение от lutyra Посмотреть сообщение
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(575): может быть "long double log(long double)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(527): или "float log(float)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(120): или "double log(double)"
На выбор (тип параметра, для которого существует log()).
1
0 / 0 / 1
Регистрация: 20.11.2013
Сообщений: 6
21.11.2013, 00:14 7
Используйте double, например. bool конечно сюда ну никак не подходит.
0
21.11.2013, 00:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.11.2013, 00:14
Помогаю со студенческими работами здесь

заменить все положительные элементы на противоположные
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;cmath&gt; using namespace...

Заменить все положительные элементы массива максимальным
Помогите пожалуйста.:) Создать одномерный массив из 10 случайных целых чисел из интервала от -10...

Заменить все положительные элементы матрицы единицами
Подскажите, пожалуйста. Я написал программу, которая выводит на экран матрицу размером 10х10...

Заменить все отрицательные элементы массива на -1, а положительные на +1
Заменить все отрицательные элементы массива на -1, а положительные на +1 С++ Помогите пожалуйста и...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru