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

Линейная программа. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
15.09.2010, 15:44     Линейная программа. #1
Уважаемые, у меня небольшая просьба. Только начинаю изучать программирования, и тут такая задача.
Помогите в решении. Программа линейная. Язык программирования С.

Название: 9d9d53931ba2.jpg
Просмотров: 92

Размер: 8.9 Кб
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2010, 15:44     Линейная программа.
Посмотрите здесь:

Линейная программа C++
С++ и линейная алгебра C++
линейная алгебра C++
C++ Линейная программа
C++ линейная интерполяция
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
15.09.2010, 16:54     Линейная программа. #2
Usefur, а где сама постановка задачи? Я вижу только какие-то формулы. И вообще, потрудились бы хотя бы само задание в пост включить, для этого вон умные люди редактор формул сделали

Добавлено через 35 минут
Вот:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <math.h>
 
int main(void)
{
    const int n = 12;
    const double g = 22.68;
    printf("Input x, y\n");
    double x, y;
    scanf("%lf %lf", &x, &y);
    double c = pow((g + n) / (double)(n + 1), 1 / 3.);
    double b = sqrt(n * sin(2 * c * x) * sin(2 * c * x)) /
        (log(sqrt(c)) - pow(y, 1.24));
    printf("b = %.5lf\n", b);
    return 0;
}
PS. Если уж Вам лень самому сделать задачу, то потрудитесь хотя бы нормально оформить тему, чтобы тем, кто сподобится решать ее за Вас, было удобно это делать
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
15.09.2010, 17:04  [ТС]     Линейная программа. #3
Спасибо. Нет под рукой задачника. И делать мне самому никоим образом не лень, просто пока я даже основ не знаю, а задачу то задали. Буду учится. Очень благодарен вам.
silent_1991
15.09.2010, 17:14
  #4

Не по теме:

Я поражаюсь... Неужели мне ТАК повезло, что мне ещё ни разу не задавали что-либо, не проведя соответствующей теоретической подготовки?.. Тут столько людей, которым ничего не объяснили и назадавали доказать Великую Теорему Ферма... И, если честно, мне слабо верится в это.

Kastaneda
15.09.2010, 17:29
  #5

Не по теме:

Блин, опоздал((( Хотел код на листочке написать, на телефон сфотать и выложить фотку на файлообменник, в ответе дать ссылку))), как это сделал ТС (до редакции его поста)

Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
15.09.2010, 18:11  [ТС]     Линейная программа. #6
А если там "y" не будет, а в формуле g^1.24
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
15.09.2010, 18:15     Линейная программа. #7
Цитата Сообщение от Usefur Посмотреть сообщение
А если там "y" не будет, а в формуле g^1.24
Круто. А как я должен был догадаться, что там не y, а g? Ну, если y не нужен, тогда нужно убрать из кода его объявление, инициализацию и использовать вместо него g, делов-то...
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
15.09.2010, 18:34  [ТС]     Линейная программа. #8
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <math.h>
#include <conio.h>
 
int main(void)
{
        const int n = 12;
        const double g = 22.68;
        printf("Input x \n");
        double x;
        scanf("%lf ", &x);
        double c = pow((g + n) / (n + 1), 1 / 3.);
        double b = sqrt(n * sin(2 * c * x) * sin(2 * c * x)) /
                (log(sqrt(c)) - pow(g, 1.24));
        printf("b = %lf\n", b);
        getch();
        return 0;
}
Что тут не правильно?.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
15.09.2010, 19:35     Линейная программа. #9
Не scanf("%lf ", &x);
а scanf("%lf", &x);

Добавлено через 36 секунд
Иначе функция сканф ждёт от вас ввода не просто числа, а числа с пробелом в конце...
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
15.09.2010, 19:58  [ТС]     Линейная программа. #10
Спасибо, разобрался.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 04:58     Линейная программа. #11
C
1
printf("b = %lf\n", b);
b - это double, и double в printf() выводится через %f
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 2
16.09.2010, 05:50     Линейная программа. #12
accept, Вы уверены? Я сомневаюсь.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 07:16     Линейная программа. #13
в C89 %lf давало непредсказуемое поведение
в C99 %lf просто переводится в %f (игнорируется l)
но код C99 не может быть собран на компиляторе для C++, так как только C89 является подмножеством C++, а C++ в подобных вопросах ссылается на стандарт C89

надеюсь ясно, что printf() и scanf() очень сильно отличаются по своим спецификаторам
silent_1991
16.09.2010, 12:41
  #14

Не по теме:

accept,
Хм, у меня никогда проблем с %lf не было... Неужели просто везло всегда?..

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2010, 12:47     Линейная программа.
Еще ссылки по теме:

C++ Линейная программа (в чем ошибка)
C++ Линейная интерполяция
C++ Линейная нейронная сеть

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

Или воспользуйтесь поиском по форуму:
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 12:47     Линейная программа. #15
возми программу, добавь в неё long long n, сделай с ней что-нибудь
если распознает, значит у тебя есть C99
а если нет, то printf() подчиняется стандарту C89
а стандарт C89 говорит, что только L можно там применять (для %f, %e, %g)

найди черновик стандарта через поисковую систему
и вот там все функции расписаны от и до
Код
   an optional l (ell) specifying that a following d , i , o ,
   u , x , or X conversion specifier applies to a long int or unsigned
   long int argument; an optional l specifying that a following n
   conversion specifier applies to a pointer to a long int argument; or
   an optional L specifying that a following e , E , f , g , or G
   conversion specifier applies to a long double argument.  If an h , l ,
   or L appears with any other conversion specifier, the behavior is
   undefined.
а C++ вообще этими функциями не занимается, он просто говорит "читайте стандарт C89"
Yandex
Объявления
16.09.2010, 12:47     Линейная программа.
Ответ Создать тему
Опции темы

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