papanovar
?>

Напишите программу которая находит наибольший общий делитель трёх заданных целых чисел паскаль

Информатика

Ответы

Filintver
Будет иметь кучу вариантов решения.  почему? как минимум: 1)  неизвестна кодировка, например в utf-8 для записи одной буквы используется 8 бит, utf-16 16 бит, utf-32 32 бита. 2) к чему было дано, что у нас 17 символом? еще если бы дано было конкретные, то можно было бы может в кодировке что понять.  3) "все символы кодируются одинаковым", то бишь числа, тоже будут кодироваться (или не будут) таким же количеством битов, как и буквы (бред же : ) ) если под букву будет 8 бит (1 байт) то нам не нужно 8 бит под числа, нам хватит и 4-х бит. может я просто сильно вчитываюсь, но кто знает. вроде не хватает условий еще.    если предположить, что 17 букв кодируются в кодировке utf-8, то на каждую букву будет 8 бит (1 байт).  дальше, если на цифры тоже отводим 8 бит (по условия 3-го пункта) получится 8*5=40 бита  на буквы, и 8*2=16 бита  на цифры. итого 56 бит на запись одного логина.  на запись 50 пользователей = 50*56=2800 бит. если числа кодировать минимальным (0-9 цифр) числом бит, то нужно будет на 1 цифру 4 бита (9 в двоичной равно 1001), на две цифры 2 бита. итого 8*5=40 бит на буквы, и 4*2=8 бит на цифры, 48 бит логин. 50*48= 2400бит 50 логинов.
derkachn6429
#include < ctime>   #include < algorithm>   #include < vector>     int main() {     // заполняем.     const int n = 1000;     std: : srand(time(0));     std: : vector< unsigned int> arr(n);         std: : generate(arr. arr. std: : rand);         // находим первые два четных элемента.             auto lambda = [](const unsigned int & i){ return (i % 2) == 0; };     auto ieven1 = std: : find_if(arr. arr. lambda);     auto ieven2 = std: : find_if(ieven1 + 1 , arr. lambda);     unsigned int   neven1 = *ieven1;     unsigned int   neven2 = *ieven2;     // изменяем.     bool isturn = false;     std: : transform(ieven2 + 1, arr. ieven2 + 1,         [& isturn, & neven1, & neven2](unsigned int i){             unsigned int t = i;             i = neven1 * neven2;             if (t % 2) return i;             isturn = ! isturn;             if (isturn) neven1 = t;             else         neven2 = t;             return i;     });             return 0; }

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Напишите программу которая находит наибольший общий делитель трёх заданных целых чисел паскаль
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

mototeh69
VladimirovnaViktorovich
olgakozelskaa492
arinaunknown6867
expozition
Valentina
okarp
ielienakozlova696
Ivanovich-A.V
borisowaew
emaykova785
Андрей-Викторовна1910
skryabinamaria
videofanovitch
kabinet17