Псевдокод:
N - номер квартиры
iTop = N div 4;
if(N mod 4 > 0) iTop++;
Npd = (iTop-1) div 9 + 1; // Подъезд
Net = (iTop-1) mod 9 + 1; // Этаж
Странные вопросы и составлены не совсем грамотно. Если рассматривать все попунктно, то во всем виноват бюджет!!!
Дано:
K=1024*512=524288
V=1,5 Мб * 1024=1536 Кб * 1024=1572864 байт * 8=12582912 бит
Найти:
N-?
Решение:
V=K*I
I=log₂N
N=2^i
I=V/K
I=12582912/524288=24 бит
N=2^24=16777216
Ответ: 16777216
//Мое условие отличается от данного Вами, потому что в Вашем была допущена ошибка, но я разобрался.
#include <iostream>
using namespace std;
typedef unsigned short int USI;
int main() {
/* инициализация */
USI n;
cout << "Количество учеников: ";
cin >> n;
USI a[n], g[n], f[n];
/* заполнение массивов */
size_t i;
for(i = 0; i < n; i++) {
cout << "Оценки ученика "
<< (i+1) << ":\n\n";
cout << "Алгебра: ";
cin >> a[i];
cout << "Геометрия: ";
cin >> g[i];
cout << "Физика: ";
cin >> f[i];
cout << "\n-----\n\n";
}
cout << "\n-----\nРЕЗУЛЬТАТЫ\n-----\n\n";
/* Средняя оценка по алгебре */
USI sum = 0;
for(i = 0; i < n; i++) {
sum += a[i];
}
cout << "Средняя оценка по алгебре: "
<< (sum/n) << '\n';
/* Количество учеников без двоек */
USI notwo = 0;
for(i = 0; i < n; i++) {
if ( (a[i] <= 2)
|| (g[i] <= 2)
|| (f[i] <= 2)
) {
continue;
}
else {
notwo++;
}
}
cout << "Учеников без двоек: "
<< notwo << '\n';
return 0;
}