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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Shady3000rf
2 / 2 / 0
Регистрация: 17.09.2010
Сообщений: 38
#1

Подправте код... - C++

17.09.2010, 19:36. Просмотров 1038. Ответов 10
Метки нет (Все метки)

Вот код:
//---------------------------------------------------------------------------

#pragma hdrstop
#include <stdio.h>
#include <conio.h>
#include <math.h>
//---------------------------------------------------------------------------

#pragma argsused
int main()
{ float y,z,a=1.14,x=1.42;
y=ln(abs(a-1))+cos(pow(x,3)/2);
z=abs(y)+sin(pow(a,3));
printf("y=%f z=%f\n",y,z);
getch();
return 0;
}
//---------------------------------------------------------------------------
с++ ругается [C++ Error] Unit1.cpp(12): E2268 Call to undefined function 'ln'
как я понял ln записывается по другому? Подскажите что не так.
Если что вот само уравнение:
y=ln|a-1|+cos(x^3\2)
z=|y|+sin(a^3)
, при а=1.14, ч=1.42 Ну код вроде сам правильный, только с этим ln запара(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2010, 19:36     Подправте код...
Посмотрите здесь:

Подправте пожалуйста код - C++
Привет всем. Очень нужна ваша помощь... Вот исходный код на паскале: Program LAB1; uses crt; Procedure WriteByte(a:byte); var...

Подправте код проги, С++ - C++
Написать программу, которая считывает текст из файла и выводит на экран сначала предложения, начинающиеся с однобуквенных слов, а затем...

Подправте, пожалуйста, ошибки линкера (MVS2008) ! - C++
из-за ошибок не собрать проект в release. видимо, связано с объявлением и определением функций но вот не разобраться: 1&gt;man.obj :...

Подправте пожалуйста код - C++ Linux
Делал к задачке написать программу, находящую в заданном каталоге и всех его подкаталагах все файлы заданного размера. Имя каталога...

Подправте программу - Turbo Pascal
Вот задание Дан массив целых чисел (n=15), заполненный случайным образом числами из промежутка . − удалить из него все элементы, в...

подправте скрипт - PHP
Здравствуйте есть скрипт &lt;?php $blacklist = array(&quot;.php&quot;, &quot;.phtml&quot;, &quot;.php3&quot;, &quot;.php4&quot;, &quot;.html&quot;, &quot;.htm&quot;); foreach ($blacklist as...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
17.09.2010, 19:39     Подправте код... #2
Shady3000rf,
Натуральный логарифм - log()
Qwerty_coder
29 / 29 / 2
Регистрация: 14.12.2009
Сообщений: 79
17.09.2010, 19:41     Подправте код... #3
Shady3000rf, вместо ln пропиши log

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#pragma hdrstop
#include <stdio.h>
#include <conio.h>
#include <math.h>
//---------------------------------------------------------------------------
 
#pragma argsused
int main()
{ float y,z,a=1.14,x=1.42;
y=log(abs(a-1))+cos(pow(x,3)/2);
z=abs(y)+sin(pow(a,3));
printf("y=%f z=%f\n",y,z);
getch();
return 0;
}
Shady3000rf
2 / 2 / 0
Регистрация: 17.09.2010
Сообщений: 38
17.09.2010, 19:46  [ТС]     Подправте код... #4
Цитата Сообщение от silent_1991 Посмотреть сообщение
Shady3000rf,
Натуральный логарифм - log()
так ведь, если я не ошибаюсь, log отличается от ln
Натуральные:ln , основание: e (число Эйлера или экспонента).
Десятичные: lg, основание: число 10.
Двоичные: log b основание: число 2(например)


только это вспомнил))

или мне всё таки так и записывать
y=log(abs(a-1))

о уже ответили, спасибо!)


эм......теперь при вычислении такое:
log: SING error
y=-INF z=0.996020

или это просто уравнение такое?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.09.2010, 19:51     Подправте код... #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#pragma hdrstop
#include <stdio.h>
#include <conio.h>
#include <math.h>
//---------------------------------------------------------------------------
 
#pragma argsused
int main()
{ float y,z,a=1.14,x=1.42;
y=log(fabs(a-1))+cos(pow(x,3)/2);
z=fabs(y)+sin(pow(a,3));
printf("y=%f z=%f\n",y,z);
getch();
return 0;
}
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
17.09.2010, 19:56     Подправте код... #6
Shady3000rf,
Поверьте, функция log(x) возвращает натуральный логарифм x. Если нужно log_b(a) (логарифм a по основанию b), то нужно записать log(a)/log(b)
А на счёт двоичных - я не видел для них особого обозначения, так и пишут log_2(a)

Добавлено через 4 минуты
Shady3000rf,
Надеюсь, в качестве a не единицу вводите?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.09.2010, 19:57     Подправте код... #7
silent_1991, Почти.
a=1.14
Shady3000rf
2 / 2 / 0
Регистрация: 17.09.2010
Сообщений: 38
17.09.2010, 19:57  [ТС]     Подправте код... #8
Цитата Сообщение от silent_1991 Посмотреть сообщение
Надеюсь, в качестве a не единицу вводите?
Хы нет конешно) Ну и а у меня задана: { float y,z,a=1.14,x=1.42;

а с кодом Lavroff норм вычисляет)
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
17.09.2010, 20:00     Подправте код... #9
Shady3000rf,
да, не заметил...
Странно, у меня всё считает... код Lavroff. Но z не такой вывел, как у вас...
Shady3000rf
2 / 2 / 0
Регистрация: 17.09.2010
Сообщений: 38
17.09.2010, 20:04  [ТС]     Подправте код... #10
Не с кодом Lavroff у меня такие значения:
y=-1.827409 z=2.823429

а эти значения: log: SING error
y=-INF z=0.996020
были при y=log(abs(a-1))....
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2010, 20:10     Подправте код...
Еще ссылки по теме:

Подправте запрос пожалуйста! - MS Access
SELECT поставляет.название_страны, поставляет.название_товара FROM поставляет WHERE (((поставляет.название_товара)=&quot;Кофе&quot;)); С...

подправте скрипт (Скопировать и переместить файли по маске) - VBA
Добрий день! есть скрипт Sub copy() Const INFILES = &quot;C:\temp\in\24ns_*.csv&quot; Const F_CP = &quot;C:\temp\ARCH\IN\&quot; Const F_MV =...


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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
17.09.2010, 20:10     Подправте код... #11
Shady3000rf,
Используйте fabs(), а не abs().
Код Lavroff был верен, значения правильные. А у вас вообще не понятно, как z посчитался, если при его вычислении используется значение y, которое мусор...
Yandex
Объявления
17.09.2010, 20:10     Подправте код...
Ответ Создать тему
Опции темы

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