Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
 Аватар для Anonymous4722
5 / 3 / 2
Регистрация: 29.11.2012
Сообщений: 545

Игра морской бой + VS 2019

28.04.2019, 21:03. Показов 1627. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можете посмотреть компилируется и работает ли у вас игра МОРСКОЙ БОЙ Почему спрашиваю, я запускаю код на VS2019 и дальше дело не идет, т.е. при автоматической расстановки компьютер что-то не может расставить корабли! Тупо зависает на одном месте. Скрины прикреплю, где ошибка.
Миниатюры
Игра морской бой + VS 2019   Игра морской бой + VS 2019   Игра морской бой + VS 2019  

Игра морской бой + VS 2019  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.04.2019, 21:03
Ответы с готовыми решениями:

Игра Морской бой
Дан двумерный массив целых чисел a a из n n строк и m m столбцов. Требуется определить номер столбца в котором...

Игра Морской Бой
#include <conio.h> #include <stdlib.h> #include <iostream.h> #include <dos.h>Kletka {:Pustaya_kletka, Vistrel, X, Y;:(int x, int...

Найти и исправить ошибки (игра "Морской бой")
Ребят. На с++ пишу недавно. Решил сделать простенькую игру: "Морской бой". Игра будет происходит только на одном поле. Вы вводите...

2
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
29.04.2019, 06:55
Лучший ответ Сообщение было отмечено Anonymous4722 как решение

Решение

есть такая замечательная вещь, отладка программ.
1) Запускаем программу... она висит

2) Выбираем окошко студии и нажимаем кнопку ПАУЗА

3) Нас выбрасывает в студию на какое-то место в программе?
rand()%3 ??? ну это место явно не может висеть! Откуда мы в него попали? Смотрим на Call stack! Там все вложенные друг в друга вызовы функций!

4) Щёлкаем на функцию, которая нас вызвала, она явно больше виновата в зависании. Какую выбрать ? ближе всего set_computer_pozition
5) В ней действительно есть цикл, почему он не заканчивается? Какое у него условие? While(j!=1)
Почему j не достигает единицы? Чему оно там равно?
Щёлкаем окно Watch1, дабл-клик по строчке в нём и вписываем имя переменной джей - вводим! А она равна нулю!

6) Почему? Что там с условием её увеличения? if ((wrong_detect(square, vert_horiz, X, Y, deck)) == 0)
Можно было бы так же пройтись по этой функции, проверяя все переменные, но наверное нам интересна самая главная переменная - наш массив square. Смотрим его в watch, не забываем через запятую прописать размер массива, если изначально он показывается как одиночный указатель.

7) Баатюшки! А массив то уже весь заполнен нулями(или это о-шки?)!!!! Auchtung!

8) Кто ж его так лишил девственности? Смотрим внимательно, а откуда он взялся в функции set_computer_pozition?
Снова смотрим Call Stack
Так... до set_computer_pozition была computer_pozition - ничего шокирующего...

9) А что было ранее? смотрим Call Stack - нам предлагают посмотреть функцию game на 129 строчке...

Так вот оно что! Мы в этой строчке два раза вызываем функцию computer_pozition(square_1); Вместо вызова
C++
1
2
3
computer_pozition(square_1); 
//блаблабла
computer_pozition(square_2);
2
 Аватар для Anonymous4722
5 / 3 / 2
Регистрация: 29.11.2012
Сообщений: 545
29.04.2019, 11:23  [ТС]
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Так вот оно что! Мы в этой строчке два раза вызываем функцию computer_pozition(square_1); Вместо вызова
А теперь новая проблема. Поля почему-то не ровные((
Миниатюры
Игра морской бой + VS 2019  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.04.2019, 11:23
Помогаю со студенческими работами здесь

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

Игра "Морской Бой"
СРОЧНО!!! Требуется помощь с данной игрой: нечто просто заменяет все клетки кораблей на клетку воды перед выводом массивов на экран и в...

Игра "Морской бой"
задание такое Запрограммировать игру двух игроков в “Морской бой”. Сначала, по-сле запуска программы, игроки совместно вводят размер...

Игра "Морской бой"
Морской бой.Машина задумывает два числа от 0 до 9.Игрок пытается их угадать, вводя свои два числа.Если они совпали(в любом сочетании), то...

Игра "Морской бой"
Всем привет, помогите пожалуйста разобраться с задачей. Нужно написать код, и если можете с пояснениями=) 1. Перечисления. Игра Морской...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru