Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

задачка (новичек)

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> задачка (новичек)
Имя
Сообщение << Старые топики   Новые топики >>
задачка (новичек) - 2011-11-17 18:55:58.896666   
Oseti9

Сообщений: 6
Оценки: 0
Присоединился: 2011-11-12 18:06:09.803333
как написать более компактно эту прогу
вычислить
y=cos(x)+cos(x)^2+cos(x)^3+…+cos(x)^30
Post #: 1
RE: задачка (новичек) - 2011-11-17 19:09:47.443333   
Batan111

Сообщений: 3
Оценки: 0
Присоединился: 2011-11-06 19:47:14.056666
На каком языке реализовать?
Post #: 2
RE: задачка (новичек) - 2011-11-17 19:31:58.690000   
Oseti9

Сообщений: 6
Оценки: 0
Присоединился: 2011-11-12 18:06:09.803333
c++
Post #: 3
RE: задачка (новичек) - 2011-11-17 20:26:03.543333   
Oseti9

Сообщений: 6
Оценки: 0
Присоединился: 2011-11-12 18:06:09.803333
#include<iostream>
#include<math.h>
#include<conio.h>
using namespace std;

int main()
{
int i;
float y,x;
for(i=1;i<=30;i++)
y=y+pow(cos(x),i);
getch();
return 0;
}



что неправильно тут?
Post #: 4
RE: задачка (новичек) - 2011-11-17 20:34:25.550000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Переменные x и y не инициализированы.
Post #: 5
RE: задачка (новичек) - 2011-11-17 20:48:26.073333   
Oseti9

Сообщений: 6
Оценки: 0
Присоединился: 2011-11-12 18:06:09.803333
#include&lt;iostream&gt; #include&lt;math.h&gt; #include&lt;conio.h&gt; using namespace std; int main() { int i; float y=1,x=1; for(i=1;i&lt;=30;i++) y=y+pow(cos(x),i); cout &lt;&lt; y; getch(); return 0; }
так будет правильно?
Post #: 6
RE: задачка (новичек) - 2011-11-17 21:31:47.846666   
Genco

Сообщений: 1662
Оценки: 90
Присоединился: 2007-12-16 23:11:22.003333
Включи ж ты логику y=0 "Ничего не было, потом сложили кусочки-слагаемые"
Насчет Х - это тебе виднее, для какого ты подсчитать хочешь))
Post #: 7
RE: задачка (новичек) - 2011-11-17 21:34:59.756666   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: Oseti9
#include&lt;iostream&gt; #include&lt;math.h&gt; #include&lt;conio.h&gt; using namespace std; int main() { int i; float y=1,x=1; for(i=1;i&lt;=30;i++) y=y+pow(cos(x),i); cout &lt;&lt; y; getch(); return 0; } так будет правильно?

Судя по исходной формулировке – нет. У тебя есть калькулятор? Возьми ручку, бумажку и этот калькулятор. И согласно программе считай. Записывай результаты в табличку с тремя столбцами: i, x, y. И на каждую итерацию цикла выписывай в табличку значения i, x, y новой строчкой. Все 30 итераций выписывать не обязательно, но первые три выпиши обязательно.

А потом возьми тот же самый калькулятор и просуммируй первые три члена последовательности в условии задачи. Даже нет, с этого надо начать. Тогда ты сходу упрёшься в интересный вопрос: чему равен x? Я подскажу ответ на этот вопрос: думаю, надо ввести x с клавиатуры. Но ты всё равно задайся каким-нибудь конкретным значением x (например, 0) и сосчитай первые три члена последовательности.

И наконец, сравни вычисления по алгоритму с вычислениями по формуле. И найди где они начинают расходится. Ты увидишь, что расходится они начинают прямо сразу, и увидишь, что дело в том, что y инициализирован не тем значением. И ты сразу увидишь то правильное значение, которое надо изначально положить в y.
Post #: 8
RE: задачка (новичек) - 2011-11-19 20:30:34.140000   
FFF3x

Сообщений: 3
Оценки: 0
Присоединился: 2011-11-19 20:23:10.286666
Ребята, здрасти я новичок, помогите написать программу перевода из десятичной системы в двоичную в QBASIK
Post #: 9
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> задачка (новичек)







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.