#include #define MAXDB 20 /* A programot keszitette: ZOMBORI BALAZS - 2011.07.27. - */ int main(){ typedef struct{ int sorszam; /*Hanyadikkent adtuk meg*/ int a; /*Oldalhosszusag*/ int b; /*Oldalhosszusag*/ int T; /* Teglalap terulete */ }teglalaptipus; teglalaptipus tlapok[MAXDB]; /*Letrehozunk egy TEGLALAPTIPUS tipusu tombot, ami pontosan MAXDB meretu.*/ int i; /*ciklusvaltozo - megmondja, hogy hany db szamunk van*/ /*Ezeket csak a rendezes soran vannak hasznalva, a jobb lathatosag miatt*/ int menet; teglalaptipus csere; int holjar; int honnanrak; printf("A program teglalok oldalhosszusagat keri be 0;0 vegjelig (legfeljebb 20 db-ot), majd a program megjeleniti a teglalapok sorszamat, ket oldalhosszusagat, illetve a teglalapok teruletet, terulet szerint csokkeno modon rendezve."); /*Adatbekeres*/ i=0; do{ tlapok[i].sorszam=i+1; printf("Add meg a ket oldalhosszusagot pontosvesszovel(';') elvalaszva.[Ha nincs tobb oldalhossz, akkor 0;0 hosszokat adj]"); scanf("%d;%d",&tlapok[i].a,&tlapok[i].b); tlapok[i].T=tlapok[i].a*tlapok[i].b; i++; }while((tlapok[i-1].a!=0)||(tlapok[i-1].b!=0)); /*Az i-1 tartolja a 0;0 -at, az i-2 tarolja az utolso ertelmes adatot*/ /*BESZURO RENDEZES*/ for(menet=1;menet<=i-2;menet++){ csere=tlapok[menet]; holjar=0; while(tlapok[menet].T=holjar;honnanrak--){ tlapok[honnanrak+1]=tlapok[honnanrak]; } tlapok[holjar]=csere; } /*Adatkiiras*/ i=0; while((tlapok[i].a!=0)||(tlapok[i].b!=0)){ printf("%d\t\t%d * %d \t\t=%d\n",tlapok[i].sorszam,tlapok[i].a,tlapok[i].b,tlapok[i].T); i++; } /*Windows miatt!*/ printf("\n\nA programnak vege. Uss egy ENTER-t!"); while(getch()!=13); return 0; }