1. в одной из кодировок unicode каждый символ кодируется 16 битами.
петя написал текст (в нём нет лишних пробелов) :
"уж, эму, лиса, выдра, барсук, опоссум, дико раз, орангутанг - дикие животные"
ученик решил добавить в список название ещё одного животного - койот. при этом он добавил в текст необходимую запятую и пробел.
на сколько байт при этом увеличился размер нового предложения в данной кодировке?
в ответе укажите только одно число - кол-во байт.
2. таже самая кодировка, что и в первом. "ёж, лев, слон, олень, тюлень, носорог, крокодил, аллигатор - дикие животные"
ученик вычеркнул из списка название одного из животных. заодно он вычеркнул ставшие лишними запятые и пробелы - два пробела не должны идти подряд.
при этом размер нового предложения в данной кодировке оказался на 12 байт меньше, чем размер исходного предложения. напишите в ответе вычеркнутое название животного
3. напишите наименьшее двузначное число x, для которого истинно высказывание: не(первая цифра чётная) и не(последняя цифра не чётная)?
4. напишите наименьшее число x, для которого ложно высказывание: не(x< =50)или (x нечетное как можно скорей выполнить
18
#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;
}
const N = 10;
var a, i, count, z: integer; s:string;
suc: array[1..N] of integer;
begin
Randomize();
count := 0;
z := 1;
for i := 1 to N do begin
a := random(10, 50);
Str(a, s); if s[2] = '4' then begin count += 1; suc[z] := a; z += 1; end;
end;
if count > 0 then begin for i := 1 to z-1 do begin writeln('Выиграшное число: ', suc[i]); end;
Writeln('Всего выиграшных билетов: ', count, ' из ', N); end
else Writeln('Нет ни одного выиграшного билета');
end.
Объяснение: