Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 24.01.2016
Сообщений: 11

Использование массивов в создании некоторых игр

31.01.2016, 16:01. Показов 1744. Ответов 8

Студворк — интернет-сервис помощи студентам
Помогите понять, как используются массивы для создания игр. Таких как змейка, три в ряд, морской бой, тетрис наконец). Я гуглил, но ничего понятного не на гуглил.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.01.2016, 16:01
Ответы с готовыми решениями:

Перезагружается ноутбук при запуске некоторых игр, приложений, при просмотре некоторых видеозаписей
Доброго времени суток, уважаемые. В прикрепленном скрин, того, что имеется. В целом, проблема в заголовке описана полностью. Могу лишь...

Ошибка при создании меню на некоторых компьютерах
С чем может быть связана ошибка при создании меню на некоторых компьютерах, догадываюсь, что чего-то не хватает, а чего конкретно не знаю. ...

Ошибки при установке некоторых игр
Вот такая проблема при установке с образа с помощью daemon tools хочу поставить игру и вот...не находит какой-то cab11 файл,причем это...

8
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,060
01.02.2016, 08:52
Попробуйте самостоятельно начать писать программку „змейка“… Вот тогда и поймёте где и как вам использовать массивы!
0
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
01.02.2016, 09:01
Цитата Сообщение от Жорчик Посмотреть сообщение
Таких как змейка, три в ряд, морской бой, тетрис наконец)
Сам посуди - в каждой из этих игр есть игровое поле. Игровое поле это фактически карта, разделенная (как обычные карты) на области. Т.е. эта карта - есть двумерный массив. А двумерный массив - матрица.
Чтоб в морском бое сделать ход нужно ударить по координатам. Координаты две - колонка и строка. А это автоматически означает, что удар ты наносишь по элементу такой абстрактной матрицы. Ты, когда морской бой рисуешь, ведь делаешь сначала поле? Разлинееваешь? Это матрица. А попробуй на чистом листе бумаги вообще без линий поиграть в него.
1
0 / 0 / 0
Регистрация: 24.01.2016
Сообщений: 11
01.02.2016, 09:39  [ТС]
То есть нужно заполнить массив, это понятно. А вот как егоотриовать?
0
 Аватар для Jazon_deenAlt
4117 / 999 / 191
Регистрация: 09.04.2009
Сообщений: 4,223
01.02.2016, 13:07
ну например в змейке есть массив 10*10 змейка например состоит из циферок "1", голова змейки из циферки "2", хвост "3", яблочки которые она ест "4". у нас есть поле 1000*1000 пикселей, то есть если у нас 10*10 клеток то каждая клетка это 100*100 пикселей, смотрим массив и перерисовываем на наше поле. если "1" в массиве, то в соответствующей клетке игрового поля отрисовываем тело, "2" - голову, и т.д. ну это если самый примитивный вариант...
1
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
01.02.2016, 13:46
Цитата Сообщение от Жорчик Посмотреть сообщение
А вот как егоотриовать?
А ты знаешь как в принципе рисовать?
0
0 / 0 / 0
Регистрация: 24.01.2016
Сообщений: 11
01.02.2016, 14:31  [ТС]
Извините, но я что-то не очень понял... Видно такой я тупой)) Можно мне пример крестиков-ноликов с полем 3Х3, может так я лучше разберусь.

Добавлено через 3 минуты
Цитата Сообщение от Hikari Посмотреть сообщение
А ты знаешь как в принципе рисовать?
ну вот например:
Pascal
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
uses graphAbc;
Var xs:integer:=40;ys:integer:=420;
label l1;
Begin
l1: Repeat
lockdrawing;
circle(xs,ys,40);
clearwindow;
xs+=1;ys-=1;
circle(xs,ys,40);
floodfill(xs,ys,clRed);
redraw;
until xs=300;
Repeat
lockdrawing;
circle(xs,ys,40);
clearwindow;
xs+=1;ys+=1;
circle(xs,ys,40);
floodfill(xs,ys,clRed);
redraw;
until xs=600;
Repeat
lockdrawing;
circle(xs,ys,40);
clearwindow;
xs-=1;ys-=1;
circle(xs,ys,40);
floodfill(xs,ys,clRed);
redraw;
until xs=300;
repeat
lockdrawing;
circle(xs,ys,40);
clearwindow;
xs-=1;ys+=1;
circle(xs,ys,40);
floodfill(xs,ys,clRed);
redraw;
until xs=10;
goto l1;
End.
0
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
01.02.2016, 16:49
Цитата Сообщение от Жорчик Посмотреть сообщение
Можно мне пример крестиков-ноликов с полем 3Х3, может так я лучше разберусь.
Pascal
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
uses graphAbc;
var field:array[1..3,1..3] of char;
i,j,x,y,ax,ay:integer;
begin
 
Начало поля на экране
 x:=100; y:=100;
repeat
 
Цикл рисования крестиков-ноликов по матрице
 for i:=1 to 3 do begin
  for j:=1 to 3 do begin
    if field[i,j]='O' then circle(x+(40*j),y+(40*j),40) 
    else Krestic(x+(40*j),y+(40*j),40);
  end;
 end;
 
Считывание хода игрока
 i:=ХМышкиКлик-(x div 40);
 j:=YМышкиКлик-(y div 40);
 
Установка по координатам в матрице ходов крестика.
 field[i,j]:='X'; 
until Выход;
end.
0
0 / 0 / 0
Регистрация: 24.01.2016
Сообщений: 11
01.02.2016, 16:53  [ТС]
Спасибо. Сейчас буду разбираться)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.02.2016, 16:53
Помогаю со студенческими работами здесь

BSOD при запуске некоторых игр
При запуске определенных игр: Xcom, Borderlands 2, warhammer 40.000 space marine вылетает синий экран. Синий экран начал вылезать, когда...

Компьютер выключается во время некоторых игр
Здравствуйте. Помогите решить проблему, которой уже восемь месяцев. Реально испробовано ВСЁ. Проблема: комп выключается на...

Совместимость некоторых игр и программ с Windows 7
как поставил 7 началось, то одно несовместимо, то другое, хотя у друга тоже семерка максимальная и на ней эти проги и игры идут. Сначало...

Компьютер перезагружается во время некоторых игр
А именно в battlefield 4 и 3 мультиплеер. Перезагружается по-разному - может через 3 мин, может через пол часа игры. Синего экрана и...

При запуске некоторых игр экран замирает
Доброго времени суток. Начали появляться проблемы при запуске некоторых игр. Так, при запуске второй Доты все идет гладко, а если пытаюсь...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru