#include <algorithm>
#include <iostream>
#include <random>
#include <vector>
void fillVector(std::vector<int>&, int lowerBound, int upperBound);
void print(const std::vector<int>&);
int main() {
std::vector<int> vec { };
std::size_t size { 0 };
std::cout
<< "Please, enter the number of elements: ";
std::cin
>> size;
if (size < 1 || size > 1000) {
std::cerr
<< "The size must be in the range [1; 1000]" << std::endl;
return 1;
}
vec.resize(size);
fillVector(vec, 0, 100);
print(vec);
std::size_t changes { 0 };
for (std::size_t i { 0 }; i < vec.size() - 1; ++i) {
int tempValue { 0 };
for (std::size_t j { i + 1 }; j < vec.size(); ++j) {
if (vec.at(i) > vec.at(j)) {
tempValue = vec.at(i);
vec.at(i) = vec.at(j);
vec.at(j) = tempValue;
++changes;
<< "Number of changes: " << changes << std::endl;
return 0;
void fillVector(std::vector<int>& vec, int lowerBound, int upperBound) {
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<int> dist(lowerBound, upperBound);
int randomValue { };
for (auto& value : vec) {
while (true) {
randomValue = dist(gen);
if ( std::find( vec.begin(), vec.end(), randomValue) == vec.end() ){
value = randomValue;
break;
void print(const std::vector<int>& vec) {
for (const auto value : vec) {
<< value << " ";
<< std::endl;
1) ответ: 260
2) ответ: 4
3) ответ: А) 180 А) 52
1) * V = U * t, V - объем в битах, U - скорость в бит/сек, t - время в секундах.
Решаем относительно времени:
t = V/U
* Сначала Кате нужно скачать 512 Кб со скоростью 2²⁰ бит/сек, прежде чем начать передачу файла Маше. 512 Килобайт = 0.5 Мегабайт = 0.5 * 2²³ бит
t₁ = cек.
* Далее Катя может начинать передавать файл объемом 8 Мегабайт Маше со скоростью 2¹⁸ бит/сек 8 Мегабайт = 8 * 2²³ бит.
* Общее время = t1 + t2 = 256 + 4 = 260.
t₂ = cек.
* Через 260 секунд от начала получения файла Катей Маша сможет получить весь заказанный файл.
ответ: 260
2) * Вычислим скорость передачи данных по каналу связи: дробь, числитель — 20Мбайт, знаменатель — 75 сек = дробь, числитель — 4, знаменатель — 15 Мбайт/сек.
= Мбайт/cек.
Поскольку на упаковку и распаковку данных ушло 15 секунд, то на передачу сжатых данных по каналу связи ушло 30 − 15 = 15 секунд.
* Зная скорость передачи, найдем объём сжатого файла: 15сек умножить на дробь, числитель — 4, знаменатель — 15 Мбайт/сек = 4 Мбайт.
Мбайт/cек = 4 Мбайт
ответ: 4
3)
1. А:
B:
А быстрее на 320-140=180
ответ: А) 180
2. А:
А быстрее на 160-108=52
ответ: А) 52
#include <algorithm>
#include <iostream>
#include <random>
#include <vector>
void fillVector(std::vector<int>&, int lowerBound, int upperBound);
void print(const std::vector<int>&);
int main() {
std::vector<int> vec { };
std::size_t size { 0 };
std::cout
<< "Please, enter the number of elements: ";
std::cin
>> size;
if (size < 1 || size > 1000) {
std::cerr
<< "The size must be in the range [1; 1000]" << std::endl;
return 1;
}
vec.resize(size);
fillVector(vec, 0, 100);
print(vec);
std::size_t changes { 0 };
for (std::size_t i { 0 }; i < vec.size() - 1; ++i) {
int tempValue { 0 };
for (std::size_t j { i + 1 }; j < vec.size(); ++j) {
if (vec.at(i) > vec.at(j)) {
tempValue = vec.at(i);
vec.at(i) = vec.at(j);
vec.at(j) = tempValue;
++changes;
}
}
}
print(vec);
std::cout
<< "Number of changes: " << changes << std::endl;
return 0;
}
void fillVector(std::vector<int>& vec, int lowerBound, int upperBound) {
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<int> dist(lowerBound, upperBound);
int randomValue { };
for (auto& value : vec) {
while (true) {
randomValue = dist(gen);
if ( std::find( vec.begin(), vec.end(), randomValue) == vec.end() ){
value = randomValue;
break;
}
}
}
}
void print(const std::vector<int>& vec) {
for (const auto value : vec) {
std::cout
<< value << " ";
}
std::cout
<< std::endl;
}
1) ответ: 260
2) ответ: 4
3) ответ: А) 180 А) 52
1) * V = U * t, V - объем в битах, U - скорость в бит/сек, t - время в секундах.
Решаем относительно времени:
t = V/U
* Сначала Кате нужно скачать 512 Кб со скоростью 2²⁰ бит/сек, прежде чем начать передачу файла Маше. 512 Килобайт = 0.5 Мегабайт = 0.5 * 2²³ бит
t₁ = cек.
* Далее Катя может начинать передавать файл объемом 8 Мегабайт Маше со скоростью 2¹⁸ бит/сек 8 Мегабайт = 8 * 2²³ бит.
* Общее время = t1 + t2 = 256 + 4 = 260.
t₂ = cек.
* Через 260 секунд от начала получения файла Катей Маша сможет получить весь заказанный файл.
ответ: 260
2) * Вычислим скорость передачи данных по каналу связи: дробь, числитель — 20Мбайт, знаменатель — 75 сек = дробь, числитель — 4, знаменатель — 15 Мбайт/сек.
= Мбайт/cек.
Поскольку на упаковку и распаковку данных ушло 15 секунд, то на передачу сжатых данных по каналу связи ушло 30 − 15 = 15 секунд.
* Зная скорость передачи, найдем объём сжатого файла: 15сек умножить на дробь, числитель — 4, знаменатель — 15 Мбайт/сек = 4 Мбайт.
Мбайт/cек = 4 Мбайт
ответ: 4
3)
1. А:
B:
А быстрее на 320-140=180
ответ: А) 180
2. А:
B:
А быстрее на 160-108=52
ответ: А) 52