Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переписать графическую программу из C++ в C#, Дана прога на С++ - графическая 
:(
    Опции темы
tereres
Дата 18.3.2006, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Дана прога на С++ - в основном работа с графикой. Надо перевести её в C#, с использованием System.Drawing - т.е. прога должна работать под Windows... Помогите, если можете. Это задача комовиажора.

Код

#include <iostream.h>
#include <graphics.h>
#include <stdlib.h>
#include <conio.h>
#include <dos.h>
//*****************************************************************************
int minimum(int k,...)
{
int *pi=&k+1;
int min=*pi;
for(;k;k--,pi++)
min = min > *pi ? *pi : min;
return min;
}
//*****************************************************************************
int mx, my, r = 20;
int x2,x3,x4,x1;
int y2,y3,y4,y1;
int c[5][5];
int i,j,a,b;
char ch;
//*****************************************************************************
void pic(void)
{ clrscr();
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "bgi");
errorcode = graphresult();
if (errorcode != grOk) { 
cout<<"Graphics error:"<<grapherrormsg(errorcode)<<endl;
cout<<"Press any key to halt:"<<endl;
getch();
exit(1);
}



mx = getmaxx() / 2;
my = getmaxy() / 6;
setcolor(4);
setfillstyle(1,4);
fillellipse(mx,my,r,r);
x1=getmaxx()/6;y1=getmaxy()/2;fillellipse(x1,y1,r,r);
x2=getmaxx()-getmaxx()/6;y2=getmaxy()/2;fillellipse(x2,y2,r,r);
x3=getmaxx()/3;y3=getmaxy()-getmaxy()/6;fillellipse(x3,y3,r,r);
x4=getmaxx()-getmaxx()/3;y4=getmaxy()-getmaxy()/6;fillellipse(x4,y4,r,r);

setcolor(15);
outtextxy(mx,my-10,"1");
outtextxy(x1-10,y1,"2");
outtextxy(x2+10,y2,"3");
outtextxy(x3,y3+10,"4");
outtextxy(x4,y4+10,"5");

setcolor(4);
setfillstyle(1,4);
//-0->1----------------------------------------------
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1])line(mx,my,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2])line(mx,my,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3])line(mx,my,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4])line(mx,my,x4,y4);
//-1->2----------------------------------------------
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][2])line(x1,y1,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][3])line(x1,y1,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][4])line(x1,y1,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][1])line(x2,y2,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][3])line(x2,y2,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][4])line(x2,y2,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][1])line(x3,y3,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][2])line(x3,y3,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][4])line(x3,y3,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][1])line(x4,y4,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][2])line(x4,y4,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][3])line(x4,y4,x3,y3);
//-2->3----------------------------------------------
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][2] &&
minimum(2,c[2][3],c[2][4])==c[2][3])line(x2,y2,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][2] &&
minimum(2,c[2][3],c[2][4])==c[2][4])line(x2,y2,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][3] &&
minimum(2,c[3][2],c[3][4])==c[3][2])line(x3,y3,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][3] &&
minimum(2,c[3][2],c[3][4])==c[3][4])line(x3,y3,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][4] &&
minimum(2,c[4][2],c[4][3])==c[4][2])line(x4,y4,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][4] &&
minimum(2,c[4][2],c[4][3])==c[4][3])line(x4,y4,x3,y3);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][1] &&
minimum(2,c[1][3],c[1][4])==c[1][3])line(x1,y1,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][1] &&
minimum(2,c[1][3],c[1][4])==c[1][4])line(x1,y1,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][3] &&
minimum(2,c[3][2],c[3][4])==c[3][2])line(x3,y3,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][3] &&
minimum(2,c[3][2],c[3][4])==c[3][4])line(x3,y3,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][4] &&
minimum(2,c[4][1],c[4][3])==c[4][1])line(x4,y4,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][4] &&
minimum(2,c[4][1],c[4][3])==c[4][3])line(x4,y4,x3,y3);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][1] &&
minimum(2,c[1][2],c[1][4])==c[1][2])line(x1,y1,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][1] &&
minimum(2,c[1][2],c[1][4])==c[1][4])line(x1,y1,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][2] &&
minimum(2,c[2][1],c[2][4])==c[2][1])line(x2,y2,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][2] &&
minimum(2,c[2][1],c[2][4])==c[2][4])line(x2,y2,x4,y4);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][4] &&
minimum(2,c[4][1],c[4][2])==c[4][1])line(x4,y4,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][4] &&
minimum(2,c[4][1],c[4][2])==c[4][2])line(x4,y4,x2,y2);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][1] &&
minimum(2,c[1][2],c[1][3])==c[1][2])line(x1,y1,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][1] &&
minimum(2,c[1][2],c[1][3])==c[1][3])line(x1,y1,x3,y3);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][2] &&
minimum(2,c[2][1],c[2][3])==c[2][1])line(x2,y2,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][2] &&
minimum(2,c[2][1],c[2][3])==c[2][3])line(x2,y2,x3,y3);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][3] &&
minimum(2,c[3][1],c[3][2])==c[3][1])line(x3,y3,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][3] &&
minimum(2,c[3][1],c[3][2])==c[3][2])line(x3,y3,x2,y2);
//-3->4----------------------------------------------
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][2] &&
minimum(2,c[2][3],c[2][4])==c[2][3] &&
minimum(1,c[3][4])==c[3][4])line(x3,y3,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][2] &&
minimum(2,c[2][3],c[2][4])==c[2][4] &&
minimum(1,c[4][3])==c[4][3])line(x4,y4,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][3] &&
minimum(2,c[3][2],c[3][4])==c[3][2] &&
minimum(1,c[2][4])==c[2][4])line(x2,y2,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][3] &&
minimum(2,c[3][2],c[3][4])==c[3][4] &&
minimum(1,c[4][2])==c[4][2])line(x4,y4,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][4] &&
minimum(2,c[4][2],c[4][3])==c[4][2] &&
minimum(1,c[2][3])==c[2][3])line(x2,y2,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][1] &&
minimum(3,c[1][2],c[1][3],c[1][4])==c[1][4] &&
minimum(2,c[4][2],c[4][3])==c[4][3] &&
minimum(1,c[3][2])==c[3][2])line(x3,y3,x2,y2);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][1] &&
minimum(2,c[1][3],c[1][4])==c[1][3] &&
minimum(1,c[3][4])==c[3][4])line(x3,y3,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][1] &&
minimum(2,c[1][3],c[1][4])==c[1][4] &&
minimum(1,c[4][3])==c[4][3])line(x4,y4,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][3] &&
minimum(2,c[3][1],c[3][4])==c[3][1] &&
minimum(1,c[1][4])==c[1][4])line(x1,y1,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][3] &&
minimum(2,c[3][1],c[3][4])==c[3][4] &&
minimum(1,c[4][1])==c[4][1])line(x4,y4,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][4] &&
minimum(2,c[4][1],c[4][3])==c[4][1] &&
minimum(1,c[1][3])==c[1][3])line(x1,y1,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][2] &&
minimum(3,c[2][1],c[2][3],c[2][4])==c[2][4] &&
minimum(2,c[4][1],c[4][3])==c[4][3] &&
minimum(1,c[3][1])==c[3][1])line(x3,y3,x1,y1);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][1] &&
minimum(2,c[1][2],c[1][4])==c[1][2] &&
minimum(1,c[2][4])==c[2][4])line(x2,y2,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][1] &&
minimum(2,c[1][2],c[1][4])==c[1][4] &&
minimum(1,c[4][2])==c[4][2])line(x4,y4,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][2] &&
minimum(2,c[2][1],c[2][4])==c[2][1] &&
minimum(1,c[1][4])==c[1][4])line(x1,y1,x4,y4);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][2] &&
minimum(2,c[2][1],c[2][4])==c[2][4] &&
minimum(1,c[4][1])==c[4][1])line(x4,y4,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][4] &&
minimum(2,c[4][1],c[4][2])==c[4][1] &&
minimum(1,c[1][2])==c[1][2])line(x1,y1,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][3] &&
minimum(3,c[3][1],c[3][2],c[3][4])==c[3][4] &&
minimum(2,c[4][1],c[4][2])==c[4][2] &&
minimum(1,c[2][1])==c[2][1])line(x2,y2,x1,y1);

if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][1] &&
minimum(2,c[1][2],c[1][3])==c[1][2] &&
minimum(1,c[2][3])==c[2][3])line(x2,y2,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][1] &&
minimum(2,c[1][2],c[1][3])==c[1][3] &&
minimum(1,c[3][2])==c[3][2])line(x3,y3,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][2] &&
minimum(2,c[2][1],c[2][3])==c[2][1] &&
minimum(1,c[1][3])==c[1][3])line(x1,y1,x3,y3);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][2] &&
minimum(2,c[2][1],c[2][3])==c[2][3] &&
minimum(1,c[3][1])==c[3][1])line(x3,y3,x1,y1);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][3] &&
minimum(2,c[3][1],c[3][2])==c[3][1] &&
minimum(1,c[1][2])==c[1][2])line(x1,y1,x2,y2);
if (minimum(4,c[0][1],c[0][2],c[0][3],c[0][4])==c[0][4] &&
minimum(3,c[4][1],c[4][2],c[4][3])==c[4][3] &&
minimum(2,c[3][1],c[3][2])==c[3][2] &&
minimum(1,c[2][1])==c[2][1])line(x2,y2,x1,y1);






getch();
closegraph();
}

//*****************************************************************************
void cost(void)
{clrscr();
for(i=0;i<5;i++)
{ for(j=0;j<5;j++)
{cout<<"Vedite stoimost iz goroda "<<i+1<<" v gorod "<<j+1<<" ";cin>>c[i][j];cout<<endl;}
cout<<"\n\n";
}
getche();
}
//*****************************************************************************


int main(void)
{
do{
clrscr();
cout<<"1-Zapisat stoimost\n";
cout<<"2-Prosmotret marshrut\n";
cout<<"0-Vixod\n";
cin>>ch;
if(ch=='1')cost();
if(ch=='2')pic();
}while(ch!='0');
return 0;
}


Это сообщение отредактировал(а) mr.DUDA - 18.3.2006, 16:09
PM MAIL   Вверх
mr.DUDA
Дата 18.3.2006, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Если никто не возьмётся, будет перемещено в "Центр помощи".


--------------------
user posted image
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




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


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

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