Code.GeekInterview.com
 
Code Samples C
 

Character Formation Using Lines


Code ResourceAuthor: shiva074  

Difficulty Level: Intermediate

Published: 24th Jan 2010   Read: 2423 times  

Filed in: C
Add Comment


 

 

Sponsored Links


 

 
Character Formation Using Lines with Various Sizes
This program will produce characters of UPPER CASE alphabets alone, using basic line. A big adventage is that u can change the font size of the character. This program comes under the category of GRAPHICS
 


Sample Code
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<graphics.h>
  4. int x1,y1,x2,y2,n;
  5. void enter()
  6. {
  7. if(x1>=605)
  8. {
  9. y1=y1+n+10;
  10. x1=10;
  11. }
  12. }
  13. void calla()
  14. {
  15. x1=x1+n+15;
  16. enter();
  17. line(x1,y1,x1-n,y1+2*n);
  18. line(x1,y1,x1+n,y1+2*n);
  19. line(x1-n/2,y1+n,x1+n/2,y1+n);
  20. }
  21. void callb()
  22. {
  23. x1=x1+n+10;
  24. enter();
  25. line(x1,y1,x1+n,y1);
  26. line(x1+n,y1,x1+n,y1+n/2);
  27. line(x1+n,y1+n/2,x1,y1+n);
  28. line(x1,y1,x1,y1+2*n);
  29. line(x1,y1+2*n,x1+n,y1+2*n);
  30. line(x1+n,y1+2*n,x1+n,y1+3*n/2);
  31. line(x1+n,y1+3*n/2,x1,y1+n);
  32. }
  33. void callc()
  34. {
  35. x1=x1+n+10;
  36. enter();
  37. line(x1,y1,x1+n,y1);
  38. line(x1,y1,x1,y1+2*n);
  39. line(x1,y1+2*n,x1+n,y1+2*n);
  40. }
  41. void calld()
  42. {
  43. x1=x1+n+10;
  44. enter();
  45. line(x1,y1,x1,y1+2*n);
  46. line(x1+n,y1+n/3,x1+n,y1+5*n/3);
  47. line(x1,y1,x1+n,y1+n/3);
  48. line(x1,y1+2*n,x1+n,y1+5*n/3);
  49. }
  50.  
  51. void calle()
  52. {
  53. x1=x1+n+10;
  54. enter();
  55. line(x1,y1,x1,y1+2*n);
  56. line(x1,y1,x1+n,y1);
  57. line(x1,y1+2*n,x1+n,y1+2*n);
  58. line(x1,y1+n,x1+n,y1+n);
  59. }
  60. void callf()
  61. {
  62. x1=x1+n+10;
  63. enter();
  64. line(x1,y1,x1,y1+2*n);
  65. line(x1,y1,x1+n,y1);
  66. line(x1,y1+n,x1+n,y1+n);
  67. }
  68. void callg()
  69. {
  70. x1=x1+n+10;
  71. enter();
  72. line(x1,y1,x1,y1+2*n);
  73. line(x1,y1,x1+n,y1);
  74. line(x1,y1+2*n,x1+n/2,y1+2*n);
  75. line(x1+n/2,y1+2*n,x1+n/2,y1+n);
  76. line(x1+n/2,y1+n,x1+n,y1+n);
  77. line(x1+n,y1+n,x1+n,y1+2*n);
  78. }
  79. void callh()
  80. {
  81. x1=x1+n+10;
  82. enter();
  83. line(x1,y1,x1,y1+2*n);
  84. line(x1+n,y1,x1+n,y1+2*n);
  85. line(x1,y1+n,x1+n,y1+n);
  86. }
  87. void calli()
  88. {
  89. x1=x1+n+10;
  90. enter();
  91. line(x1,y1,x1+n,y1);
  92. line(x1,y1+2*n,x1+n,y1+2*n);
  93. line(x1+n/2,y1,x1+n/2,y1+2*n);
  94. }
  95. void callj()
  96. {
  97. x1=x1+n+10;
  98. enter();
  99. line(x1,y1,x1+n,y1);
  100. line(x1+n/2,y1,x1+n/2,y1+2*n);
  101. line(x1,y1+2*n,x1+n/2,y1+2*n);
  102. line(x1,y1+n,x1,y1+2*n);
  103. }
  104. void callk()
  105. {
  106. x1=x1+n+10;
  107. enter();
  108. line(x1,y1,x1,y1+2*n);
  109. line(x1,y1+n,x1+n,y1);
  110. line(x1,y1+n,x1+n,y1+2*n);
  111. }
  112. void calll()
  113. {
  114. x1=x1+n+10;
  115. enter();
  116. line(x1,y1,x1,y1+2*n);
  117. line(x1,y1+2*n,x1+n,y1+2*n);
  118. }
  119. void callm()
  120. {
  121. x1=x1+n+10;
  122. enter();
  123. line(x1,y1,x1,y1+2*n);
  124. line(x1+n,y1,x1+n,y1+2*n);
  125. line(x1,y1,x1+n/2,y1+n);
  126. line(x1+n/2,y1+n,x1+n,y1);
  127. }
  128. void calln()
  129. {
  130. x1=x1+n+10;
  131. enter();
  132. line(x1,y1,x1,y1+2*n);
  133. line(x1+n,y1,x1+n,y1+2*n);
  134. line(x1,y1,x1+n,y1+2*n);
  135. }
  136. void callo()
  137. {
  138. x1=x1+n+10;
  139. enter();
  140. line(x1,y1,x1,y1+2*n);
  141. line(x1+n,y1,x1+n,y1+2*n);
  142. line(x1,y1,x1+n,y1);
  143. line(x1,y1+2*n,x1+n,y1+2*n);
  144. }
  145. void callp()
  146. {
  147. x1=x1+n+10;
  148. enter();
  149. line(x1,y1,x1,y1+2*n);
  150. line(x1,y1,x1+n,y1);
  151. line(x1,y1+n,x1+n,y1+n);
  152. line(x1+n,y1,x1+n,y1+n);
  153. }
  154. void callq()
  155. {
  156. x1=x1+n+10;
  157. enter();
  158. line(x1,y1,x1,y1+2*n);
  159. line(x1+n,y1,x1+n,y1+2*n);
  160. line(x1,y1,x1+n,y1);
  161. line(x1,y1+2*n,x1+n,y1+2*n);
  162. line(x1+n/2,y1+n,x1+n+5,y1+2*n+5);
  163. }
  164.  
  165. void callr()
  166. {
  167. x1=x1+n+10;
  168. enter();
  169. line(x1,y1,x1,y1+2*n);
  170. line(x1,y1,x1+n,y1);
  171. line(x1,y1+n,x1+n,y1+n);
  172. line(x1+n,y1,x1+n,y1+n);
  173. line(x1,y1+n,x1+n,y1+2*n);
  174. }
  175. void calls()
  176. {
  177. x1=x1+n+10;
  178. enter();
  179. line(x1,y1,x1+n,y1);
  180. line(x1,y1,x1,y1+n);
  181. line(x1,y1+n,x1+n,y1+n);
  182. line(x1+n,y1+n,x1+n,y1+2*n);
  183. line(x1,y1+2*n,x1+n,y1+2*n);
  184. }
  185. void callt()
  186. {
  187. x1=x1+n+10;
  188. enter();
  189. line(x1,y1,x1+n,y1);
  190. line(x1+n/2,y1,x1+n/2,y1+2*n);
  191. }
  192. void callu()
  193. {
  194. x1=x1+n+10;
  195. enter();
  196. line(x1,y1,x1,y1+2*n);
  197. line(x1+n,y1,x1+n,y1+2*n);
  198. line(x1,y1+2*n,x1+n,y1+2*n);
  199. }
  200. void callv()
  201. {
  202. x1=x1+n+10;
  203. enter();
  204. line(x1,y1,x1+n/2,y1+2*n);
  205. line(x1+n,y1,x1+n/2,y1+2*n);
  206. }
  207. void callw()
  208. {
  209. x1=x1+n+10;
  210. enter();
  211. line(x1,y1,x1+n/4,y1+2*n);
  212. line(x1+n/2,y1,x1+n/4,y1+2*n);
  213. line(x1+n/2,y1,x1+3*n/4,y1+2*n);
  214. line(x1+3*n/4,y1+2*n,x1+n,y1);
  215. }
  216. void callx()
  217. {
  218. x1=x1+n+10;
  219. enter();
  220. line(x1,y1,x1+n,y1+2*n);
  221. line(x1+n,y1,x1,y1+2*n);
  222. }
  223. void cally()
  224. {
  225. x1=x1+n+10;
  226. enter();
  227. line(x1,y1,x1+n/2,y1+n);
  228. line(x1+n,y1,x1,y1+2*n);
  229.  
  230. }
  231. void callz()
  232. {
  233. x1=x1+n+10;
  234. enter();
  235. line(x1,y1,x1+n,y1);
  236. line(x1,y1+2*n,x1+n,y1+2*n);
  237. line(x1+n,y1,x1,y1+2*n);
  238.  
  239. }
  240.  
  241. void main()
  242. {
  243. int gd=0,gm,i;
  244. char c;
  245. clrscr();
  246. printf("nEnter the size u wantn");
  247. scanf("%d",&n);
  248. initgraph(&gd,&gm,"E:BGI");
  249. setcolor(i);
  250. x1=10;
  251. y1=10;
  252. while((int)c)
  253. {
  254. c=getch();
  255. switch(c)
  256. {
  257. case '0':
  258.         exit(0);
  259.         break;
  260. case 'a':
  261.         calla();
  262.         break;
  263. case 'b':
  264.         callb();
  265.         break;
  266. case 'c':
  267.         callc();
  268.         break;
  269. case 'd':
  270.         calld();
  271.         break;
  272. case 'e':
  273.         calle();
  274.         break;
  275. case 'f':
  276.         callf();
  277.         break;
  278. case 'g':
  279.         callg();
  280.         break;
  281. case 'h':
  282.         callh();
  283.         break;
  284. case 'i':
  285.         calli();
  286.         break;
  287. case 'j':
  288.         callj();
  289.         break;
  290. case 'k':
  291.         callk();
  292.         break;
  293. case 'l':
  294.         calll();
  295.         break;
  296. case 'm':
  297.         callm();
  298.         break;
  299. case 'n':
  300.         calln();
  301.         break;
  302. case 'o':
  303.         callo();
  304.         break;
  305. case 'p':
  306.         callp();
  307.         break;
  308. case 'q':
  309.         callq();
  310.         break;
  311. case 'r':
  312.         callr();
  313.         break;
  314.  
  315. case 's':
  316.         calls();
  317.         break;
  318. case 't':
  319.         callt();
  320.         break;
  321. case 'u':
  322.         callu();
  323.         break;
  324. case 'v':
  325.         callv();
  326.         break;
  327. case 'w':
  328.         callw();
  329.         break;
  330. case 'x':
  331.         callx();
  332.         break;
  333. case 'y':
  334.         cally();
  335.         break;
  336. case 'z':
  337.         callz();
  338.         break;
  339.  
  340. }
  341. }
  342. getch();
  343. closegraph();
  344. }
  345.  
  346.  
Copyright GeekInterview.com


Next Article: DLL through SLL


 

Latest Code Samples

 

Popular Code Samples

 

Related Code Samples

 

Post Your Comment:

Members Please Login
Your Name:*
e-mail ID:(required for notification)*
Image Verification: 
 
 Subscribe    



Popular Coders

# Coder NameHits
1. kaivalya198933895
2. mano.mithun21571
3. deepu0817849
4. meefriend4ever8112
5. chandrikakr8081
6. sadasivathavamani7318
7. shashivaishnav7139
8. venkatakrishnansvpr7043
9. Jimmy Zorald6685
10. sripri5701

Active Coders

Refined Tags