На вход программы поступает неизвестное количество целых чисел, ввод заканчивается нулём (ноль не входит в последовательность). Определить, сколько получено двузначных чисел, которые заканчиваются на 3. язык Java.
Для записи информации об одном спортсмене требуется log(2)768 ≈ 10 бит.
Объем сообщения о финише 200 спортсменов = 200*10 бит = 2000/8 байт = 250 байт
Объяснение: Для измерения длины есть такие единицы, как миллиметр, сантиметр, метр, километр. Известно, что масса измеряется в граммах, килограммах, центнерах и тоннах. Бег времени выражается в секундах, минутах, часах, днях, месяцах, годах, веках. Компьютер работает с информацией и для измерения ее объема также имеются соответствующие единицы измерения.
Мы уже знаем, что компьютер воспринимает всю информацию через нули и единички. Бит – это минимальная единица измерения информации, соответствующая одной двоичной цифре («0» или «1»).
Байт состоит из восьми бит. Используя один байт, можно закодировать один символ из 256 возможных (256 = 28). Таким образом, один байт равен одному символу, то есть 8 битам:
1 символ = 8 битам = 1 байту.
Изучение компьютерной грамотности предполагает рассмотрение и других, более крупных единиц измерения информации.
В приведенной выше таблице степени двойки (210, 220, 230 и т. д.) являются точными значениями килобайт, мегабайт, гигабайт. А вот степени числа 10 (точнее, 103, 106, 109 и т. п.) будут уже приблизительными значениями, округленными в сторону уменьшения. Таким образом, 210 = 1024 байта представляет точное значение килобайта, а 103 = 1000 байт является приблизительным значением килобайта.
Такое приближение (или округление) вполне допустимо и является общепринятым.
Ниже приводится таблица байтов с английскими сокращениями (в левой колонке):
1 Kb ~ 103 b = 10*10*10 b= 1000 b – килобайт
1 Mb ~ 106 b = 10*10*10*10*10*10 b = 1 000 000 b – мегабайт
1 Gb ~ 109 b – гигабайт
1 Tb ~ 1012 b – терабайт
1 Pb ~ 1015 b – петабайт
1 Eb ~ 1018 b – эксабайт
1 Zb ~ 1021 b – зеттабайт
1 Yb ~ 1024 b – йоттабайт
Выше в правой колонке приведены так называемые «десятичные приставки», которые используются не только с байтами, но и в других областях человеческой деятельности. Например, приставка «кило» в слове «килобайт» означает тысячу байт, также как в случае с километром она соответствует тысяче метров, а в примере с килограммом она равна тысяче грамм.
Возникает вопрос: есть ли продолжение у таблицы байтов? В математике есть понятие бесконечности, которое обозначается как перевернутая восьмерка: ∞.
Понятно, что в таблице байтов можно и дальше добавлять нули, а точнее, степени к числу 10 таким образом: 1027, 1030, 1033 и так до бесконечности. Но зачем это надо? В принципе, пока хватает терабайт и петабайт. В будущем, возможно, уже мало будет и йоттабайта.
Напоследок парочка примеров по устройствам, на которые можно записать терабайты и гигабайты информации. Есть удобный «терабайтник» – внешний жесткий диск, который подключается через порт USB к компьютеру. На него можно записать терабайт информации. Особенно удобно для ноутбуков (где смена жесткого диска бывает проблематична) и для резервного копирования информации. Лучше заранее делать резервные копии информации, а не после того, как все пропало.
/*Решение с обобщения формула Брахмагупты для произвольного четырехугольника. Функция perimeter(double x[], double y[]) возвращает значение периметра, функция area(double x[], double y[]) возвращает значение площади, пример использования и реализация приведены ниже. */
#include <iostream>
#include <math.h>
double perimeter(double x[], double y[]);
double area(double x[], double y[]);
int main()
{
double x[4], y[4];
std::cout << "Quadrangle ABCD\n";
for (auto i = 0; i < 4; i++)
{
std::cout << "Input coordinates of point " << char(i + 'A') << ": ";
Для записи информации об одном спортсмене требуется log(2)768 ≈ 10 бит.
Объем сообщения о финише 200 спортсменов = 200*10 бит = 2000/8 байт = 250 байт
Объяснение: Для измерения длины есть такие единицы, как миллиметр, сантиметр, метр, километр. Известно, что масса измеряется в граммах, килограммах, центнерах и тоннах. Бег времени выражается в секундах, минутах, часах, днях, месяцах, годах, веках. Компьютер работает с информацией и для измерения ее объема также имеются соответствующие единицы измерения.
Мы уже знаем, что компьютер воспринимает всю информацию через нули и единички. Бит – это минимальная единица измерения информации, соответствующая одной двоичной цифре («0» или «1»).
Байт состоит из восьми бит. Используя один байт, можно закодировать один символ из 256 возможных (256 = 28). Таким образом, один байт равен одному символу, то есть 8 битам:
1 символ = 8 битам = 1 байту.
Изучение компьютерной грамотности предполагает рассмотрение и других, более крупных единиц измерения информации.
Таблица байтов:
1 байт = 8 бит
1 Кб (1 Килобайт) = 210 байт = 2*2*2*2*2*2*2*2*2*2 байт =
= 1024 байт (примерно 1 тысяча байт – 103 байт)
1 Мб (1 Мегабайт) = 220 байт = 1024 килобайт (примерно 1 миллион байт – 106 байт)
1 Гб (1 Гигабайт) = 230 байт = 1024 мегабайт (примерно 1 миллиард байт – 109 байт)
1 Тб (1 Терабайт) = 240 байт = 1024 гигабайт (примерно 1012 байт). Терабайт иногда называют тонна.
1 Пб (1 Петабайт) = 250 байт = 1024 терабайт (примерно 1015 байт).
1 Эксабайт = 260 байт = 1024 петабайт (примерно 1018 байт).
1 Зеттабайт = 270 байт = 1024 эксабайт (примерно 1021 байт).
1 Йоттабайт = 280 байт = 1024 зеттабайт (примерно 1024 байт).
В приведенной выше таблице степени двойки (210, 220, 230 и т. д.) являются точными значениями килобайт, мегабайт, гигабайт. А вот степени числа 10 (точнее, 103, 106, 109 и т. п.) будут уже приблизительными значениями, округленными в сторону уменьшения. Таким образом, 210 = 1024 байта представляет точное значение килобайта, а 103 = 1000 байт является приблизительным значением килобайта.
Такое приближение (или округление) вполне допустимо и является общепринятым.
Ниже приводится таблица байтов с английскими сокращениями (в левой колонке):
1 Kb ~ 103 b = 10*10*10 b= 1000 b – килобайт
1 Mb ~ 106 b = 10*10*10*10*10*10 b = 1 000 000 b – мегабайт
1 Gb ~ 109 b – гигабайт
1 Tb ~ 1012 b – терабайт
1 Pb ~ 1015 b – петабайт
1 Eb ~ 1018 b – эксабайт
1 Zb ~ 1021 b – зеттабайт
1 Yb ~ 1024 b – йоттабайт
Выше в правой колонке приведены так называемые «десятичные приставки», которые используются не только с байтами, но и в других областях человеческой деятельности. Например, приставка «кило» в слове «килобайт» означает тысячу байт, также как в случае с километром она соответствует тысяче метров, а в примере с килограммом она равна тысяче грамм.
Возникает вопрос: есть ли продолжение у таблицы байтов? В математике есть понятие бесконечности, которое обозначается как перевернутая восьмерка: ∞.
Понятно, что в таблице байтов можно и дальше добавлять нули, а точнее, степени к числу 10 таким образом: 1027, 1030, 1033 и так до бесконечности. Но зачем это надо? В принципе, пока хватает терабайт и петабайт. В будущем, возможно, уже мало будет и йоттабайта.
Напоследок парочка примеров по устройствам, на которые можно записать терабайты и гигабайты информации. Есть удобный «терабайтник» – внешний жесткий диск, который подключается через порт USB к компьютеру. На него можно записать терабайт информации. Особенно удобно для ноутбуков (где смена жесткого диска бывает проблематична) и для резервного копирования информации. Лучше заранее делать резервные копии информации, а не после того, как все пропало.
/*Решение с обобщения формула Брахмагупты для произвольного четырехугольника. Функция perimeter(double x[], double y[]) возвращает значение периметра, функция area(double x[], double y[]) возвращает значение площади, пример использования и реализация приведены ниже. */
#include <iostream>
#include <math.h>
double perimeter(double x[], double y[]);
double area(double x[], double y[]);
int main()
{
double x[4], y[4];
std::cout << "Quadrangle ABCD\n";
for (auto i = 0; i < 4; i++)
{
std::cout << "Input coordinates of point " << char(i + 'A') << ": ";
std::cin >> x[i] >> y[i];
}
std::cout << perimeter(x, y) << " " << area(x, y);
return 0;
}
double perimeter(double x[], double y[])
{
double a[4], p = 0;
for (auto i = 0; i < 4; i++)
{
a[i] = sqrt((x[i]-x[(i + 1) % 4]) * (x[i]-x[(i + 1) % 4]) + (y[i]-y[(i + 1) % 4]) * (y[i]-y[(i + 1) % 4]));
p += a[i];
}
return p;
}
double area(double x[], double y[])
{
double a[4], p = 0, s = 1, d[2];
for (auto i = 0; i < 4; i++)
{
a[i] = sqrt((x[i]-x[(i + 1) % 4]) * (x[i]-x[(i + 1) % 4]) + (y[i]-y[(i + 1) % 4]) * (y[i]-y[(i + 1) % 4]));
p += a[i];
}
for (auto i = 0; i < 4; i++)
{
s *= (p / 2- a[i]);
}
for (auto i = 0; i < 2; i++)
{
d[i] = sqrt((x[i]-x[i + 2]) * (x[i]-x[i + 2]) + (y[i]-y[i + 2]) * (y[i]-y[i + 2]));
}
s -= (a[0] * a[2] + a[1] * a[3] + d[0] * d[1]) * (a[0] * a[2] + a[1] * a[3] - d[0] * d[1]) / 4;
s = sqrt(s);
return s;
}