Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Открытие программы в программе, помощь в написании 
V
    Опции темы
Huey
Дата 10.5.2011, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.12.2010

Репутация: нет
Всего: нет



If (условие)
then 
что тут надо написать, чтобы открылась другая программа в этом же окне (ПРОГРАММА ХРАНИТЬСЯ В ТОЙ ЖЕ ПАПКЕ)
PM MAIL   Вверх
borisbn
Дата 10.5.2011, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(Huey @  10.5.2011,  17:42 Найти цитируемый пост)
If (условие)then 

это псевдокод или ты на дельфи пишешь ?
если первое, то используй функции exec*


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Huey
Дата 10.5.2011, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.12.2010

Репутация: нет
Всего: нет



первое.
как используется функций exec*
если программа оригинала включает графику, а дочерний нет и дочерняя программа называется скажем "1.С"

Добавлено через 5 минут и 53 секунды
Если игра настольный теннис
Код

#include<conio.h>
#include <stdlib.h>
#include <graph.h>

void DrawBall(double x, double y)
{
_setcolor(11);
_ellipse( _GFILLINTERIOR, x - 10, y - 10, x + 10, y + 10);
}

void EraseBall(double x, double y)
{
_setcolor(0);
_ellipse( _GFILLINTERIOR, x - 10, y - 10, x + 10, y + 10);
}

void DrawRacket(double x, double y)
{
_setcolor(10);

_rectangle( _GFILLINTERIOR, x - 60, y - 5, x + 60, y + 5 );
}

void EraseRacket(double x, double y)
{
_setcolor(0);
_rectangle( _GFILLINTERIOR, x - 60, y - 5, x + 60, y + 5 );
}

double ballx=150, bally=200, balldx=2, balldy=2;
double racketx=640/2, rackety=475;
int oldballx=0, oldbally=0;
int oldracketx=0, oldrackety=0;
int redraw_field=0;

int ProcessBall()
{
int res=0;
ballx+=balldx;
bally+=balldy;
if (bally+10>473){
           if (ballx-10>0 &&
           ballx+10<640
           ) res=1;
        balldy=-balldy;
        bally+=balldy;
        redraw_field=1;
        }
if (bally-10<7) {
           if (ballx-10>0 &&
           ballx+10<640
           ) res=2;
        balldy=-balldy;
        bally+=balldy;
        redraw_field=1;
        }
if (ballx+10>630) balldx=-balldx;
if (ballx-10<10) balldx=-balldx;

if (bally>rackety)
{
 if (bally-10<rackety+5 &&
     ballx+10>racketx-60 &&
     ballx-10<racketx+69)
     {
      balldy=-balldy;
      bally+=balldy;
      DrawRacket(racketx, rackety);
     }
} else
if (bally+10>rackety-5 &&
     ballx+10>racketx-60 &&
     ballx-10<racketx+69)
     {
      balldy=-balldy;
      bally+=balldy;
      DrawRacket(racketx, rackety);
     }
return res;
}


int should_exit = 0, goal=0;
int goals1=0, goals2=0;
char s[20]="";
char ch;
main()
{
    short mode = _VRES16COLOR;

    _setvideomode( mode );
    while (!should_exit)
    {
     if (oldballx!=(int)ballx ||
     oldbally!=(int)bally)
     {
     DrawBall(ballx, bally);
     oldballx = ballx;
     oldbally = bally;
     }

     if (oldracketx!=(int)racketx ||
     oldrackety!=(int)rackety)
     {
     DrawRacket(racketx, rackety);
     oldracketx = racketx;
     oldrackety = rackety;
     }

     goal = ProcessBall();
     if (goal){
    if (goal==2) goals1++; else
             goals2++;
    }
     if (oldballx!=(int)ballx ||
     oldbally!=(int)bally)
     EraseBall(oldballx, oldbally);

     if (kbhit())
      {
      ch = getch();
      if (ch==27) should_exit = 1;
      if (ch=='w') racketx+=5.0;
      if (ch=='q') racketx-=5.0;
      }

     _settextcolor( 7 );
      sprintf(s, "Goals: %d, Looses: %d", goals1, goals2 );
     _settextposition(1, 3);
     _outtext( s );

     if (oldracketx!=(int)racketx ||
     oldrackety!=(int)rackety)
     EraseRacket(oldracketx, oldrackety);
     if (redraw_field)
      {
      redraw_field = 0;
      }
     }
    exit( !_setvideomode( _DEFAULTMODE ) );
}




Надо чтобы когда забиваем гол, открывалась программа "4.с"
Там банальное x+y 
PM MAIL   Вверх
borisbn
Дата 10.5.2011, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Ты не сможешь из exe-шника запустить другую программу, хранящуюся в исходнике. Тебе нужно включить в проект сборки твоей программы 4.c, в котором будет содержаться ф-ция add(x,y) а в нужном месте вызывать эту функцию. Если же ты хочешь, чтобы на этапе выполнения твоей программы еще не был известен функционал из 4.c, то тебе нужно смотреть в сторону скриптов, например lua


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Huey
Дата 10.5.2011, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.12.2010

Репутация: нет
Всего: нет



спасибо
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0451 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.