Так как целевой яп не указан написал на С#. Пример работы на рисунке 1.
Условия выделены комментариями внутри кода!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Etazhi
{
class Program
{
static void Main(string[] args)
{
const int ET = 9, KV = 4; //Константы
int N;
Console.Write("Введите номер квартиры: ");
if (!int.TryParse(Console.ReadLine(), out N) || N < 1)
{
Console.WriteLine("Некорретный ввод");
return;
}
//Условия [Начало]
int iTop = N / KV + ((N % KV > 0) ? 1 : 0);
int Npd = (iTop-1) / ET + 1;
int Net = (iTop-1) % ET + 1;
//Условия [Конец]
Console.WriteLine("В {0}-этажном доме, где на каждом этаже по {1} квартиры, \nквартира №{2} будет располагаться в {3} подъезде на {4} этаже", ET, KV, N, Npd, Net);
}
}
}
1.
а) 512 Мбайт = 512 * 8 Мбит = 4096 Мбит
б) 32 Кбайт = 32 * 8 Кбит = 256 Кбит
2.
а) 32 Мбит = 32 : 8 Мбайт = 4 Мбайт
б) 1024 Кбит = 1024 : 8 Кбайт = 128 Кбайт
3. Все зависит от кодировки. Если 1 символ занимает 1 байт, тогда сообщение будет занимать столько байт, сколько символов в сообщении (буквы, пробелы, точки и любые другие символы) - в данном случае - 20 байт.
Если же 1 символ занимает 2 байта (к примеру в кодировке юникод UTF-16), тогда сообщение будет занимать 40 байт.
4. 4 гигабайта = 4096 Мбайт.
4096 / 2 = 2048 картинок поместится на флешке размером 4 гигабайт
Последний вопрос не понял. Посчитать 2 в 32 степени?