Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/22: Рейтинг темы: голосов - 22, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47

Помогите разобраться(С)Cпособы передачи аргументов в вызываемые функции: по значению, указателю и ссылке

27.10.2011, 14:15. Показов 4526. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вычисление текущих значений Y(x) и S(x) (где x принадлежит диапазону [a,b]) реализовать в виде отдельных функций. При выполнении задания продемонстрировать следующие способы передачи аргументов в вызываемые функции: по значению, указателю и ссылке.
Вот функции записаны на Си:

1 функция ( s=pow(-1,k)*pow(2*a,2*k)/(2*k)!

)

2. y=2*pow(cos(a),2)-1;
Помогите написать функцию для первого уравнения со вторым проблем не возникло. Не могу разобраться с передачей параметров.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.10.2011, 14:15
Ответы с готовыми решениями:

Передача параметров функции по значению, ссылке и указателю
Вычислить F=f(a)-5f^3(sin(b/2))+1/f(1+c^4), де f(x)=3x^2-2x^2+7, при a=5.08, b=-0.65, c=3.87 Добавлено через 45 минут #include...

Передача аргументов в функцию по ссылке и указателю
Чем отличается передача по ссылке от передачи по указателю аргументов в функцию?

Передача параметров по указателю, ссылке и значению
Задание: Вычислить Y(x) и S(x). (где x принадлежит диапазону ) Y(x) и S(x) реализовать в виде отдельных функций. Продемонстрировать ...

21
Полярный
 Аватар для dimcoder
477 / 449 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
27.10.2011, 14:56
Передача параметров с помощью указателя:
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
float func(int *k, int *a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*(*k); i++)
      fac *= i;
   s = pow(-1, *k) * pow(2**a, 2**k)/fac;
   return s;
}
 
main ()
{
   int a, k, *kPtr = &k, *aPtr = &a;
 
   cin >> a >> k;
 
   cout << func(kPtr, aPtr);
 
getch();
 
cout << endl << endl;
 
return 0;
}
Добавлено через 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
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
float func(int k, int a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
      fac *= i;
   s = pow(-1, k) * pow(2*a, 2*k)/fac;
   return s;
}
 
main ()
{
   int a, k;
 
   cin >> a >> k;
 
   cout << func(k, a);
 
getch();
 
cout << endl << endl;
 
return 0;
}
Добавлено через 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
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
float func(int &k, int &a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
      fac *= i;
   s = pow(-1, k) * pow(2*a, 2*k)/fac;
   return s;
}
 
main ()
{
   int a, k;
   int &kP = k, &aP = a;
 
   cin >> a >> k;
 
   cout << func(kP, aP);
 
getch();
 
cout << endl << endl;
 
return 0;
}
1
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
27.10.2011, 19:08  [ТС]
Начиная с Visual Studio .NET 2003, Visual C++ старый синтаксис "#include <iostream.h>" больше не поддерживается. Вместо него необходимо использовать соответствующее стандарту "#include <iostream>"
Осталось только въехать в тонкости ли переделать с использованием команд printf..
Спасибо за подсказку.
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
#include <iostream>
#include <conio.h>
#include <math.h>
#include <stdio.h>
 
float func(int k, int a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
      fac *= i;
   s = pow(-1, k) * pow(2*a, 2*k)/fac;
   return s;
}
 
main ()
{
   int a, k;
 
   cin >> a >> k;
 
  cout << func(k, a);
 
getch();
 
cout << endl << endl;
 
return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!
0
yva
28.10.2011, 13:30
motorizer85, у тебя тоже Боброва?
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
28.10.2011, 14:37  [ТС]
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
#include <iostream>
#include <conio.h>
#include <math.h>
 
double func(int k, int a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
      fac *= i;
   s = pow(-1., k) * pow(2.*a, 2*k)/fac;
   return s;
}
 
void main ()
{
   int a, k;
 
   cin >> a >> k; ??? пишет ошибку в этих строках 
 
   cout << func(k, a); ??? ошибка
 
getch();
 
cout << endl << endl;??? ошибка
 
return 0; ???? ошибка
}
перед cin и cout нужно вставить std::
не понял вот эту строку
C
1
cout << endl << endl;??? ошибка
0
 Аватар для aeshes
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
28.10.2011, 15:17
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main ()
{
   int a, k;
 
   std::cin >> a >> k; 
 
   std::cout << func(k, a)<<std::endl;
 
getch();
 
return 0;
}
попробуй так
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
28.10.2011, 16:18
Цитата Сообщение от motorizer85 Посмотреть сообщение
по значению, указателю и ссылке.
О май Гад - столько всего и никто не напишет
по значению - передаются параметры в функции которые затем могут безболезненно для тела вызывающего модуля модифицироваться в теле функции (они становятся внутренними параметрами функции и возможное их изменение в теле не отражается на значение исходной переменной)
по указателю - обычно этим массивы передаём и строки, но переменные никто не запрещал передавать тоже можно. Этот способ передачи подразумевают передачу не самого параметра а его адреса.
по ссылке -при таком способе передачи возможно изменять в теле исходный параметр
Думаю в
Цитата Сообщение от motorizer85 Посмотреть сообщение
по значению
- предполагался передача в функцию значения х и получения f(x).

Цитата Сообщение от motorizer85 Посмотреть сообщение
указателю
- сформировать массив х на диапазоне
Цитата Сообщение от motorizer85 Посмотреть сообщение
[a,b]
и запихнуть его в функцию по указателю

Цитата Сообщение от motorizer85 Посмотреть сообщение
ссылке
- глядя на формулу
Цитата Сообщение от motorizer85 Посмотреть сообщение
s=pow(-1,k)*pow(2*a,2*k)/(2*k)!
- предполагаю замену рекурсии, если ТС ответит напишу что под этим понимаю
0
28.10.2011, 16:27

Не по теме:

Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
предполагаю замену рекурсии
это не рекурсия

0
28.10.2011, 16:40

Не по теме:

PointsEqual, если не понял мысль не пиши - в формуле факториал есть

Цитата Сообщение от motorizer85 Посмотреть сообщение
(2*k)!
, так что рекурсия предполагается,
когда напишет ТС я всё приведу а пока не вставляйте свои 5 копеек, не понимая о чём вообще говорю...

0
ниначмуроФ
 Аватар для PointsEqual
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
28.10.2011, 18:20
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
PointsEqual, если не понял мысль не пиши - в формуле факториал есть
Сообщение от motorizer85
(2*k)!
, так что рекурсия предполагается,
когда напишет ТС я всё приведу а пока не вставляйте свои 5 копеек, не понимая о чём вообще говорю...
а больше ничего не предполагается? тут нет рекурсии
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
28.10.2011, 22:20  [ТС]
Вообщем просьба приведите плиз код с пояснениями хотя бы для одного случая(((
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
#include <iostream>
#include <conio.h>
#include <math.h>
 
double func(int k, int a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
      fac *= i;
   s = pow(-1., k) * pow(2.*a, 2*k)/fac;
   return s;
}
 
int main ()
{
   int a, k;
 
   std::cin >> a >> k; 
 
   std::cout << func(k, a)<<std::endl;
 
getch();
 
return 0;
}
при таком раскладе в файле cmath ошибки...
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
28.10.2011, 22:32
Цитата Сообщение от motorizer85 Посмотреть сообщение
double func(int k, int a)
- передача параметров в функцию по значению,
входных параметров 2: int k, int a
выходной параметр 1 : s = pow(-1., k) * pow(2.*a, 2*k)/fac;

Добавлено через 2 минуты
Цитата Сообщение от motorizer85 Посмотреть сообщение
при таком раскладе в файле cmath ошибки...
Вот так запишите
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
 
double func(int k, int a)
{
   int s, fac = 1;
   for (int i = 1; i < 2*k; i++)
       fac *= i;
   s = pow(-1., k) * pow(2.*a, 2*k)/fac;
   return s;
}
 
int main ()
{
    int a, k;
    cin >> a >> k; 
    cout << func(k, a)<<endl;
    system("pause");
    return 0;
}
Вот
лог дебага
Compiling...
SwapSeq.cpp
Linking...

SwapSeq.exe - 0 error(s), 0 warning(s)
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
28.10.2011, 23:09  [ТС]
Программа для VS 2010 U

Error 102 error C1003: error count exceeds 100; stopping compilation c:\program files\microsoft visual studio 10.0\vc\include\cmath 41
Error 2 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19
Error 4 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19
Error 6 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 8 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 10 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 12 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 14 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 16 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 18 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 20 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 22 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 24 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 26 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 28 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 30 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 32 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 34 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 36 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 38 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 40 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 42 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 26
Error 44 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 26
Error 46 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 28
Error 48 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 28
Error 50 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 52 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 54 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 56 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 58 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 60 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 62 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 64 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 66 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 68 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 70 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 72 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 74 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 76 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 78 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 80 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 82 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 84 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 86 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 35
Error 88 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 35
Error 90 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 37
Error 92 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 39
Error 94 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 39
Error 96 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 98 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 100 error C2059: syntax error : ';' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 89 error C2061: syntax error : identifier 'abs' c:\program files\microsoft visual studio 10.0\vc\include\cmath 37
Error 91 error C2061: syntax error : identifier 'acos' c:\program files\microsoft visual studio 10.0\vc\include\cmath 39
Error 1 error C2061: syntax error : identifier 'acosf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19
Error 45 error C2061: syntax error : identifier 'acosl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 28
Error 93 error C2061: syntax error : identifier 'asin' c:\program files\microsoft visual studio 10.0\vc\include\cmath 39
Error 3 error C2061: syntax error : identifier 'asinf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19
Error 47 error C2061: syntax error : identifier 'asinl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 28
Error 95 error C2061: syntax error : identifier 'atan' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 97 error C2061: syntax error : identifier 'atan2' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 7 error C2061: syntax error : identifier 'atan2f' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 51 error C2061: syntax error : identifier 'atan2l' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 5 error C2061: syntax error : identifier 'atanf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 49 error C2061: syntax error : identifier 'atanl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 99 error C2061: syntax error : identifier 'ceil' c:\program files\microsoft visual studio 10.0\vc\include\cmath 40
Error 9 error C2061: syntax error : identifier 'ceilf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 20
Error 53 error C2061: syntax error : identifier 'ceill' c:\program files\microsoft visual studio 10.0\vc\include\cmath 29
Error 101 error C2061: syntax error : identifier 'cos' c:\program files\microsoft visual studio 10.0\vc\include\cmath 41
Error 11 error C2061: syntax error : identifier 'cosf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 13 error C2061: syntax error : identifier 'coshf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 57 error C2061: syntax error : identifier 'coshl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 55 error C2061: syntax error : identifier 'cosl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 15 error C2061: syntax error : identifier 'expf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 21
Error 59 error C2061: syntax error : identifier 'expl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 30
Error 17 error C2061: syntax error : identifier 'fabsf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 61 error C2061: syntax error : identifier 'fabsl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 19 error C2061: syntax error : identifier 'floorf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 63 error C2061: syntax error : identifier 'floorl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 21 error C2061: syntax error : identifier 'fmodf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 22
Error 65 error C2061: syntax error : identifier 'fmodl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 31
Error 23 error C2061: syntax error : identifier 'frexpf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 67 error C2061: syntax error : identifier 'frexpl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 25 error C2061: syntax error : identifier 'ldexpf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 69 error C2061: syntax error : identifier 'ldexpl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 29 error C2061: syntax error : identifier 'log10f' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 73 error C2061: syntax error : identifier 'log10l' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 27 error C2061: syntax error : identifier 'logf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 23
Error 71 error C2061: syntax error : identifier 'logl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 32
Error 31 error C2061: syntax error : identifier 'modff' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 75 error C2061: syntax error : identifier 'modfl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 33 error C2061: syntax error : identifier 'powf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 24
Error 77 error C2061: syntax error : identifier 'powl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 33
Error 35 error C2061: syntax error : identifier 'sinf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 37 error C2061: syntax error : identifier 'sinhf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 81 error C2061: syntax error : identifier 'sinhl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 79 error C2061: syntax error : identifier 'sinl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 39 error C2061: syntax error : identifier 'sqrtf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 25
Error 83 error C2061: syntax error : identifier 'sqrtl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 34
Error 41 error C2061: syntax error : identifier 'tanf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 26
Error 43 error C2061: syntax error : identifier 'tanhf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 26
Error 87 error C2061: syntax error : identifier 'tanhl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 35
Error 85 error C2061: syntax error : identifier 'tanl' c:\program files\microsoft visual studio 10.0\vc\include\cmath 35
Неужели проблема в самом компиляторе((( при любом из 3 вариантов кода, 1 мой - который я думал неправильный
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
28.10.2011, 23:15
Цитата Сообщение от motorizer85 Посмотреть сообщение
Неужели проблема в самом компиляторе(((
- скорее всего да, вы код из моего поста компилили?
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
28.10.2011, 23:33  [ТС]
1 вариант свой выдавал такие же ошибки к сожалению удалил потом "dimcoder" потом твой. Одна и таже проблема cmath, может настройки VS 2010, хотя отстраивал по шаблону intuit

С.В. Бондаренко, М.Ю. Бондаренко

Программирование на
языке C в
Microsoft Visual Studio 2010

Добавлено через 11 минут
Напишите тогда кто каким компилятором пользуется и с какими настройками, бу качать вникать)))
0
 Аватар для aeshes
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
28.10.2011, 23:35
motorizer85, у меня VS2010 и код от -=ЮрА=- работает
Может, вы создаете проект не того типа? Вам нужен консольный, галочка "пустой" или просто Пустой проект. Файл с кодом должен иметь расширение cpp
Или компилируете свой проект как чистый Си? (посмотри Проект->Свойства->Свойства конфигурации->С/С++->Дополнительно->Строка Компилировать как). Если там стоит Компилировать как С, тогда студия может ругаться на cmath, потому что это под С++ библиотека, а не под Си
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
28.10.2011, 23:46  [ТС]
Под С++ работает но мне же нужно Си
Мне вспомнились слова лектора: мол типо " Я с 2010 не работала", а еще чему то научить пытается, "поэтому незнаю" нда, а еще лучший вуз страны, я разачарован(
Ее примеры в лекции дают те же ошибки, наверно 2008 студию качать надо, отстанем от жизни так(((
0
 Аватар для aeshes
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
28.10.2011, 23:47
motorizer85, Если компилируешь под чистый СИ, тогда используй библиотеку math.h вместо cmath, никаких std, вместо cin/cout используй scanf/printf из stdio.h

Вот, переделала тебе программу от -=ЮрА=- на С
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
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
double func(int k, int a)
{
   int s, fac = 1,i;
   for (i = 1; i < 2*k; i++)
           fac *= i;
   s = pow(-1., k) * pow(2.*a, 2*k)/fac;
   return s;
}
 
int main ()
{
        int a, k;
        printf("a=");
        scanf("%d", &a);
        printf("k=");
        scanf("%d", &k);
        printf("%lf",func(k, a));
        system("pause");
        return 0;
}
В таком виде должно компилироваться
1
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 47
29.10.2011, 00:07  [ТС]
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <conio.h>
#include <locale.h>       
 
using namespace std;
int main() { 
setlocale(LC_CTYPE, "Russian");
int a[16];
 cout  << "Размер данного типа int: "
         << sizeof( int )
        << "\nРазмер массива  a: "   << sizeof (a)
        << "\nКоличество элементов в массиве а: "
         << sizeof(a)/sizeof(int)  <<endl;
 
   _getch();
}
cout в лекциях приводится к примеру???????не понимаю????
Насчет задачи мне нужно показать S Y и Y-S
Спасибо всем дальше надеюсь разберусь
0
 Аватар для aeshes
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
29.10.2011, 00:31
motorizer85, скорее всего, у тебя лекции с примерами на С++. Либо твой преподаватель не различает С и С++ и пишет на "суржике"

Бегло глянула на Интуите упомянутый тобой курс Бондаренко, там вроде все примеры с printf/scanf
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.10.2011, 00:31
Помогаю со студенческими работами здесь

Передача параметров в функцию по значению, по ссылке и по указателю
Доброе время суток товарищи программисты. Столкнулся с кучей ошибок в написании простой программы. Задача заключается в том чтобы написать:...

Передача параметров в функцию по значению, по ссылке или по указателю
Передача параметров в функцию по значению, по ссылке или по указателю. Чем отличаются эти 3 способа. И, если не сложно, привести...

Передача аргумента в функцию по значению, по ссылке, по указателю: в чём концептуальная разница?
Доброго всем здравия, прошу прощения, что достал уже всех этой темой. #include &lt;iostream&gt; using namespace std; int...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru