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

обединение матрицы с полем - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обнуление матрицы в структуре http://www.cyberforum.ru/cpp-beginners/thread686778.html
Здравствуйте такой вопрос. Как обнулить двумерный массив который входитв структуру? struct player { int ships; int hits }; Мне нужно чтобы ships = {0}
C++ симметрична ли матрица Проверьте, является ли двумерный массив симметричным относительно главной диагонали. Главная диагональ - та, которая идёт из левого верхнего угла двумерного массива в правый нижний. Программа получает на вход число n 100, являющееся числом строк и столбцов в массиве. Далее во входном потоке идёт n строк по n чисел, являющихся элементами массива. Программа должна выводить слово yes для... http://www.cyberforum.ru/cpp-beginners/thread686774.html
C++ Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий в штате и служащий с процентной ставкой
Мальчики помогите пожалуйста, с задачей. -Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий в штате и служащий с процентной ставкой. Определить функцию начисления зарплаты.
C++ Определить, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу.
Дана последовательность натуральных чисел, завершающаяся числом 0. Определить, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу. Числа, следующие за числом 0, считывать не нужно. Примеры Входные данные|Результат работы 2 1 7 7 9 1
C++ определите количество строк в массиве, которые содержат значение, равное наибольшему. http://www.cyberforum.ru/cpp-beginners/thread686749.html
В метании молота состязается n спортсменов. Каждый из них сделал m бросков. Победитель определяется по лучшему результату. Определите количество участников состязаний, которые разделили первое место, то есть определите количество строк в массиве, которые содержат значение, равное наибольшему. Программа получает на вход два числа n и m чисел, являющихся элементами массива. Программа должна...
C++ При запуске выходит ошибка Stack overflow учусь mfc v2008 с++ пишу программу для заполнения массива цветами пикселей картинки после долгих поисков написал код: HBITMAP bitmap = (HBITMAP)LoadImage(NULL, "1.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_COLOR); tagBITMAP BitmapInfo; RGBTRIPLE Bits; GetBitmapBits(bitmap, 1024* 768* (8 / 4),Bits); int a=Bits.rgbtBlue; int b=Bits.rgbtGreen; int... подробнее

Показать сообщение отдельно
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
02.11.2012, 13:44     обединение матрицы с полем
Цитата Сообщение от SAUtrade Посмотреть сообщение
C++
1
player human;
Цитата Сообщение от SAUtrade Посмотреть сообщение
C++
1
2
3
4
5
6
struct player
{
    bool defeat_flag;
    int ships[10][10]; 
    int hits[10][10];
};
еще при оптимизации советую сделать либо
C++
1
player *human = new player;
либо
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
struct player
{
    bool defeat_flag;
    int **ships; 
    int **hits;
    player(){
        ships = new int*[10];
        hits= new int*[10];
        for(int i=0;i<10;i++){
              ships[i] = new int[10];
              hits[i] = new int[10];
        }
    }
    ~player(){
        for(int i=0;i<10;i++){
            delete[] ships[i];
            delete[] hits[i];
        }
        delete[] ships;
        delete[] hits;
    }
};
Добавлено через 21 минуту
изменить
Цитата Сообщение от SAUtrade Посмотреть сообщение
C++
1
2
3
4
5
void Human_set()
{
* * player human={0};
//bla bla bla
}
на
C++
1
2
3
4
5
void set(player* human)
{
* * player human={0};
//bla bla bla
}
Цитата Сообщение от SAUtrade Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void HumanShips_init()
{
* * player human;
* * {
* * // инициализация массивов hits и ships
* * for (int i = 0; i < 10; i++)
* * {
* * * * for (int j = 0; j< 10; j++)
* * * * {
* * * * * * human.ships[i][j] = 1;
* * * * * * human.hits[i][j] = 0;
* * * * }
* * }
// Установка кораблей
* * Human_set();
}
заменить на
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Ships_init(player *human)
{
* * // инициализация массивов hits и ships
* * for (int i = 0; i < 10; i++)
* * {
* * * * for (int j = 0; j< 10; j++)
* * * * {
* * * * * * human.ships[i][j] = 1;
* * * * * * human.hits[i][j] = 0;
* * * * }
// Установка кораблей
* * set(human);
}
вместо
Цитата Сообщение от SAUtrade Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main()
{
* * setlocale (LC_ALL, "RUS");
* * char map[r][c] = {
* * * * " *0123456789 * * 0123456789 ",
* * * * " #----------# * #----------#",
* * * * "0| * * * * *| *0| * * * * *|",
* * * * "1| * * * * *| *1| * * * * *|",
* * * * "2| * * * * *| *2| * * * * *|",
* * * * "3| * * * * *| *3| * * * * *|",
* * * * "4| * * * * *| *4| * * * * *|",
* * * * "5| * * * * *| *5| * * * * *|",
* * * * "6| * * * * *| *6| * * * * *|",
* * * * "7| * * * * *| *7| * * * * *|",
* * * * "8| * * * * *| *8| * * * * *|",
* * * * "9| * * * * *| *9| * * * * *|",
* * * * " #----------# * #----------#" };
HumanShips_init();
* * * * show (map);
}
вставить
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
int main(){
    setlocale (LC_ALL, "RUS");
    player *human,*cpu;
    Ships_init(human);
    Ships_init(cpu);
    cout<<"  0123456789     0123456789\n #----------#   #----------#\n";
for(int i=0;i<10;i++){
    cout<<i<<"|";
    for(int j=0;j<10;j++)
        if(human.ship[i][j]!='K')
            cout<<" ";
        else
            cout<<human.ship[i][j];
    cuut<<"  "<<i<<"|";
    for(int k=0;k<10;k++)
        if(cpu.ship[i][j]!='K')
            cout<<" ";
        else
            cout<<cpu.ship[i][j]; 
    cout<<"|"<<endl;
}
cout<<" #----------#   #----------#\n";
}
//З.Ы. возможно вместо human.ship[i][j] нужно будет сделать human->ship[i][j]
 
Текущее время: 15:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru