Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 02.02.2015
Сообщений: 9

«Визуальное» программирование на С++

27.01.2025, 05:51. Показов 6421. Ответов 73
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую!

Прошу прощения за возможно глупый вопрос, но начал изучение плюсов месяц назад, по-этому - не в теме. И вообще - это мой первый язык программирования.

Вопрос следующий. Учусь писать код в Visual Studio. И вот уже начались первые, пусть и простые, но законченные программы. Хотелось бы теперь примитивные игры, вроде «угадай число», или «крестики-нолики» - облачить в интерфейс с картинками. Unreal Engine - жирноват для подобных задач. Что посоветуете?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.01.2025, 05:51
Ответы с готовыми решениями:

визуальное программирование
Трассировка, разбиение и размещение графов в визуальном

Визуальное программирование
Поддерживается ли сабж Visual Studio (если что, пользуюсь 2012 Ultimate)? Хочется рисовать формы, а не писать их код.

визуальное программирование на С++
1.дан текстовый файл формата: n1 x1 y1 x2 y2 где n=0,если (x1,y1-x2,y2)координаты отрезка n=1,если (x1,y1-x2,y2)координаты...

73
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
27.01.2025, 19:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от WhiteCollar777 Посмотреть сообщение
Что посоветуете?
Игра "пятнашки" подходит для такого случая.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 19:17
повар1, реализовать тупо игру не проблема. Наверное, там самая сложная часть это при смешивании номеров реализовать проверку на разрешимость стартовой позиции. Хотя, я не разбирался в данной проблеме. Возможно, существует быстрый способ проверки.
Я бы взял бы разрешимую позицию и просто смешал бы, сымитировав рандомные легальные ходы.
Конечно, можно сделать по-простому, типа игра каждый раз начинается с определенной разрешимой позиции, но так будет неинтересно.

Вот такая позиция не разрешима:
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
27.01.2025, 19:25
Цитата Сообщение от Royal_X Посмотреть сообщение
Возможно, существует быстрый способ проверки.
Неразрешимость позиции доказуема. Простое объяснение, например, есть в книге Алексея Савватеева - "Математика для гуманитариев".
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 19:28
Croessmah, ну вот, перед стартом игры, позиция по сети будет передаваться савватееву или волкову, они быстро докажут и отправят сигнал в ответ.
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
27.01.2025, 19:29
Годно! Сколько за подписку брать будем?
Срочно идем в раздел "Проекты", набираем разрабов.
С нас идея, с них работа!
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 19:30
Croessmah, на уровне подписки creative cloud
0
 Аватар для Pphantom
2465 / 1611 / 741
Регистрация: 17.03.2022
Сообщений: 5,235
27.01.2025, 20:25
Цитата Сообщение от Royal_X Посмотреть сообщение
Возможно, существует быстрый способ проверки.
Нужно посчитать количество парных инверсий (меняющих местами две соседних по вертикали или диагонали фишки), требуемых для перевода позиции в желаемую. Если это количество нечетно - задача неразрешима. Важно, что от конкретной траектории перемещения фишек на доске этот результат никак не зависит.

Ну и поскольку число инверсий легко считается программно (например, "перегоняем" в нужную позицию единицу, потом двойку и т.д.), то оценка оказывается достаточно быстрой.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 20:36
Pphantom, в Википедии тоже описан один способ


Как я и сказал, реализовать эту игру не составит труда. Относительно сложно будет только реализовать эту проверку.
0
 Аватар для Pphantom
2465 / 1611 / 741
Регистрация: 17.03.2022
Сообщений: 5,235
27.01.2025, 20:40
Цитата Сообщение от Royal_X Посмотреть сообщение
в Википедии тоже описан один способ
Ну да, одно эквивалентно другому.
0
Модератор
Эксперт Java
 Аватар для alecss131
2894 / 1400 / 412
Регистрация: 11.08.2017
Сообщений: 4,481
Записей в блоге: 2
27.01.2025, 21:26
Цитата Сообщение от Royal_X Посмотреть сообщение
UE это не движок для программистов С++, а это движок для артистов. 99% времени там идет на другие вещи и только 1% на С++
Слишком время преуменьшено. Ничем не больше/меньше чем на других движках. Создание игр на любых движках это в первую очередь дизайн и графика. А создание графики в коде в движках это очень плохая практика уровня магических констант или goto
Для простых игр sfml (а не сишный его аналог sdl) подойдет как нельзя лучше, потом для 3д графики и чего посложнее будет неплохим выбором, хотя можно и с него yfчать это будет raylib (офф сайт) для гуи есть модуль raygui и еще куча всего на странице автора. Либа довольно популярная
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
27.01.2025, 21:28
Цитата Сообщение от Royal_X Посмотреть сообщение
Относительно сложно будет только реализовать эту проверку.
И зачем она нужна. Цель игры - убить время. Не получил результат, запускаем новый вариант игры.
алгоритм простой: устанавливаем на форме 16 кнопок(15 рандомно оцифрованных, одна пустая).
Нажимая любую кнопку рядом с пустой меняем их местами (всего то надо поменять свойство Caption кнопок).
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 21:51
Цитата Сообщение от alecss131 Посмотреть сообщение
Ничем не больше/меньше чем на других движках.
Нет, на Unity и Godot код имеет большее значение. API Unreal Engine настолько отстойное, что даже ААА студии используют блюпринты. Причем, речь не идет о случаях, где нельзя обойтись без них. Я говорю именно о случаях, когда теоретически можно было написать код на С++, то на это идет столько времени, что даже огромные студии юзают блюпринты по максимуму.
Цитата Сообщение от alecss131 Посмотреть сообщение
А создание графики в коде в движках это очень плохая практика уровня магических констант или goto
Порой бывают случаи, когда объекты нужно создать через код. И ничего плохого в этом нет. Конечно, в UE, возможно, такое случается редко, учитывая, что этот движок чаще юзают для создания реалистичных карт с огромными лесами и горами, и есесена никто не будет создавать лес через код. Однако, большинство игр, особенно мобильных, пишут на Unity и Godot, и вот там почти всё делается через код, начиная от всяких игр типа Candy Crush Saga, Railway Surfers до Doodle Jump или Flappy Bird. Все такие игры генерируют бесконечный мир через код. Конечно, графика не создается прям с нуля через код (хотя, и такое бывает, например, мой 3d сапер), но генерация мира и загрузка префабов через код.
Цитата Сообщение от повар1 Посмотреть сообщение
И зачем она нужна. Цель игры - убить время. Не получил результат, запускаем новый вариант игры.
Не знаю, я бы не играл бы игру, которая не гарантирует решения. Как брелок такое сойдет, но любой уважающий себя человек не станет играть в лохотрон.
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
27.01.2025, 22:07
Цитата Сообщение от Royal_X Посмотреть сообщение
любой уважающий себя человек не станет играть в лохотрон.
"Лохотрон — Мошенничество в самом широком смысле, это обман или злоупотребление доверием с целью завладения чужим имуществом либо правом на чужое имущество имущество (собственность или деньги). Мошенничество, как правило, является преступлением."
И каким имуществом пытаемся завладеть?
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 22:09
повар1, у этого слова много значений, например, "игра, устраиваемая для лохов". Если чел играет в игру без решения, то значит он доверчивый лох.

0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
27.01.2025, 22:22
Цитата Сообщение от Royal_X Посмотреть сообщение
у этого слова много значений
"в историко-лингвистическом словаре Архангельской Губернии: "ЛОХ - недалекий мужик из крестьянства".
Так что среди нас ЛОХОВ нет и игра не может быть лохотроном.
0
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
27.01.2025, 23:40
Цитата Сообщение от Royal_X Посмотреть сообщение
реализовать тупо игру не проблема.
Сложнее сделать, что-бы игра сама собиралась.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
27.01.2025, 23:45
Цитата Сообщение от alexu_007 Посмотреть сообщение
Сложнее сделать, что-бы игра сама собиралась.
если не по минимальному(оптимальному) пути, то нет
https://www.cyberforum.ru/post15601149.html
0
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
27.01.2025, 23:49
Я написал пятнашки. Там есть и тест на правильность позиции, и самосборка:
Миниатюры
«Визуальное» программирование на С++  
2
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6307 / 3029 / 1053
Регистрация: 01.06.2021
Сообщений: 11,510
27.01.2025, 23:56
Цитата Сообщение от XLAT Посмотреть сообщение
оптимальному) пути
а такой путь и не существует для обобщённых пятнашек n × n

пятнашки 4 × 4 решаются очень быстро любым мусорным алгоритмом
вот уже для больших размеров нужно реализовать алгоритмы поиска на графе

Цитата Сообщение от alexu_007 Посмотреть сообщение
Я написал пятнашки.
надеюсь там у тебя не 15 QPushButton для каждого номерка?
0
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,316
28.01.2025, 00:06
Цитата Сообщение от Royal_X Посмотреть сообщение
надеюсь там у тебя не 15 QPushButton для каждого номерка?
Именно так и есть. Зачем изобретать велосипед, когда есть готовое решение - кнопки. Они и нажимаются, и двигаются сами. И красивые.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.01.2025, 00:06

Визуальное программирование. Одномерный массив.
Есть задание. Как делать его для выполнения в командной строке более-менее понятно. А вот с визуальным есть проблемы.Сам студент, учусь...

Визуальное программирование.Функции пользователя
Написать программу расчета выбранной функции Y(x) или S(x) (желательно и |Y(x)–S(x)|), вид которой в свою очередь передается в качестве...

Визуальное программирование. Считывание теста
Создать программу, которая могла бы считывать введённую функцию и потом рассчитать по ней. Как сие реализовать?

Визуальное программирование. Использование строк. Циклических алгоритмов
Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x) – S(x)| и вывести в виде таблицы....

Визуальное программирование. Метод деления отрезка пополам
Приближенное нахождение решения уравнения f(x)=0 методом деления отрезка пополам. Написать программу, находящую методом деления отрезка...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru