10000x4000x500x30x4
Цифры числа расположены в определенных позициях, которые соответствуют (справа налево) единицам, десяткам, сотням, тысячам и так далее. Определите название позиции и ее значение для каждой цифры (справа налево).
Пример: так как в данном числе четыре цифры, то вам нужно определить названия четырех позиций (справа налево).
7 соответствует единицам (значение = 1).
2 соответствует десяткам (значение = 10).
8 соответствует сотням (значение = 100).
5 соответствует тысячам (значение = 1000).
Да это самый удобный и наглядный Рисуем дерево вызовов. Понимаем, что если функция вызвалась с числом <=0, то печатается одна звезда, затем на этой ветке рекурсия останавливается. Если же функция вызвалась с параметром > 0, То печатается 2 звезды и возникают новые две ветки рекурсивных вызовов. Прилагаю рисунок, красными точками отмечены звезды, печатающиеся при конкретном вызове функции. ответо будет являться общее количество таких точек. Важно понять, что при наличии идентичных веток можно посчитать результат для такой ветки один раз и использовать его для других таких же.
ответ: 31.
Объяснение:
#include <iostream>
#include <fstream>
const int ROWS = 5;
const int COLS = 5;
void readNumbersFromFile(int Z[ROWS][COLS]) {
std::ifstream inputFile("danie.txt");
if (inputFile.is_open()) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
inputFile >> Z[i][j];
}
}
inputFile.close();
} else {
std::cout << "Failed to open the file." << std::endl;
}
}
void printMatrix(const int Z[ROWS][COLS]) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
std::cout << Z[i][j] << " ";
}
std::cout << std::endl;
}
}
int main() {
int Z[ROWS][COLS];
readNumbersFromFile(Z);
std::cout << "Matrix Z:" << std::endl;
printMatrix(Z);
std::cout << "Result:" << std::endl;
for (int j = 0; j < COLS; j++) {
std::cout << Z[0][j] + Z[1][j] << " ";
}
std::cout << std::endl;
return 0;
}