Как Записать Эти Математические Выражения На С++ ?

Тема в разделе "C/C++/C#", создана пользователем Genri, 29 фев 2012.

  1. Genri

    Genri Гость

    Пишу выражения, но она выдает неправильный ответ или ошибку в чем здесь проблема кто знает скажите?
    Как записать вот эти два математических выражения на языке С++. И желательно напишите на турбо паскаль как записать, просто хочу сверить не отличаются ли у меня от ваших выражения.
     

    Вложения:

    • кадр.jpg
      кадр.jpg
      Размер файла:
      189,9 КБ
      Просмотров:
      80
  2. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    Напишите свои выражения
     
  3. Genri

    Genri Гость

    Вот это на турбо паскаль:
    1) Sqrt(exp/4x(cos(3))/cos(3)))+sqr(cos(4))/exp(sin(3))

    2) Exp(1/6*ln(exp(30*ln(sin(2))+cos(7pi/180)/(cos(7)/sin(7))*6.31*(exp(10*ln(21))

    Это выражения на турбо паскаль, хотя думаю что и тут может быть мелочная ошибка, если есть поправьте. Но мне нужно на С++, ошибку выдает.
     
  4. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    не проверял. Первое:
    Код (Text):
    sqrt( pow( tan( (double)4 ), (double)3 ) + pow( cos( (double)4 ), (double)2 ) / exp( sin( (double)3 ) );
     
  5. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    только pow( tan( (double)3 ), (double)4 )
     
  6. Genri

    Genri Гость

    То первое выражение, которое вы написали опять выдает ошибку, достали меня уже эти синтаксические ошибки, что не напиши ошибка идет. Она почему то реагирует все время на ошибку во всех скобках а остальное нормально. Непойму что с этими скобками не так.
    Выкладываю скрин ошибки, посмотрите что там не так.
     

    Вложения:

    • кадрl.jpg
      кадрl.jpg
      Размер файла:
      190,7 КБ
      Просмотров:
      62
  7. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    ) )/
    от корня sqrt скобка не закрыта была, мог бы и сам проверить
     
  8. Гость

    To Genri: Я на скрине не вижу скобок в main, они там есть?
    Код (C++):
    void main()
    {
    }
     
  9. Genri

    Genri Гость

    OKEN: Да действительно, просто не заметил отсутствующую скобку, исправил, но ошибка уменьшилась только на одну.
    Теперь там так: sqrt(tan опять же на эту первую скобку указывает ошибка, а ошибка там синтаксическая.

    Радамант:
    Код (Text):
    void main()
    {
    }
    Именно так и написал, добавил две нижние фигурные скобки вместе с исправленной скобкой, но ошибки стало две и они разные
    1:NONAMEOO.CPP 6: 'pow' cannot start a parameter declaration ошибку указывает на tan на букву t
    2:NONAMEOO.CPP 6: Parameter names are used only with a function body ошибку указывает на (( tan((double)3)) на букву d
    Я запутался с этими ошибками, можете подсказать что теперь не так вроде исправил, все скобки в норме. Думал будет проще простого за раз написать эти выражения, похоже я ошибался.
     
  10. Гость

  11. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    (double)3 заменить на 3.0, т.е. нечто подобное sqrt( pow( tan(3.0), 4.0 ) + pow( cos( 4.0 ), 2.0 )) / exp( sin( 3.0 ) );
    (вроде тип double и так идет по умолчанию, емнип).
    и результат выражения сохраните в какую-нибудь переменную и/или выведите на экран.
     
  12. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Тут абсолютно все числа можно записать как целые, т.е.: 2, 3, 4 (без точек и нулей)
     
  13. Genri

    Genri Гость

    Не суждено мне видимо эти два простых примерчика просто записать в правильной форме. Oken вы правильно сказали, что надо было писать с нулем 3.0, помню препод так говорил, но даже хоть я ее правильно написал, но возникли две новые ошибки, еще хуже чем другие, вообще там нет логики. Вот здесь где sqrt(pow(tan на букву t она указывает ошибку с сообщением что типо параметры введены неверно или что типа этого, и где здесь логика, я что букву т написал неверно и нужна тут другая буква? Я долго перепробовал там все возможные варианты написания со скобками и знаками ничто не помогает те же самые 2 ошибки либо их еще больше. Как я понял примеры записать нереально записать и получить правильный ответ. Ладно оставьте эту ерунду. Спасибо кто пытался помочь.
    Пусть я лучше по лабораторной двойку получу, чем буду голову ломать и мучаться с написанием этих примеров, которые учителя за минуту смогут это сделать. Ну и хрен с ним.
     
  14. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Ты зря разочаровываешься. С нулем писать не обязательно в этом случае. Покажи код.
     
  15. Genri

    Genri Гость

    Нет я и с нулями и без нулей пробовал. Там даже в одной из ошибок выскакивало сообщение, что я типо double не написал и из-за этого ошибка, но и с ней и без неё лезет другая ошибка, но уже в тангенсе на букве t. Не пойму, что это за ошибка.
    Я сделал скрин, с кодами думаю все в норме, написал как нас и учили, проблема только с написанием примера.
    Вроде все коды и функции присутвстуют? int функция там не нужна, но что бы я не написал выходит ошибка с указанием ошибки на т.
     

    Вложения:

    • ajnj.jpg
      ajnj.jpg
      Размер файла:
      184,2 КБ
      Просмотров:
      27
  16. Гость

    У тебя не правильно организована функция main(). Еще раз советую прочитай как организуются функции в C++.

    А правильно будет так:
    Код (C++):
    #include <iostream.h>
    #include <math.h>
    #include <conio.h>
    #include <iomanip.h>

    void main()
    {
    double a = sqrt( pow( tan(3.0), 4.0) + pow( cos(4.0), 2.0)) / exp(sin(3.0));
    cout << a << endl;
    getch();
    }
    Вот файл, проверил в BC 3.11, все работает. Если не заработает, пиши посмотрим настройки среды.
    Посмотреть вложение TEST.CPP

    И еще файл noname00.cpp находится в папке BIN, можно открыть в любом текстовом редактаре.
     
  17. Genri

    Genri Гость

    Воо красавчик, спасибо, теперь работает, наконец ответ 0.567889. Мне как раз завтра надо лабораторную сдавать, спасибо. Когда начал второй тоже делать аналогично, были некоторые ошибки пришлось повозиться, но потом там тоже я получил ответ. Кстати учитель нам и не говорил вообще писать функции conio.h, cout, и getch. Ну ничего завтра я с ним разберусь, и функции надо бы подучить. ;)
     
Загрузка...

Поделиться этой страницей