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

Игра "жизнь" - разобраться в коде - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Стивен Прата Язык программирования C++ лекции и упражнения (6-е издание). Листинг 6.8 - странная штука http://www.cyberforum.ru/cpp-beginners/thread1178191.html
Извиняюсь заранее, если было уже где-то - я не нашел( Штудирую Прату 6-е издание. Полностью перекопировал Листинг 6.8.: #include <iostream> #include <cctype> int main() { using namespace std;
C++ Несовместимые типы условной операции, макрос и шаблон был такой класс class Matrix{ //код } такой макрос #define CURR(x) (somevar==1?(x##1):(x##2)) и 2 переменных Matrix M1,M2; теперь класс стал шаблонным http://www.cyberforum.ru/cpp-beginners/thread1178189.html
C++ Считать слова из файла в разные переменные
Есть txt файл со списком, в котором слова стоят через запятую (количество слов, разделенных запятой в каждой строчке одинаковое (6 слов)). В файле неизвестное количество строк. Нужно каждое слово из каждой строки распределить по переменным. Подскажите пожалуйста. Я просто новичок совсем
Найти общее решение СЛАУ C++
Ребят,ни у кого нет исходников на эту задачу?Я только удалил n-r уравнений.Если есть,буду очень благодарен))
C++ Метод факторизации Уильямса (P+1) http://www.cyberforum.ru/cpp-beginners/thread1178179.html
Реализовать Метод факторизации Уильямса (P+1)
C++ Из бинарного файла выбрать простые числа, расположенные после максимального значения в файле Задание вообщем. Составить две программы. Первая программа должна формировать двоичный файл. Вторая программа должна считать данные из двоичного файла, выполнить соответствующие вычисления и записать их результаты в текстовый файл. Задача Создать двоичный файл, куда записать n целых чисел. Из файла создать массив, элементы которого являются простыми числами и расположены после максимального... подробнее

Показать сообщение отдельно
sektor2009
3 / 3 / 0
Регистрация: 15.03.2009
Сообщений: 339
21.05.2014, 06:44  [ТС]     Игра "жизнь" - разобраться в коде
не могу исправить ошибку, ошибка заключается в том, что когда соседей считаем, программа считает по схеме то-вар, как это изменить?? т.е верхние границы граничат с нижними
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
#include <iostream>
#include <fstream>
using namespace std;
 
void proverka( int a[10][10],int i,int j,int &n,int N)
{   n=0;
    if(a[(i-1)<0?N:i-1][(j-1)<0?N:j-1]==1)
    n++;
    if(a[(i-1)<0?N:i-1][j]==1)
    n++;
    if(a[(i-1)<0?N:i-1][(j+1)%N]==1)
    n++;
    if(a[i][(j+1)%N]==1)
    n++;
    if(a[(i+1)%N][(j+1)%N]==1)
    n++;
    if(a[(i+1)%N][j]==1)
    n++;
    if(a[(i+1)%N][(j-1)<0?N:j-1]==1)
    n++;
    if(a[i][(j-1)<0?N:j-1]==1)
    n++;
}
//--------------------------------------
int main()
{   int i,j,N=9,n=0,chet=0,kol;
    int pred[10][10],sled[10][10];
    fstream matr("life.txt",ios::in);
 
    if (matr)
    cout<<"da"<<endl;
 
    else cout<<"net"<<endl;;
    for(i=0;i<10;i++){
    for(j=0;j<10;j++)
    matr>>pred[i][j];
    }
    cout<<"vvedit kol pokoleni"<<'\n';
cin>>kol;
cout<<'\n';
 
    while(chet<kol){
    for(i=0;i<10;i++){
    for(j=0;j<10;j++)
    {
    proverka(pred,i,j,n,N);
    if(pred[i][j]==0 && n==3)
    sled[i][j]=1;
    else
    if(pred[i][j]==1 && (n==3||n==2))
    sled[i][j]=1;
    else
    sled[i][j]=0;
    cout<<sled[i][j];
        }
        cout<<'\n';
    }
    for(i=0;i<10;i++){
    for(j=0;j<10;j++)
    pred[i][j]=sled[i][j];}
 
    cout<<"----------"<<endl;
    chet++;
    }
 
matr.close();
 
    return 0;
}
Вложения
Тип файла: txt life.txt (208 байт, 6 просмотров)
 
Текущее время: 20:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru