Например, в таблице дано, что 0000 = 4, соответственно каждый ноль означает единицу
1 = 0
2 = 0
3 = 0
5 = 0
6 = 1
7 = 0
8 = 2
9 = 1
0 = 1
2. Находим значения неизвестных цифр:
6855 = 1 + 2 + 0 + 0 = 3
9881 = 1 + 2 + 2 + 1 = 5
6591 = 1 + 0 + 1 + 0 = 2
3. Решаем примеры (если учесть, что цифры из предыдущего номера идут по порядку):
675 ÷ 3 - 215 = 10
475 × 5 ÷ 5 - 420 = 55
(2 - 1) × 83 = 83
4. Теперь нужно разобраться с цифрами, которые идут после примеров (три, один, один):
Тут, как я думаю, есть два варианта решения. Первый заключается в том, что к окончаниям цифр, которые получились в 3 номере, нужно добавить те цифры, которые написаны, то есть: 10 - 103, 55 - 551, 83 - 831.
На сейфе 12 позиций (цифр), то есть один круг равняется 12, соответственно:
103 ÷ 12 = 8 с остатком 7
551 ÷ 12 = 45 с остатком 11
831 ÷ 12 = 69 с остатком 3
Я считаю, что данное решение не правильное, так как крутить 69 раз не кажется мне разумным
Второе решение - окончания цифр, которые получились в 3 номере, заменяются на три, один, один: 10 - 13, 55 - 51, 83 - 81.
Делим на 12 (сейф):
13 ÷ 12 = 1 с остатком 1
51 ÷ 12 = 4 с остатком 3
81 ÷ 12 = 6 с остатком 9
В данном решении необходимо сделать максимум 6 оборотов, что кажется мне наиболее правильным.
ответ: 1 оборот по часовой, останавливается на цифре 1; 4 оборота против часовой, останавливается на 3; 6 оборотов по часовой, останавливается на 9.
Внимание! Не факт, что данное решение является правильным.
1. Вычисляем значение цифр:
Например, в таблице дано, что 0000 = 4, соответственно каждый ноль означает единицу
1 = 0
2 = 0
3 = 0
5 = 0
6 = 1
7 = 0
8 = 2
9 = 1
0 = 1
2. Находим значения неизвестных цифр:
6855 = 1 + 2 + 0 + 0 = 3
9881 = 1 + 2 + 2 + 1 = 5
6591 = 1 + 0 + 1 + 0 = 2
3. Решаем примеры (если учесть, что цифры из предыдущего номера идут по порядку):
675 ÷ 3 - 215 = 10
475 × 5 ÷ 5 - 420 = 55
(2 - 1) × 83 = 83
4. Теперь нужно разобраться с цифрами, которые идут после примеров (три, один, один):
Тут, как я думаю, есть два варианта решения. Первый заключается в том, что к окончаниям цифр, которые получились в 3 номере, нужно добавить те цифры, которые написаны, то есть: 10 - 103, 55 - 551, 83 - 831.
На сейфе 12 позиций (цифр), то есть один круг равняется 12, соответственно:
103 ÷ 12 = 8 с остатком 7
551 ÷ 12 = 45 с остатком 11
831 ÷ 12 = 69 с остатком 3
Я считаю, что данное решение не правильное, так как крутить 69 раз не кажется мне разумным
Второе решение - окончания цифр, которые получились в 3 номере, заменяются на три, один, один: 10 - 13, 55 - 51, 83 - 81.
Делим на 12 (сейф):
13 ÷ 12 = 1 с остатком 1
51 ÷ 12 = 4 с остатком 3
81 ÷ 12 = 6 с остатком 9
В данном решении необходимо сделать максимум 6 оборотов, что кажется мне наиболее правильным.
ответ: 1 оборот по часовой, останавливается на цифре 1; 4 оборота против часовой, останавливается на 3; 6 оборотов по часовой, останавливается на 9.
Внимание! Не факт, что данное решение является правильным.
Заполняется случайными числами, можно сделать пользовательский ввод, заменив arr[i][j] = rand() % 100; на cin >> arr[i][j];
#include <iostream>
#include <random>
#include <ctime>
#include <cmath>
using namespace std;
void printArr(int** arr, size_t sizeX, size_t sizeY) {
for (size_t i = 0; i < sizeX; ++i) {
for (size_t j = 0; j < sizeY; ++j) {
cout << arr[i][j] << " ";
}
cout << endl;
}
}
void func1(int** arr, size_t sizeX, size_t sizeY) {
for (size_t i = 0; i < sizeX; ++i) {
for (size_t j = 0; j < sizeY; ++j) {
if (arr[i][j] % 2 == 1) {
arr[i][j] *= 2;
}
}
}
}
void func2(int** arr, size_t sizeX, size_t sizeY) {
for (size_t i = 0; i < sizeX; ++i) {
int32_t min = INT32_MAX;
for (size_t j = 0; j < sizeY; ++j) {
if (arr[i][j] < min) {
min = arr[i][j];
}
}
cout << i << ": sqrt(" << min << ") = " << sqrt(min) << endl;
}
}
int main() {
srand(time(0));
const size_t sizeX = 4, sizeY = 3;
int** arr = new int*[4];
for (size_t i = 0; i < sizeX; ++i) {
arr[i] = new int[sizeY];
for (size_t j = 0; j < sizeY; ++j) {
arr[i][j] = rand() % 100;
}
}
printArr(arr, sizeX, sizeY);
func1(arr, sizeX, sizeY);
cout << endl;
printArr(arr, sizeX, sizeY);
func2(arr, sizeX, sizeY);
}