программа на си, но си и си++ похожи, если что подправьте
k - сумма отрицательных
l - количество положительных
int main()
{
int a[n], n, i, k, l;
scanf("%d", & n);
for (i = 0; i < n; i++)
scanf("%d ", & a[i]);
for (i = 0; i < n; i++)
{
if (a[i] > 0)
l++;
else
if (a[i] < 0)
k += a[i];
}
// здесь вывод, если нужен
}
Поделитесь своими знаниями, ответьте на вопрос:
2
количество символов используемых для кодирования номера составляет:
30 букв + 10 цифр = 40 символов. количество информации несущий один символ равен 6 бит (2^i=40, но количество информации не может быть дробным числом, поэтому берем ближайшую степень двойки большую количества символов 2^6=64).
мы нашли количество информации заложенное в каждом символе, количество символов в номере равно 7, следовательно 7*6=42 бит
каждый номер равен 42 битам информации, но по условию каждый номер кодируется одинаковым и минимально возможным количеством байт, следовательно нам необходимо узнать сколько байт в 42 битах. если разделить 42 на 8 получится дробное число, а нам необходимо найти целое количество байт на каждый номер, поэтому находим ближайший множитель 8-ки который превысит количество бит, это 6 (8*6=48). каждый номер кодируется 6 байтами.
для хранения 50 автомобильных номеров потребуется: 6*50=300 байт