|
|
@ -6,7 +6,7 @@
|
|
|
|
#include <cstddef>
|
|
|
|
#include <cstddef>
|
|
|
|
#include <string>
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
|
|
|
|
// 1. Функции для печати данных
|
|
|
|
// 1. Функции для печати данных
|
|
|
|
void print_in_hex(uint8_t byte) {
|
|
|
|
void print_in_hex(uint8_t byte) {
|
|
|
|
std::cout << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(byte) << ' ';
|
|
|
|
std::cout << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(byte) << ' ';
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -36,7 +36,7 @@ void print_in_binary(const void* data, size_t size) {
|
|
|
|
std::cout << '\n';
|
|
|
|
std::cout << '\n';
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 2. Калькулятор для побитовых операций
|
|
|
|
// 2. Калькулятор для побитовых операций
|
|
|
|
void bitwise_calculator() {
|
|
|
|
void bitwise_calculator() {
|
|
|
|
uint16_t operand1, operand2;
|
|
|
|
uint16_t operand1, operand2;
|
|
|
|
char operation;
|
|
|
|
char operation;
|
|
|
@ -65,7 +65,7 @@ void bitwise_calculator() {
|
|
|
|
print_in_binary(&result, sizeof(result));
|
|
|
|
print_in_binary(&result, sizeof(result));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 3. Работа со структурами
|
|
|
|
// 3. Работа со структурами
|
|
|
|
struct Student {
|
|
|
|
struct Student {
|
|
|
|
char name[17];
|
|
|
|
char name[17];
|
|
|
|
uint16_t year_of_admission;
|
|
|
|
uint16_t year_of_admission;
|
|
|
@ -110,7 +110,7 @@ void analyze_students() {
|
|
|
|
<< ", Size=" << sizeof(student.completed_courses) << '\n';
|
|
|
|
<< ", Size=" << sizeof(student.completed_courses) << '\n';
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 4. Обработка текстового файла
|
|
|
|
// 4. Обработка текстового файла
|
|
|
|
void process_text_file() {
|
|
|
|
void process_text_file() {
|
|
|
|
const char* filename = "text.txt";
|
|
|
|
const char* filename = "text.txt";
|
|
|
|
|
|
|
|
|
|
|
@ -151,7 +151,7 @@ int main() {
|
|
|
|
|
|
|
|
|
|
|
|
switch (choice) {
|
|
|
|
switch (choice) {
|
|
|
|
case 1:
|
|
|
|
case 1:
|
|
|
|
// Демонстрация функций печати
|
|
|
|
// Демонстрация функций печати
|
|
|
|
{
|
|
|
|
{
|
|
|
|
uint16_t data = 0xABCD;
|
|
|
|
uint16_t data = 0xABCD;
|
|
|
|
std::cout << "Hexadecimal output:\n";
|
|
|
|
std::cout << "Hexadecimal output:\n";
|
|
|
|