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

Пятнашки в СИ(borland BC) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Немного подправить. http://www.cyberforum.ru/cpp-beginners/thread89111.html
Имеется код программы. Он рабочий, но почему то при вводе данных в программу, в документе database.txt выводятся какие то символы, но ни как не то, что я ввела. Это первая проблема. Вторая проблема в том, что не получается организовать поиск. Мне нужно, чтобы программа находила по автору и по промежутку годов все книги данного автора в введеный промежуток времени, но этого она не делает. (код...
C++ что не правильно? Я написал программу с помощью функций для транспонирования квадратной матрицы, но не пойму, как исправить ошибки. Подскажите, пожалуйста. И как можно доработать код, чтобы программа работала более эффективно. #include <iostream> #include <conio.h> using namespace std; const int size=4; http://www.cyberforum.ru/cpp-beginners/thread89100.html
C++ Правильный ли код?
Вот весь мой код в С++.Не пойму, где ошибка! Что то много всего.... Ругается С++ на "int main()" Если кто нить сможете, пожалуйста можете ошибки справить(( #include <vcl.h> #pragma hdrstop #include "main.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm"
Как создать таблицу в RichEdit? C++
Как создать таблицу в RichEdit?
C++ Циклы http://www.cyberforum.ru/cpp-beginners/thread89060.html
Пожалуйста помогите решить задачу по С++! Вообще не понимаю в этом.... Задача состоит в следующем- Дано начальное число n=... и конечное m=...; при условии, что n<m. Найти сумму всех чисел от n до m.
C++ Две ошибки. только исправить. Выдает две ошибки: 1) 1>.\fg.cpp(110) : error C2360: initialization of 'year2' is skipped by 'case' label 1> .\fg.cpp(86) : see declaration of 'year2' 2) 1>.\fg.cpp(110) : error C2360: initialization of 'year1' is skipped by 'case' label 1> .\fg.cpp(86) : see declaration of 'year1' Разобраться сама не могу. Помогите. #define _CRT_SECURE_NO_DEPRECATE подробнее

Показать сообщение отдельно
Mr.Loner
 Аватар для Mr.Loner
42 / 42 / 4
Регистрация: 23.01.2010
Сообщений: 152
24.01.2010, 21:01     Пятнашки в СИ(borland BC)
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include <iostream>
#include <time.h>
 
using namespace std;
void Init(int a[4][4], int& pos)
//pos-номер пустой клетки
{
    //заполняем по-порядку
    for(int i=0; i<16; i++)
        a[i/4][i%4]=i;
    //генерируем случайную последовательность
    srand(time(0));
    for(int i=0; i<15; i++)
    {
        int j=rand()%(16-i)+i;
        int tmp=a[j/4][j%4];
        a[j/4][j%4]=a[i/4][i%4];
        a[i/4][i%4]=tmp;
        if (a[i/4][i%4]==0)
            pos=i;
    }
}
bool GameOver(int a[4][4], int pos)
{
    if (pos!=16)
        return false;
    for(int i=15; i>-1; i--)
        if (a[i/4][i%4]!=i)
            return false;
    return true;
}
void Print(int a[4][4])
{
    for(int i=0; i<4; i++)
    {
        for(int j=0; j<4; j++)
        {
            if (a[i][j]!=0)
                cout<<a[i][j];
            cout<<"\t";
        }
        cout<<endl;
    }
}
void Move(int a[4][4], int& pos, int k)
{
    int i,j;
    if (pos>4 && a[pos/4-1][pos%4]==k)
    {
        i=pos/4-1;
        j=pos%4;
    }
    else
    {
        if (pos<12 && a[pos/4+1][pos%4]==k)
        {
            i=pos/4+1;
            j=pos%4;
        }
        else
        {
            if (pos%4>0 && a[pos/4][pos%4-1]==k)
            {
                i=pos/4;
                j=pos%4-1;
            }
            else
                if (pos%4<3 && a[pos/4][pos%4+1]==k)
                {
                    i=pos/4;
                    j=pos%4+1;
                }
        }
    }
    a[pos/4][pos%4]=a[i][j];
    a[i][j]=0;
    pos=i*4+j;
}
void main()
{
    int a[4][4];
    int pos, k;
    Init(a,pos);
    while(!GameOver(a,pos))
    {
        system("cls");
        Print(a);
        cin>>k;
        if (k>=1 && k<=15)
            Move(a,pos,k);
    }
    cout<<"YOU WIN!!!";
    return;
}
Добавлено через 21 минуту
Забыл в комменты добавить. Нужно вводить число, которое хотим подвинуть.
 
Текущее время: 16:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru