HRyk
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору DKICE, вот твоя задачка в общем виде. Прада я ее не отлаживал, если некоторые грани будут рисоваться неровно, подгонишь значения: #include "stdafx.h" #include <conio.h> #include <math.h> #include <string.h> #include <stdlib.h> void Vert(int a,char s[7]) {int n=0,p,q; char m[10]; //otctup for (int i=0; i<30; i++) printf(" "); //1-я горизонтальная for (int i=30; i<45; i++) printf("-"); //обе вертикальные printf("\n"); for (int i=2; i<15; i++) { for (int j=0; j<30; j++) printf(" "); printf("|"); if (n==0) {printf("%d %s",a,s); n=n+1; p=strlen(s); itoa(a,m,10); q=p+strlen(m); } if (i==14) {for (int j=30; j<36-(q+1); j++) printf(" "); printf("%d %s",a,s); } else if (n==1) {for (int j=30; j<42-q; j++) printf(" "); n=n+1; } else for (int j=30; j<43-q; j++) printf(" "); p=0;q=0; printf("|"); printf("\n"); } //2-я горизонтальная for (int i=0; i<30; i++) printf(" "); for (int i=30; i<45; i++) printf("-"); } int _tmain(int argc, _TCHAR* argv[]) {int karta; char mast[7]; //ввод данных printf("Vvedite kartu: "); scanf("%d", & karta); printf("Vvedite mast: "); scanf("%s", & mast); //вызов функции Vert(karta,mast); getch(); return 0; } |