Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 121
Благодарности: 35

Профиль | Отправить PM | Цитировать


Цитата 399Dmitr933:
float n,i; »
Почему float? Ладно еще n, но для i лучше подойдет unsigned int. Кроме того, тип float может вызывать очень неприятный баг, связанный с погрешностью округления. Так что лучше использовать целочисленные типы.
И кстати, зачем вы используете объявление кучи переменных в одной строке? Лучше не жалеть строк.
Цитата:
for (i=1;i<=(n-3);i++)
Цитата:
for (i=3;i<=n;i++)
Цитата:
for (i=1;i<=n;i++)
Использовать одну переменную-счетчик в нескольких циклах в пределах одной области видимости можно, но нежелательно.
Цитата:
float a=rand()%20,b=rand()%5;
В задании наверное предполагается что a и b это числовые последовательности, а не числа. Вернитесь к варианту с массивами, но вот указатели пока не трогайте. Для статических массивов есть вариант проще.

Сам алгоритм вычисления тут довольно простой. Сначала считаете произведения. Как я уже упоминал, в данном случае их можно посчитать в одном цикле. Затем считаете сумму. Самое интересное, что суммируемое выражение тут не зависит от i. Так что можно просто вычислить выражение в скобках и умножить на n.
Попробуйте сначала нарисовать блок-схему или записать алгоритм псевдокодом, а потом уже переносить это на C++.

Отправлено: 09:18, 01-07-2013 | #10