זה ממש ממש קל (מנסיון):
אני אומנם הכנתי את סנייק בVB, אבל אני בטוח שבשפות אחרות זה עובד על אותו עיקרון: עושים מערך, כל חלק של הנחש הוא מקום אחד במערך. כשרוצים שהנחש יזוז לכיוון כלשהו, קודם כל מקדמים את האיבר האחרון בנחש לאיפה שנמצא האיבר האחד לפני אחרון, את האחד לפני אחרון לשני לפני אחרון, ככה עד שמזיזים את האיבר השני לאיבר הראשון. אח"כ מעבירים את האיבר הראשון לאיפה שאתה רוצה שהוא יהיה. פשוט מאוד. אם אתה רוצה להוסיף איבר לנחש, אתה פשוט מייצר איבר חדש לנחש באותו מערך, ואוטומטית האיבר האחרון גם יזוז באותה דרך.