
Егор
5 год назад
Всем привет! Help me!!!. Имеется глобальный символьный двумерный массив S...##m(6x6), представленный справа, у которого индексация строк и #.#...столбцов начинается с 0. Глобальная целочисленная ..#..#переменная count_ изначально равна нулю. Код функции ..###. find_p() написан на языке C++ и приведен ниже. Чему будет #...##равно значение глобальной переменной count_ после вызова ###..Fфункции с параметрами (0, 0) то есть find_p(0, 0)?find_p(int x, int y) (if (x < 0 || x > 5 || y < 0 || y > 5) return 0;if (m[y] [x] == 'F') return 1;if (m[y] [x] != '.' && m[y] [x] != 'S') return 0;m[y] [x] = '+';count_++;if (find_p (x, y - 1)) return 1;if (find_p (x + 1, y)) return 1;if (find_p (x, y + 1)) return 1;if (find_p (x - 1, y)) return 1;m[y] [x] = 'x';return 0;)

ОТВЕТЫ

Todd Kenneth
Oct 24, 2020
Перепроверь массив и скомпилируй.
// Example program#include <iostream>#include <string>
using namespace std;
int count_;const unsigned int DIM1 = 6;const unsigned int DIM2 = 6;int m[DIM1][DIM2] = { { 'S', '.', '.', '.', '#', '#' }, { '#', '.', '#', '.', '.', '.' }, { '.', '.', '#', '.', '.', '#' }, { '.', '.', '#', '#', '#', '.' }, { '#', '.', '.', '.', '#', '#' }, { '#', '#', '#', '.', '.', 'F' }};int find_p(int x, int y) { if (x < 0 || x > 5 || y < 0 || y > 5) return 0; if (m[y] [x] == 'F') return 1; if (m[y] [x] != '.' && m[y] [x] != 'S') return 0; m[y] [x] = '+'; count_++; if (find_p (x, y - 1)) return 1; if (find_p (x + 1, y)) return 1; if (find_p (x, y + 1)) return 1; if (find_p (x - 1, y)) return 1; m[y] [x] = 'x'; return 0;}int main(){ find_p(0, 0); cout<<"n Otvet="<<count_;}
// Example program#include <iostream>#include <string>
using namespace std;
int count_;const unsigned int DIM1 = 6;const unsigned int DIM2 = 6;int m[DIM1][DIM2] = { { 'S', '.', '.', '.', '#', '#' }, { '#', '.', '#', '.', '.', '.' }, { '.', '.', '#', '.', '.', '#' }, { '.', '.', '#', '#', '#', '.' }, { '#', '.', '.', '.', '#', '#' }, { '#', '#', '#', '.', '.', 'F' }};int find_p(int x, int y) { if (x < 0 || x > 5 || y < 0 || y > 5) return 0; if (m[y] [x] == 'F') return 1; if (m[y] [x] != '.' && m[y] [x] != 'S') return 0; m[y] [x] = '+'; count_++; if (find_p (x, y - 1)) return 1; if (find_p (x + 1, y)) return 1; if (find_p (x, y + 1)) return 1; if (find_p (x - 1, y)) return 1; m[y] [x] = 'x'; return 0;}int main(){ find_p(0, 0); cout<<"n Otvet="<<count_;}
- Да уж
192