Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Дракон202
-17 / 0 / 1
Регистрация: 14.11.2015
Сообщений: 51
1

Доработать функцию вычисления "островов"

10.01.2016, 17:05. Просмотров 162. Ответов 0
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
using namespace std;
int Odisland(int mass[12][12])
{
    int count = 0;
    for (int i = 1; i < 10; i++)
    {
        for (int k = 1; k < 10; k++)
        {
            if (mass[i][k] == 1) {
 
 
                for (int g = k - 1; g <= k + 1; g++)
                {
                    if (mass[i - 1][g] == 1)
                        continue;
 
                    if (mass[i + 1][g] == 1)
                        continue;
                }
                if (mass[i][k - 1] == 1 || mass[i][k + 1] == 1)
                    continue;
                count++;
            }
        }
    }
    return count;
}
void Island(int mass[12][12])
{
    unsigned int k = 0;
    unsigned int i = 0;
    for (int g = 0; g < 36; g++)
    {
        do
        {
            i = rand() % 12;
            k = rand() % 12;
        } while (mass[i][k] == 1 || mass[i][k] == 0);
        mass[i][k] = 1;
    }
}
void Fillwater(int mass[12][12])
{
    int kil = 0;
    unsigned int i = 0;
    unsigned int k = 0;
    for (int h = 0; h < 108; h++)
    {
        do
        {
            i = rand() % 12;
            k = rand() % 12;
        } while (mass[i][k] == 0 || mass[i][k] == 1);
        mass[i][k] = 0;
    }
}
void main()
{
    int count = 0;
    int mass[12][12];
    for (int i = 0; i < 12; i++)
    for (int k = 0; k < 12; k++)
        mass[i][k] = 5;
    Island(mass);
    Fillwater(mass);
    for (int i = 0; i < 12; i++)
    {
        cout << endl;
        for (int k = 0; k < 12; k++)
        {
            cout << mass[i][k] << " ";
        }
    }
    count = Odisland(mass);
    cout << "Count of lonely islands => " << count << endl;
}
Эта программа выводит "карту" с водой - 0 и островами -1.
Надо доработать функцию вычисления вот таких островов:
000
010
000
и, если не сложно, сделать обводку * (то есть, рамку звёздочками), и объяснить, как это сделать.

Заранее благодарю.

 Комментарий модератора 

Дракон202, Вы создали 17 тем и почти в каждой нарушили одно или несколько правил форума:
П. 1.4. Официальными языками форума являются русский и английский языки. Размещение сообщений на других языках запрещено.
П. 4.3. Создавайте темы с осмысленными и понятными названиями - это серьезно повышает шансы, что на Ваш вопрос ответят.
П. 4.4. На каждый вопрос создавайте по одной теме - это помогает избежать путаницы в ответах и облегчает поиск.
П. 4.7. Как можно более полно описывайте суть проблемы или вопроса, что было сделано для ее решения и какие результаты получены.
П. 4.9. Используйте тэги форматирования текста для удобства восприятия ваших сообщений другими пользователями.
П. 5.5. Запрещено размещать тему в нескольких подразделах одного раздела одновременно (кросспостинг), а также дублировать тему в одном разделе.
Это последнее официальное устное предупреждение. Убедительная просьба, не игнорировать это сообщение и ознакомиться с правилами, а так же с мини-гайдами по использованию тэгов и рекомендациями по именованию тем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2016, 17:05
Ответы с готовыми решениями:

Написать функцию поиска человека по полю "фамилия" в массиве структур "Note" ("Персональная информация")
Вывести из структуры информацию о человеке, чья фамилия введена с клавиатуры #include...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...

Определить функцию для вычисления количества букв "е" в слове
определить функцию для вычисления количества букв &quot;е&quot; в слове. Подсчитать количество букв Е в 4...

В пользовательском классе "Матрица" реализовать функцию-член для вычисления определителя
Прива всем. Такой вопрос. Написал класс &quot;Матрица&quot;. Хочу добавить метод для вычисления определителя....

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов), которые разделяются...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2016, 17:05

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую классы: − воин; −...

Написать функцию выбора пунктов меню стрелками "вверх" "вниз"
Доброго всем времени суток.Пожалуйста подскажите как мне справиться с моей проблемой.Нужно...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления"
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru