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

sin^2*y - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
shilovec5377
 Аватар для shilovec5377
28 / 53 / 1
Регистрация: 26.05.2011
Сообщений: 752
28.05.2013, 14:57     sin^2*y #1
Всем привет. подскажите, что не так. нужно написать sin^2*y.
Пишу так:
C++
1
pow(sin,2)*y
вот ошибка:
C++
1
error C2664: 'pow' : cannot convert parameter 1 from 'double (double)' to 'double'
что не так?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
28.05.2013, 15:00     sin^2*y #2
sin - имя функции
shilovec5377
 Аватар для shilovec5377
28 / 53 / 1
Регистрация: 26.05.2011
Сообщений: 752
28.05.2013, 15:02  [ТС]     sin^2*y #3
Цитата Сообщение от ITcrusader Посмотреть сообщение
sin - имя функции
так, а как правильно написать?
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
28.05.2013, 15:03     sin^2*y #4
ну смотря что ты хочешь, вызвать ли sin внутри или это у тебя имя переменной неудачно выбрано.
shilovec5377
 Аватар для shilovec5377
28 / 53 / 1
Регистрация: 26.05.2011
Сообщений: 752
28.05.2013, 15:05  [ТС]     sin^2*y #5
Вот условие:

sin^2*y


вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
const pi=3.14;
int main()
{
double x, y, z, a, b ,c, t;
cout << "\n\t x,y,z = " << endl;        
cin >> x >> y >> z;     
a = 2*(cos(x-pi/6));        
b = 0.5+pow(sin,2)*y;   
c = 1+(   (pow(z,2))/3-pow(z,2)/5) ;
t = a/b*c;
cout << "\n x = " << x << "\n y = " << y << "\n z = " << z 
        << "\nRezult = " << t << endl;
cout << "Press any key ... " << endl;
getch();
return 0;
}

Цитата Сообщение от shilovec5377 Посмотреть сообщение
b = 0.5+pow(sin,2)*y
как это правильно записать?
ITcrusader
Эксперт C++
 Аватар для ITcrusader
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
28.05.2013, 15:10     sin^2*y #6
C++
1
b = 0.5 + pow( sin(y), 2);
Гром
 Аватар для Гром
199 / 118 / 10
Регистрация: 20.03.2009
Сообщений: 1,075
Записей в блоге: 15
28.05.2013, 15:13     sin^2*y #7
C++
1
0.5 + sin(y) * sin(y)
или
C++
1
2
double sin_y = sin(y);
double b = 0.5 + sin_y * sin_y;
Использовать pow для небольших положительных степеней нецелесообразно
shilovec5377
 Аватар для shilovec5377
28 / 53 / 1
Регистрация: 26.05.2011
Сообщений: 752
28.05.2013, 15:20  [ТС]     sin^2*y #8
что-то не правильно считает:
вот полное услови:

Подскажите пж.
Миниатюры
sin^2*y  
Изображения
 
Гром
 Аватар для Гром
199 / 118 / 10
Регистрация: 20.03.2009
Сообщений: 1,075
Записей в блоге: 15
28.05.2013, 16:44     sin^2*y #9
C++
1
c = 1+(   (pow(z,2))/3-pow(z,2)/5) ;
надо:
C++
1
c = 1 + (z * z /(3.0 - z * z  * 0.2));
Про то, что квадраты лучше так, чем через pow, я уже говорил. Кроме того в таких вычислениях лучше всего явно указывать числа с плавающей точкой (не целые), к примеру 5/3 выдаст вам 1, откинув дробную часть. (* 0.2) или (/ 5.0) - не принципиально. Ну и, главное, скобку вы забыли.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,334
Завершенные тесты: 1
28.05.2013, 16:56     sin^2*y #10
Господа, господа. А там разве не надо сперва преобразовать:
http://www.cyberforum.ru/cgi-bin/latex.cgi?{sin}^{2}(x) = 2*sin(x)*cos(x)
И не компостировать мозги, возводя синус в степень! Это где это видано? С таким же успехом можно синус умножить на синус без аргументов, просто вот взять такой абстрактный какой-то синус и работать с ним как с переменной. Я конечно не математик, но что-то мне подсказывает, что так нельзя.

C++
1
pow( sin(y), 2);
это http://www.cyberforum.ru/cgi-bin/latex.cgi?{sin(x)}^{2}
Гром
 Аватар для Гром
199 / 118 / 10
Регистрация: 20.03.2009
Сообщений: 1,075
Записей в блоге: 15
28.05.2013, 17:09     sin^2*y #11
SatanaXIII, это у вас синус двойного угла, а квадрат синуса как раз и получается обычным перемножением. Квадрат синуса можно выразить через косинус двойного угла, но зачем?
C++
1
pow( sin(y), 2);
Да, это (sin(x))2, оно же sin2x. Синус квадрата sin(x2), конечно, никому не нужен.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2013, 17:44     sin^2*y
Еще ссылки по теме:

задачка S = sin X + sin X^2 + sin x^3 + sin X^4+…+sin X^n C++
C++ Подскажите как написать в С++: Вывести «столбиком» значения sin 0,l, sin 0,2, ., sin l,l
Вычислить выражение sin(sin(sin...(x))...) C++

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

Или воспользуйтесь поиском по форуму:
shilovec5377
 Аватар для shilovec5377
28 / 53 / 1
Регистрация: 26.05.2011
Сообщений: 752
28.05.2013, 17:44  [ТС]     sin^2*y #12
пробовал писать по вашим изменениям, но всеравно с ответом не сходиться.
Yandex
Объявления
28.05.2013, 17:44     sin^2*y
Ответ Создать тему
Опции темы

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