Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/34: Рейтинг темы: голосов - 34, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
1

2 задачи про шахматы

09.01.2013, 16:50. Показов 6132. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день всем.по советам начала новую тему.у меня есть 2 задачи про шахматы.мне нужны советы от вас,как от профессионалов.понимаю,что просить написать за меня два кода-слишком нагло...но вы,как люди,постоянно обитающие в этой среде, будете знать,куда меня можно "направить",подтолкнуть.Пожалуйста не помогать ответами типа "ИДИ ГУГЛИТЬ" и бла-бла.гуглю.и вас прошу о помощи.вот задачи.
1.Кратчайший путь ладьи по шахматной доске с препятствиями.Программа бы загрузила размеры доски и координаты препятствий цитата "из начальной консоли и конечное(целевое )поле".
Результатом запуска бы был кратчайший путь из начального поля до целевого так,чтобы ладья не проходила через поле с препятствиями.учусь в другой стране,перевожу,поэтому коряво так..я сама не совсем понимаю,что от меня хотят Возможно вам встречалось что-то подобное и вы поймете,о чем идет речь
2.вторая похожая. Итак,программа загружает размеры шахматной доски+координаты(систему координат) начального поля.Результатом запуска проги бы были длины кратчайших путей конем по этой доске на все возможные поля,причем конь всегда стартует из начальной точки.
ВИдимо,я так поняла,что мы сами задаем расстановку шахмат и исходя из этого начинаем "играть",то есть проходим ладьей(1) и конем(2) в первом случае до заданной цели,во втором случае на все возможные цели..у кого какие идеи,где это можно найти?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.01.2013, 16:50
Ответы с готовыми решениями:

Задача про шахматы на Си
Добрый день всем.по советам начала новую тему.у меня есть задача про шахматы.мне нужны советы от...

Задачка про шахматы
Условие Шахматный король ходит по горизонтали, вертикали и диагонали, но только на 1 клетку. Даны...

Задача про шахматы
Задается на шахматной доске 2 координаты 1 клетки (конь) и 2 координаты другой клетки (другая...

Задача про шахматы
Все доброго времени. Помогите пожалуйста с заданием. Нужно с помощью двумерного массива вывести...

10
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
09.01.2013, 19:09 2
По ладье никогда не видел такой задачи, по коню что-то отдалённое может быть здесь СИ++ ход конем и здесь Кратчайший путь(волновой алгоритм) для шахматного коня
1
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
09.01.2013, 20:06  [ТС] 3
David Sylva, спасибо,сейчас посмотрим,что он ответит по поводу волнового алгоритма,можно ли этим пользоваться вообще..а по ладье наверное и не будет такой,он же из головы это задает( а варианты,гед это найти можно?..

Добавлено через 43 минуты
Кратчайший путь(волновой алгоритм) для шахматного коня
вот это очень бы подошло.имеется ввиду волновой алгоритм.а как в СИ это перевести?.
0
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
09.01.2013, 20:12 4
Цитата Сообщение от Катерька Посмотреть сообщение
вот это очень бы подошло.имеется ввиду волновой алгоритм.а как в СИ это перевести?.
Замените cout, на printf, cin scanf, напишите в начале int main(void), остальное не принципиально.
0
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
09.01.2013, 20:22  [ТС] 5
можно тогда я обращаться буду сюда за помощью?я знаю,что не принципиально,но проблема в том,что многое из этого мы не проходили.Преподаватели отличаются способностью "заподазривать неладное".
0
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
09.01.2013, 20:30 6
Цитата Сообщение от Катерька Посмотреть сообщение
можно тогда я обращаться буду сюда за помощью?я знаю,что не принципиально,но проблема в том,что многое из этого мы не проходили.Преподаватели отличаются способностью "заподазривать неладное".
Конечно обращайтесь, форум и создан для общения и помощи.Я сейчас посмотрел код в нём нет ни одной, сложной вещи, которые применяются в С++.Код абсолютно переносим на СИ.Константы замените макросом defifne, это будет более соответствовать коду на СИ.
0
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
09.01.2013, 20:54  [ТС] 7
просьба проверить,я чего-то намудрила вроде...и еще вопрос.у оригинала есть закомментированные строчки "минимальная длина пути",так вот,если убрать комментарии,то при выполнении пропадает "лабиринт после алгоритма"...
как сделать так,чтобы отображались обе?
заведомо не кидаю,а прикрепляю код,чтобы оградить себя от неприятностей преподавательского гнева.
Вложения
Тип файла: zip kon'.zip (713 байт, 6 просмотров)
0
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
09.01.2013, 21:14 8
Катерька Очень много ошибок, вы не очень внимательны и лучше выкладывать код по нормальному.

Добавлено через 12 минут
Типа такого
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
#include <stdio.h>
#include <conio.h>
#define  size_row 10
#define  size_col 10
 
 
 
int main(void)
{
    
     int Ni=0; //cislo iterace
     int Nk=300; //max pocet iteraci
     int y=255; //bod pruchodnosti
     int n=253; //bod nepruchodnosti
     int s=0; //zacatek(bod)
     int e=254; //konec (bod)
     int i,j;
     int R[size_row][size_col]= {                {s,y,y,y,y,y,y,n,n,n},
                                                {n,y,n,n,n,y,y,n,n,n},
                                                {y,y,n,n,n,y,n,n,n,n},
                                                {y,n,e,y,y,y,n,n,n,n},
                                               {y,y,y,n,n,n,n,n,n,n},
                                                {n,n,n,n,n,n,n,n,n,n},
                                                {n,n,n,n,n,n,n,n,n,n},
                                                {n,n,n,n,n,n,n,n,n,n},
                                                {n,n,n,n,n,n,n,n,n,n},
                                                {n,n,n,n,n,n,n,n,n,n} };
 
printf("labyrint pred algoritmem::" "\n \n");
   for (i=0; i < size_row; i++)
{
   for (j=0; j < size_col; j++)
   printf("%d\t",R[i][j]);
}
 
/*vlnovy algoritmus*/
while (Ni < Nk)
{
   for (i=0; i < size_row; i++)
   {
     for (j=0; j < size_col; j++)
     /*spousteni*/
     if (R[i][j]==Ni)
     {
         if (R[i][j+1]==255)
            R[i][j+1]=Ni+1;
         if (R[i][j-1]==255)
            R[i][j-1]=Ni+1;
         if (R[i+1][j]==255)
            R[i+1][j]=Ni+1;
         if (R[i-1][j]==255)
            R[i-1][j]=Ni+1;
         if ((R[i+1][j]==254) || (R[i-1][j]==254) || (R[i][j+1]==254) || (R[i][j-1]==254))
         {  
            printf("delka nejmensi cesty=%d tahu",Ni); 
            getch(); 
            return 0; 
            break;
          
         }
      }
   }
Ni++;
}
 
   printf("\n\n");
 
//cesta
printf ("labyrint po algoritmu:: \n \n");
for (i=0; i < size_row; i++)
{
   for (j=0; j < size_col; j++)
   printf("%d\t", R[i][j]);
}
 
   getch();
   return 0;
}
1
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
09.01.2013, 21:26  [ТС] 9
ааа...все,поняла))только ответьте на второй вопрос..как сделать так,чтобы отображался и кратчайший путь,и лабиринт после алгоритма?работает только один из них при закомментированных строчках
C
1
2
3
4
//printf("delka nejmensi cesty=%d tahu",Ni); 
            //getch(); 
            //return 0; 
            //break;
0
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
09.01.2013, 21:31 10
Цитата Сообщение от Катерька Посмотреть сообщение
ааа...все,поняла))только ответьте на второй вопрос..как сделать так,чтобы отображался и кратчайший путь,и лабиринт после алгоритма?работает только один из них при закомментированных строчках
Программа задумана так, что отображается либо, либо другое.
1
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
10.01.2013, 19:35  [ТС] 11
David Sylva, вы просто чудо.убежала.огромное спасибо.попробую что-нибудь искать с ладьей.

Добавлено через 30 минут
ответ: "в задании сказано,что программа должна загрузить из консоля размеры доски и координаты получившегося поля".Господи,сколько еще с этим биться..сюда это можно как-то всунуть?

Добавлено через 21 час 30 минут
Кто-нибудь может помочь?
0
10.01.2013, 19:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2013, 19:35
Помогаю со студенческими работами здесь

Задача про шахматы
Cсылка на изображение с условием: ВОТ ССЫЛКА вот не получается сделать. ну само собой что задача...

Программа про шахматы
помогите пожалуйста исправить вот эту программу. Шахматную доску будем представлять в виде ...

Помогите с задачей про шахматы.
Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит 8:...

я решил задачу про шахматы посмотрите ошибку
#include&lt;iostream&gt; using namespace std; int main() { int gorizontal, vertikal, a, b, c, d;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru