подключив предварительно библиотеку <vector>
int x[5][5];
for(int i = 0; i < 5; i++){
for(int j = 0; i<5; j++){
x[i][j] = rand()%20 - 10;
}
}
vec<int> vec;
for(int i = 0; i < 5; i++){
for(int j =0; j < 5; j++){
if(x[i][j] < 0){
for(int f = 0; f < vec.size(); f++){
if(vec(f) == x[i][j]) break;
}
else { vec.push_back(j); }
}
}
}
}
if(vec == 0) cout << "Нет столбцов с отрицательным значением";
else{ for(int j = 0, j<vec.size(); j++){
cout << vec(j) << ' ';
}
N = int(input('Введите число N'))
sum = 0
add = 2
k = 0
while sum < =N:
sum += add
add += 2
k += 1
print(k)
Объяснение:
У меня реализация попроще, чем в предыдущем ответе, но вроде бы тоже правильная :)
Мы видим, что к сумме постоянно прибавляется число, на 2 большее, чем предыдущее, начиная с двух. Это и есть переменная add: изначально она равна 2, то есть на первом проходе цикла к сумме прибавится 2. После этого, в этом же цикле значение переменной add станет равно 4 (7-я строка), поэтому на втором проходе к сумме прибавится 4, и так далее. В итоге получаем правильную сумму: 2 + 4 + 6 + ...
Переменная k - это как раз искомое количество слагаемых этой суммы. Каждый раз, когда к сумме прибавляется новое слагаемое, она увеличивается на 1.
337,5 < 360
1 дискета при кодировки ASCII (1 символ=1 байту)
2 дискеты при кодировки в Unicode (1 символ = 2 байтам)