Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсова1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.78 Mб
Скачать
  1. Додаток а

Лістинг програми

#include<graphics.h>

#include<dos.h>

#include<stdio.h>

#include<conio.h>

#include<alloc.h>

void parys(int mx, int my);

int main(void)

{

int gd=DETECT,gm;

int mx,my;

void*otr;

unsigned int size;

initgraph(&gd,&gm,"C:\\TC\\BGI");

mx=getmaxx()/2;

my=getmaxy()/2;

setbkcolor(11);

parys(mx,my);

size=imagesize(mx-mx/2-40,my-my/2-30,mx+mx/2,my+my/2);

otr=malloc(size);

getimage(mx-mx/2-40,my-my/2-30,mx+mx/2,my+my/2,otr);

int key;

int nx=mx;

int ny=my;

do

{

key=getch();

switch(key) { //peremishchenya

case 80:ny+=10; break;

case 72:ny-=10; break;

case 77:nx+=10; break;

case 75:nx-=10; break;

}

putimage(mx-mx/2-40,my-my/2-30,otr,2);

cleardevice();

mx=nx;

my=ny;

putimage(mx-mx/2-40,my-my/2-30,otr,2);

}

while(key!=27);

free(otr);

closegraph();

return 0;

}

void parys (int mx,int my) // pobydova zobrazenia

{

setcolor(1);

setfillstyle(1,8);

line(2*3*mx/10,2*7*my/10,2*7*mx/10,2*7*my/10);

line(2*7*mx/10,2*7*my/10,2*7*mx/10,2*6*my/10);

line(2*3*mx/10,2*7*my/10,2*2*mx/10,2*5.5*my/10);

line(2*2*mx/10,2*5.5*my/10,2*3.5*mx/10,2*5.5*my/10);

line(2*3.5*mx/10,2*5.5*my/10,2*3.8*mx/10,2*6*my/10);

line(2*3.8*mx/10,2*6*my/10,2*7*mx/10,2*6*my/10);

floodfill(2*3*mx/10,2*7*my/10-5,1);

setfillstyle(1,7);

line(2*3.2*mx/10,2*5.5*my/10,2*3.2*mx/10,2*5*my/10);

line(2*3.2*mx/10,2*5*my/10,2*5.5*mx/10,2*5*my/10);

line(2*5.5*mx/10,2*5*my/10,2*5.5*mx/10,2*5.5*my/10);

line(2*5.5*mx/10,2*5.5*my/10,2*5.8*mx/10,2*6*my/10);

floodfill(2*3.2*mx/10+5,2*5*my/10+5,1);

line(2*3.7*mx/10,2*5*my/10, 2*3.7*mx/10,2*4.7*my/10);

line(2*3.7*mx/10,2*4.7*my/10,2*4.7*mx/10,2*4.7*my/10);

line(2*4*mx/10,2*4.7*my/10,2*4*mx/10,2*2.6*my/10);

line(2*4*mx/10,2*2.6*my/10,2*4*mx/10,2*2.2*my/10);

line(2*4*mx/10,2*2.2*my/10,2*4.3*mx/10,2*2.4*my/10);

line(2*4*mx/10,2*2.5*my/10,2*4.3*mx/10,2*2.4*my/10);

line(2*4*mx/10,2*2.6*my/10,2*7*mx/10,2*6*my/10);

line(2*4.7*mx/10,2*5*my/10,2*4.7*mx/10,2*4*my/10);

line(2*4.7*mx/10,2*4*my/10,2*5*mx/10,2*4*my/10);

line(2*5*mx/10,2*4*my/10,2*5*mx/10,2*5*my/10);

line(2*4*mx/10,2*2.6*my/10,2*2*mx/10,2*5.5*my/10);

line(2*3.8*mx/10,2*5.5*my/10,2*5.1*mx/10,2*5.5*my/10);

line(2*4.7*mx/10,2*4.2*my/10,2*4.97*mx/10,2*4.2*my/10);

setfillstyle(1,13); //koloru

floodfill(2*3.7*mx/10+3,2*4.7*my/10+3,1);

setfillstyle(1,14);

floodfill(2*4.7*mx/10+2,2*4*my/10+2,1);

setfillstyle(1,14);

fillellipse(2*3*mx/10,2*6.2*my/10,7,7);

fillellipse(2*3.5*mx/10,2*6.2*my/10,7,7);

setfillstyle(1,4);

floodfill(2*4*mx/10+2,2*2.3*my/10,1);

}

  1. Додаток в

Лістинг програми

#include<stdio.h>

#include<string.h>

#include<conio.h>

void vuvid(int i) //pidprograma

{

int n,j;

struct tzahalne

{

char name[15];

char vud[15];

char rid[15];

char roduna[15];

char clas[15];

} zahalne[15];

struct tanimal

{

struct tzahalne zahalne[15];

char misce[40];

int chuslennist;

} animal[15];

FILE *fp2;

fp2=fopen("C:\\text4.txt","r");

n=15;

j=i;

for(j=0;j<n;j++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[j].zahalne[j].name,&animal[j].zahalne[j].vud,&animal[j].zahalne[j].rid,&animal[j].zahalne[j].roduna,&animal[j].zahalne[j].clas,&animal[j].misce,&animal[j].chuslennist); //schutyvannia

}

printf("\n");

printf("Name:");

printf("%s",animal[i].zahalne[i].name);

printf("\n");

printf("Vud:");

printf("%s",animal[i].zahalne[i].vud);

printf("\n");

printf("Rid:");

printf("%s",animal[i].zahalne[i].rid);

printf("\n");

printf("Roduna:");

printf("%s",animal[i].zahalne[i].roduna);

printf("\n");

printf("Class:");

printf("%s",animal[i].zahalne[i].clas);

printf("\n");

printf("Misce proguvannya:");

printf("%s",animal[i].misce);

printf("\n");

printf("Chuselnist:");

printf("%i",animal[i].chuslennist);

printf(" par osib");

printf("\n");

}

void main()

{

struct tzahalne

{

char name[15];

char vud[15];

char rid[15];

char roduna[15];

char clas[15];

} zahalne[15];

struct tanimal

{

struct tzahalne zahalne[15];

char misce[40];

int chuslennist;

} animal[15];

int n,i;

int a;

char st[20];

char sy[20];

char se[20];

char so[20];

int sp;

clrscr();

FILE *fp1,*fp2;

fp1=fopen("C:\\text3.txt","r");

fp2=fopen("C:\\text4.txt","r");

n=15;

printf("The list of animals:");

printf("\n");

for(i=0;i<n;i++)

fscanf(fp1,"%s",&animal[i].zahalne[i].name);

for(i=0;i<73;i++)

printf("-");

printf("\n");

for(i=0;i<n;i++)

{

printf("%s\t|\t", animal[i].zahalne[i].name);

}

for(i=0;i<73;i++)

printf("-");

printf("\n");

do

{

printf("\n");

printf("Oberit' sposib poshuku:\n 1. Za im'yam \n 2. Za vudom \n 3. Za rodom \n 4. Za cllasom \n 5. Za chuselnisty \n 6. Vuhid \n ");

scanf("%i", &a);

switch(a) //menu

{

case 1:

printf("Enter the name of the animal:");

scanf("%s",&st);

for(i=0;i<n;i++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[i].zahalne[i].name,&animal[i].zahalne[i].vud,&animal[i].zahalne[i].rid,&animal[i].zahalne[i].roduna,&animal[i].zahalne[i].clas,&animal[i].misce,&animal[i].chuslennist);

}

for(i=0;i<n;i++)

{

if(strcmp(st,animal[i].zahalne[i].name)==0)

{

vuvid(i);

}

}

break;

case 2:

printf("Enter vud of the animal:");

scanf("%s",&sy);

for(i=0;i<n;i++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[i].zahalne[i].name,&animal[i].zahalne[i].vud,&animal[i].zahalne[i].rid,&animal[i].zahalne[i].roduna,&animal[i].zahalne[i].clas,&animal[i].misce,&animal[i].chuslennist);

}

for(i=0;i<n;i++)

{

if(strcmp(sy,animal[i].zahalne[i].vud)==0)

{

vuvid(i);

}

}

break;

case 3:

printf("Enter rid of the animal:");

scanf("%s",&se);

for(i=0;i<n;i++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[i].zahalne[i].name,&animal[i].zahalne[i].vud,&animal[i].zahalne[i].rid,&animal[i].zahalne[i].roduna,&animal[i].zahalne[i].clas,&animal[i].misce,&animal[i].chuslennist);

}

for(i=0;i<n;i++)

{

if(strcmp(se,animal[i].zahalne[i].rid)==0)

{

vuvid(i);

}

}

break;

case 4:

printf("Enter class of the animal:");

scanf("%s",&so);

for(i=0;i<n;i++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[i].zahalne[i].name,&animal[i].zahalne[i].vud,&animal[i].zahalne[i].rid,&animal[i].zahalne[i].roduna,&animal[i].zahalne[i].clas,&animal[i].misce,&animal[i].chuslennist);

}

for(i=0;i<n;i++)

{

if(strcmp(so,animal[i].zahalne[i].clas)==0)

{

vuvid(i);

}

}

break;

case 5:

printf("Enter chuselnist of the animal:");

scanf("%i",&sp);

for(i=0;i<n;i++)

{

fscanf(fp2,"%s %s %s %s %s %s %i",&animal[i].zahalne[i].name,&animal[i].zahalne[i].vud,&animal[i].zahalne[i].rid,&animal[i].zahalne[i].roduna,&animal[i].zahalne[i].clas,&animal[i].misce,&animal[i].chuslennist);

}

for(i=0;i<n;i++)

{

if(sp==animal[i].chuslennist)

{

vuvid(i);

}

}

break;

default:

printf("Ne isnye");

}

}

while(a!=6);

getch();

}

4