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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.69
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
#1

Волновой алгоритм - C++

12.02.2013, 21:34. Просмотров 3999. Ответов 25
Метки нет (Все метки)

Подскажите пожалуйста, на сколько сложно изготовить из матрицы
C++
1
2
3
0000
0000
0000
напр.
C++
1
2
3
4
4345
3234
2123
3234
Только при помощи обычных циклов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 21:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Волновой алгоритм (C++):

Нужен алгоритм поиска пути в этом лабиринте (будь то волновой алгоритм или алгоритм правой/левой руки ) - C++
#include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; void lab () { int s1 = 0; int s2 =...

Волновой алгоритм - C++
Нужно реализовать волновой алгоритм поиска кратчайшего пути на поле 20*20, причем координаты начала и конца вводятся пользователем,...

Волновой алгоритм - C++
Здравствуйте, очень прошу помочь с реализацией волнового алгоритма только лишь с помощью матрицы весов неориентированного графа. Объясните...

Волновой алгоритм - C++
Доброго времени суток, дорогие форумчане. Никак не додумаю волновой алгоритм, помогите, кто чем может: файл - матрица целых чисел, где...

Волновой алгоритм - C++
Нужно найти кратчайший путь в лабиринте размерностью 10х10 , и выводить ответ. Помогите

Лабиринт - волновой алгоритм - C++
Помогите пожалуйста. Я написал код, который мне выведет на экран кратчайший путь... Но чего-то не хватает.... Может создать цикл с...

25
cyberdiem
74 / 25 / 1
Регистрация: 15.02.2012
Сообщений: 97
12.02.2013, 21:58 #2
Понятней формулируй задачу. А то какой вопрос - такой и ответ получишь. Я тоже могу спросить сколько весит розовый слон в нанометрах.
1
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 22:06  [ТС] #3
Собственно уточню есть матрица 0 4x4, ее эл-т а[2][1], присвоить эл-там матрицы значения волновым "способом" как написано в 1м посте. И реализовать это при помощи операторов ветвления и циклов while, for.
0
Wolkodav
604 / 457 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
12.02.2013, 22:12 #4
Ну в зависимости от вашего опыта и знаний будет зависит сложность.
0
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 22:44  [ТС] #5
C++
1
2
for(j=1;j<4;j++)
a[2][j]=j;
Так же влево, вверх вниз, но как быть с поворотами.
0
Wolkodav
604 / 457 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
12.02.2013, 22:53 #6
эммм не получится такая штука. Лично судя по этому нет. Тут надо брать элемент, и смотреть соседние, или хранить предыдущий.

Добавлено через 2 минуты
Ну точно не так линейно.
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 22:57 #7
Цитата Сообщение от Wolkodav Посмотреть сообщение
Ну точно не так линейно.
Да ну?
C++
1
2
3
4
5
int x = 2, y = 1;
 
for (int i = 0; i < 4; i++)
  for (int j = 0; j < 4; j++)
    a[i][j] = abs(i - x) + abs(j - y) + 1;
1
cyberdiem
74 / 25 / 1
Регистрация: 15.02.2012
Сообщений: 97
12.02.2013, 23:04 #8
Куда же канули те времена, когда мы задумывались об экономии памяти? Да здравствуют полные переборы. Это печально.
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:10 #9
cyberdiem, НЛО прилетело сюда и оставило тут эту запись?
0
Wolkodav
604 / 457 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
12.02.2013, 23:11 #10
Цитата Сообщение от Valli1 Посмотреть сообщение
Код C++
for(j=1;j<4;j++)
a[2][j]=j;
iama, сравните и ваше, по мне достаточно разные вещи.
0
cyberdiem
74 / 25 / 1
Регистрация: 15.02.2012
Сообщений: 97
12.02.2013, 23:14 #11
iama, "эту" понятие растяжимое на 8 постов. Вопрос некорректен.
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:14 #12
Wolkodav, вы, похоже, имели в виду, что нужно писать что-то похожее на обход в ширину, разве не так?
0
Wolkodav
604 / 457 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
12.02.2013, 23:20 #13
iama, примерно
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:22 #14
Wolkodav, а я всего-то хотел сказать, что можно сделать всё много проще и довольно линейно.
1
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 23:28  [ТС] #15
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
#include <iostream>
const int n=4;
void r(int (*a)[4],int n);
int main(){
int a[4][4]={{0,0,0,0},{0,0,0,0},{0,0,0,0},{0,0,0,0}};
r(a,n);
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){
std::cout<<a[i][j]<<' ';}
std::cout<<'\n';}
system("pause");
return 0;
}
void r(int (*a)[4],int n){
for(int i=2,k=1;i<4;i++){
for(int j=1;j<4;j++){
a[i][j]=k;k++;}k=2;}
for(int i=2,k=1;i<4;i++){
for(int j=1;j>=0;j--){
a[i][j]=k;k++;}k=2;}
for(int i=1,k=2;i>=0;i--){
for(int j=1;j<4;j++){
a[i][j]=k;k++;}k=3;}
for(int i=1,k=2;i>=0;i--){
for(int j=1;j>=0;j--){
a[i][j]=k;k++;}k=3;}
 
}
Для конкретных координат вот так. Но хотелось бы для универсальных.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2013, 23:28
Привет! Вот еще темы с ответами:

Волновой алгоритм поиска пути - C++
Добрый день. Реализую всем известный алгоритм поиска кратчайшего пути. Но не могу понять одну вещь. Пройдя волновым методам по...

Волновой алгоритм (шахматы, конь) - C++
Всем привет! Пытался написать волновой алгоритм для нахождения кратчайшего пути коня на шахматной доски из A-&gt;B. Но что-то у меня...

Tiled Map и волновой алгоритм - C++
Делаю игру пакман. Нашла, что для привидений хорошо подходит волновой алгоритм. Нашла примеры реализации -все они завязаны на двумерных...

Волновой алгоритм - поиск минимального пути - C++
Доброго времени суток всем. Не могу въехать в алгоритм волновой для поиска минимального пути. Видел кучу примеров с готовым кодом, читал,...


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

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
12.02.2013, 23:28
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru