Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2011, 18:49   #1
KOPC1886
Пользователь
 
Регистрация: 28.10.2010
Сообщений: 26
Плохо Путешествие коня.

Здравствуйте! Опять обращаюсь за помощью, раньше уже обращался поп поводу этой задачи. Я сделал задачу про путешестиве коня более упрощенную версию. Конь просто ходит по доске и считается кол-во ходов коня. Мне нужноулучшить задачу таким образом: если конь вышел за границы доски, то доску не перепечатывать и писать "НЕВОЗМОЖНО СДЕЛАТЬ ХОД ВВЕДИТЕ ДРУГОЕ ЧИСЛО"
ход считаться не должен.

Код:
// Путешествие коня2.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{       // ПУТЕШЕСТВИЕ КОНЯ УПРОЩЕННАЯ ВЕРСИЯ ГУРЬЕВ ИЛЬЯ С-22
        setlocale (LC_ALL,"rus");
        const int size=8;
        const int size2=8;
        int turn=0;
        int x=0;
        int y=0;
        int k1=0;
        int k2=0;
        int h;
        int n=0;
        int troy [size][size2];
        
        for (int i=0;i<size;i++)
        {       cout <<endl;
                for (int r=0;r<size2;r++)
                troy[i][r]=-1;
        }
        
        troy[k1][k2]=0;
        do {
        for (int i=0;i<size;i++)
        {for (int r=0;r<size2;r++)
                        if(troy[i][r]==-1)
                                cout <<setw(4)<<"* ";
                        else
                                cout <<setw(4)<<troy[i][r];
                        cout <<endl;                    
                                                                    
                        
                }
 
        
        cout <<"Введите номер хода от 1 до 8 (0 для выхода) "<<"  ";
        cin >>n;
        cout<<endl;
 
                
        if (n==1)
        {
                x=2;
                y=1;
                h=1;
 
        }
        else if (n==2)
        {
                x=1;
                y=-2;
                h=3;
        }
        else if (n==3)
        {
                x=-1;
                y=-2;
                h=1;
        }
        else if (n==4)
        {
                x=-2;
                y=-1;
                h=3;
        }
        else if (n==5)
        {
                x=-2;
                y=1;
                h=-1;
        }
        else if (n==6)
        {
                x=-1;
                y=2;
                h=-3;
        }
        else if (n==7)
        {
                x=1;
                y=2;
                h=-1;
        }
        else if (n==8)
        {
                x=2;
                y=1;
                h=-3;
        }
 
                
                if (n!=0)
                {
                if(k1>-1 && k1<8 && k2>-1 && k2<8 && n!=0) 
                {
                        troy[k1+=x][k2+=y]=++turn;
                        
                }
                  else
                {
                        cout <<"Поробуйте ещё раз номер хода от 1 до 8 (0 для выхода) "<<"  ";
                        cin >>n;
                }
 
                
                        
                        
                
                
        }
        else 
        {
                cout <<"|||||| ";
        }
        
        }while (k1>-1 && k1<8 && k2>-1 && k2<8 && n>=1 && n<=8);
        
        return 0;
}

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 21.02.2011 в 20:00.
KOPC1886 вне форума Ответить с цитированием
Старый 22.02.2011, 21:08   #2
KOPC1886
Пользователь
 
Регистрация: 28.10.2010
Сообщений: 26
Плохо Конь

Где все то?!
KOPC1886 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Путешествие во времени, практическое применение ;) Gauss Свободное общение 22 30.11.2018 11:32
Путешесвтие коня. KOPC1886 Помощь студентам 1 26.01.2011 18:36
Путешествие коня. Упрощенная версия. KOPC1886 Помощь студентам 1 17.01.2011 10:22
Путь коня. xaero93 Помощь студентам 4 28.11.2010 10:03
на шахматной доске заданы 2 клетки соедините эти 2 клетки кратчайшим путем коня Ker_33rus Общие вопросы C/C++ 5 18.03.2010 12:25