0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
1 | |
Написать программу для вычисления функции F21.01.2012, 20:34. Показов 4702. Ответов 15
Метки нет Все метки)
(
помогите решить данные 2 задачи
1.Использовать оператор while Написать программу для вычисления функции F, при этом, если не указано количество шагов (бесконечность), то вычисления проводить с точностью 10-4 (точность считается достигнутой, если очередное слагаемое или сомножитель по модулю меньше точность). (картинка) 2. Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Найти самое длинное слово сообщения.
0
|
|
21.01.2012, 20:34 | |
Ответы с готовыми решениями:
15
Написать программу для вычисления функции F |
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
|
||||||
22.01.2012, 00:55 | 2 | |||||
Очень интересное первое задание.
Вот мои мысли. 1) Не указано количество шагов ( указана бесконечность ) - значит считаем с точностью 10^-4, а это 0.0001. 2) Но тут мы видим, что очередной сомножитель считается по формуле, в которой к результату деления всегда прибавляется единица. 3) Вывод - таким образом очередной сомножитель по модулю будет всегда больше точности 10^-4, кроме случая, когда результат деления будет отрицательным и разность этого результата с единицей будет по модулю меньше точности 10^-4. 4) И чтобы достичь этого случая x должен быть равен близко к 3 / 2 pi и k должен быть равен единице. А это единственный случай в цикле - первая его итерация, когда k равно единице, при условии, что x будет иметь значение близкое к 3/2 pi. Вот код программы. Если при запуске ввести x равное 4.71225 или очень близкое к этому значение, то выполнится всего одна итерация цикла. Если ввести значение отличающиеся от 4.71225 буквально на 0.15 - 0.2, то произойдет зацикливание.
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
||||||||||||
22.01.2012, 01:56 [ТС] | 3 | |||||||||||
а как насчет 2 задачки...
Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Найти самое длинное слово сообщения. __________________________________________________ ______________________________ Насчет 1 задачки.... Вот похожая ток я не пойму что и как.... Все тоже самое ток пример чуть другой...
0
|
8 / 8 / 3
Регистрация: 06.06.2010
Сообщений: 25
|
||||||
22.01.2012, 02:51 | 4 | |||||
2 задачка
а что не понятного? все тоже самое, только формула проще, если там выражение зависит от введенного нами x, то здесь тупо произведение считается.
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
22.01.2012, 04:02 [ТС] | 5 |
спасибо большое Вам!
0
|
8 / 8 / 3
Регистрация: 06.06.2010
Сообщений: 25
|
|
22.01.2012, 11:36 | 6 |
да, второй пример, который вы привели считается не верно, у вас в формуле стоит произведение, а программа считает сумму.
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
22.01.2012, 15:22 [ТС] | 7 |
=)
и всё же... как решить такое чудо... ? Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Найти самое длинное слово сообщения.
0
|
8 / 8 / 3
Регистрация: 06.06.2010
Сообщений: 25
|
||||||||||||||||
22.01.2012, 15:33 | 8 | |||||||||||||||
я же ответил вам, см выше. свою строку сюда
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
22.01.2012, 16:22 [ТС] | 9 |
спасиб, я чуть перепутал просто...
проблема с 1 задачей, весь код кинул в с++, запустил просит ввести х и чтобы я не вводил выдает ошибку(Необработанное исключение в "0x004114e9" в "1.exe": 0xC00000FD: Stack overflow.), в чем может быть проблема?
0
|
8 / 8 / 3
Регистрация: 06.06.2010
Сообщений: 25
|
|
22.01.2012, 16:47 | 10 |
переполнение стека.
внимательней прочитайте, ответ roofa, он все расписал, x = 4.71225 или близко. при различных x программа зацикливается.
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
22.01.2012, 17:04 [ТС] | 11 |
даже когда ввожу x = 4.71225, выдает туже ошибку=(
0
|
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
|
|
22.01.2012, 17:15 | 12 |
2 keksik-91
Во-первых условие задачи вызывает сомнения и скорее всего неверно, так как вряд ли Вам по учебе специально дали бы задачу с зацикливанием, скорее всего просто ошибочно условие. Ну это я так думаю. Во-вторых - какой у Вас компилятор?
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
|
22.01.2012, 17:35 [ТС] | 13 |
ну если я правильно Вас понял то, Microsoft Visual Studio 2010 С++ .
0
|
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
|
|
22.01.2012, 19:38 | 14 |
с Microsoft Visual Studio никогда не работал. Мой пример отлично работает на gcc, mingw.
Думаю, что Вы вводите что-то не то или переписали неверно мой пример. Скриншот с ошибкой выложите, возможно это поможет понять, что у Вас за ошибка.
1
|
0 / 0 / 0
Регистрация: 08.02.2011
Сообщений: 19
|
||||||||||||||||
22.01.2012, 20:44 [ТС] | 15 | |||||||||||||||
спасиб, все заработало... ошибка в самой программе была (переустановил)
можно еще один вопрос? есть такая задача. Вводится последовательность из N целых чисел. Найти среднее арифметическое его цифр (функцией оформить определения среднего арифметического цифр числа).
error C2552: v: инициализация не агрегированных данных с помощью списка инициализации не допускается IntelliSense: инициализация объектов типа "std::vector<int, std::allocator<int>>" с помощью выражения {...} не допускается Сказали... вектор заполнять придется, с помощью push_back. тип.
0
|
Roof
|
22.01.2012, 21:12
Написать программу для вычисления функции F
#16
|
Не по теме: В одной теме не нужно плодить кучу вопросов - создавайте новую тему для новых вопросов.
0
|
22.01.2012, 21:12 | |
Написать программу для вычисления значения функции Написать программу для вычисления значения функции
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |