Форум программистов, компьютерный форум CyberForum.ru

Расчет краски на лабиринт - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создание нескольких стеков http://www.cyberforum.ru/cpp-beginners/thread342698.html
//--------------------------------------------------------------------------- #pragma hdrstop #include <tchar.h> #include <stdlib.h> #include <iostream.h> #include <dos.h> //--------------------------------------------------------------------------- namespace Stack
C++ Сохранение матриц больших размеров в типизированный файл Проблема: есть большой двумерный массив (double). Пытаюсь сохранить его в типизированный файл (а затем считать в другой массив). В файл сохраняется только некоторая часть (до 58 элемента, в частном случае), на оставшиеся места записываются максимальное и минимальное значения double (+-6.2 * 10^66). Причем иногда прерывается посередине строки. Как будто память под строку выделилась не в одном... http://www.cyberforum.ru/cpp-beginners/thread342662.html
два ++ C++
Что означает "++" что ето за операция в С++Builder очень надо узнать Напишите кто нибудь.
C++ Тетрис и многопоточность
Здравствуйте. Взялся я за тетрис, немного написал, а потом понял, что мне нужны два потока. Вот зачем: у меня игровое поле — двумерный массив . Фигура представленна массивом . В то время, как один поток будет опускать фигуры вниз, второй поток должен крутить эту же фигуру независимо от шажков спуска. Как это реализовать? Я честно гуглил, но конкретных примеров многопоточности в C++ не...
C++ Подскажите, как должно выглядеть это задание? http://www.cyberforum.ru/cpp-beginners/thread342624.html
Разработайте приложение rle.exe, выполняющее RLE-компрессию бинарных файлов с сильно разреженным содержимым, а также декомпрессию упакованных ею файлов. Необходимо реализовать следующий принцип компрессии файла: При обнаружении последовательности одинаковых байтов, она кодируется при помощи двух байтов. Первый байт хранит количество повторов следующего за ним байтов. Например, последовательность...
C++ string народ я вот решаю задачу .. вводишь в файл input.txt латинскую букву...а в файл output.txt выводить должно справа стоящую на клавиатури букву. вот код: #include <fstream> #include <string> using namespace std; main () { подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
17.08.2011, 13:05     Расчет краски на лабиринт
Цитата Сообщение от dmital Посмотреть сообщение
рошу подсказать, что нужно исправить, чтобы функции корректно работали.
Цитата Сообщение от dmital Посмотреть сообщение
paint(int i, int j)
- в функцию нет передачи массива, если бы ты объявил массив а как глобальный вначале тогда можно было его не передавать в функцию, он косвенно в неё передавался. Те переменные которые ты прописал внутри тела функциик внешним блокам программы отношения не имеют (хотя могут иметь сходные имена), сейчас подправлю...

Добавлено через 9 минут
Правильность твоего алгоритма не проверял, скрин работы прилагаю
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
#include <iostream>
using namespace std;
 
void paint(int i, int j, char ** a) 
{
    if (a[i][j]=='.') 
    {
        a[i][j]='$';
        paint(i+1,j,a);
        paint(i-1,j,a);
        paint(i,j+1,a);
        paint(i,j-1,a);
    }
}
 
int nhood(int s, int n, int m, char **a) 
{
    if (a[n+1][m]=='#') s++;
    if (a[n-1][m]=='#') s++;
    if (a[n][m+1]=='#') s++;
    if (a[n][m-1]=='#') s++;
    return s;
}
 
int main() 
{
    int n,i,j,s=0;
    cout<<"Enter n ";cin>>n;
    char **a = new char *[n+2];
    for (i=0;i<=n+1; i++)
    {
        a[i] = new char[n+2];
        for (j=0; j<=n+1; j++)
            a[i][j]='#';
    }
    for (i=1; i<=n; i++) 
    {
        for (j=1; j<=n; j++)
        {
            cout<<"a["<<i<<"]["<<j<<"] = "; 
            cin>>a[i][j];
        }
        cout<<"\r\n";
    }
    paint(1,1,a);
    paint(n,n,a);
    for(i=1; i<=n; i++)
        for(j=1; j<=n; j++)
            if (a[i][j]=='$')
                nhood(s,i,j,a);
    cout<<s*9-4;
    return 0;
}
Миниатюры
Расчет краски на лабиринт  
 
Текущее время: 03:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru