Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2014, 09:15   #1
Linker404
Новичок
Джуниор
 
Регистрация: 17.09.2014
Сообщений: 1
По умолчанию Перемещение фигуры(ромб)

моя проблема в том, что ромб движется только по оси 0y(и почему-то одна точка отстает...), почему так, объясните нубу, с графоном первый раз столкнулся, надо чтобы двигалось вообще по всей координатной плоскости и чтобы отталкивалось от стенок. Накидайте идей, как сделать.
Всем спасибо

Код:
#include <iostream>
#include "graphics.h"
#include <stdlib.h>
#include <stdio.h>
 
 
using namespace std;
   int xmax, ymax; 
 
void Peremeshenie() {
       xmax = getmaxx(); 
       ymax = getmaxy();
 
    for (int i=xmax; i<getmaxx()*getmaxy(); i++) {
        cleardevice();
        for (int j=ymax; j<getmaxx()*getmaxy(); j++) {
            
            cleardevice();
 
            
       line(i/2, j/2, i/3, j/3);
       line(i/3, j/3, i/2, (j/2)-160);
       line(i/2, (j/2)-160, (i/3)+212, (j/2)-80);
       line((i/3)+212, (j/2)-80, i/2, j/2);
       delay(15);
            }
        
    }
}
                   
 
int main()
{
   
   int gdriver = DETECT, gmode, errorcode;
 
 
   initgraph(&gdriver, &gmode, "");
   
   errorcode = graphresult();
  
   if (errorcode != grOk)
   {
     cout<<"ERROR"<<grapherrormsg(errorcode);
     cout<<"Press any key to halt:";
     cin.get(); //Ожидаем нажатие клавиши
      exit(1); //Выход
   }
//Если ошибки не произошло программа работает в графическом режиме
  
   xmax = getmaxx(); //Запоминаем правый конец экрана
   ymax = getmaxy();//Запоминаем самый низ экрана
 
    setbkcolor(15);
    cleardevice();
    setcolor(0);
 
    line(xmax/2,0,xmax/2,ymax);
    line(0,ymax/2,xmax,ymax/2);
 
   line(xmax/2, ymax/2, xmax/3, ymax/3);
   line(xmax/3, ymax/3, xmax/2, (ymax/2)-160);
   line(xmax/2, (ymax/2)-160, xmax/3+212, (ymax/2)-80);
   line(xmax/3+212, (ymax/2)-80, xmax/2, ymax/2);
 
  Peremeshenie();
 
   
 
   
   cin.get();
   closegraph();
   return 0;
}



___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 17.09.2014 в 09:39.
Linker404 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С квадратной матрицы получить ромб путем отсечение углов по n элементов. Элементы, которыми заполнено ромб переписать в вых. файл Juliks Паскаль, Turbo Pascal, PascalABC.NET 10 29.12.2012 20:50
Движение одной фигуры,вслед изменения высоты другой фигуры. 7vlad37 Microsoft Office Excel 3 21.07.2011 18:01
Ромб veter48 Общие вопросы C/C++ 7 26.08.2010 12:45
графика. ромб. оч странный ромб aka_faith Паскаль, Turbo Pascal, PascalABC.NET 19 11.06.2009 02:57