помогите исправить недочёт

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
Freeman12
Сообщения: 19
Зарегистрирован: 25 май 2008, 19:17

Составить структурированную программу,которая при наличии у вещественного вектора х1,...,х10 хотя бы одной компоненты<-2 ,все отрицательные компоненты заменяет на их квадрат,оставляя все остальные без изменения,в противном случае вектор домножается на 0.1
(вектор это 10 чисел вводимых с клавиатуры)

Код: Выделить всё

#include<iostream.h>
#include<conio.h>
#include<math.h>
void main()
{float x[10];
int i;
for (i=0;i<10;i++)
	cin>>x[i];
if (x[i]<-2)
    for (i=0;i<10;i++)
    {if(x[i]<0)
       x[i]=x[i]*x[i];
     else
     x[i]=x[i];}
else
for (i=0;i<10;i++)
{x[i]=x[i]*0.1;
cout<<"x["<<
i<<"]:"<<x[i]<<'\n';}
getch();
};
Прога почему-то всё время идёт по ветке else,и умножает всё на 0.1(((помогите пожалуйста!!!
язык С++
airyashov
Сообщения: 441
Зарегистрирован: 02 ноя 2007, 10:31

неправильно расставлены блоки, проверяется только один элемент, причем хз какой, чему равно i после цикла, на верное x[10], ошибку ищите в блоках
xsix
Сообщения: 22
Зарегистрирован: 07 ноя 2008, 20:46
Контактная информация:

Разберись с расстановкой круглых скобок, неправильно выделено тело цикла!!!
Freeman12
Сообщения: 19
Зарегистрирован: 25 май 2008, 19:17

Всем спасибо,задание сделал!!!Кому понадобится пишите-дам правильный вариант)
ТЕМУ МОЖНО ЗАКРЫТЬ
Ответить