Advertisement
Guest User

Untitled

a guest
May 24th, 2015
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3.  
  4. int getM(int M[],int x);
  5. void printM(int M[],int x);
  6. int checkM(int M[],int x);
  7. int palM(int M[],int x);
  8. int readF(int M[],int x);
  9. void writeF(int M[],int x);
  10. void plsfillM();
  11.  
  12. int main()
  13. {
  14. int choice;
  15. int x,n=0;
  16. int A[100];
  17.  
  18. do
  19. {
  20. printf("Menu\n\n");
  21. printf("1. Populnete masiva\n");
  22. printf("2. Proverka za nalichie po stoinost\n");
  23. printf("3. Otpechatvane na masiva\n");
  24. printf("4. Proverka za palindrom\n");
  25. printf("5. Zarejdane na masiv ot fail\n");
  26. printf("6. Zapis na masiv na fail\n");
  27. printf("7. Exit\n\n");
  28. printf("Izberete opciq ot menuto: ");
  29. scanf("%d",&choice);
  30.  
  31. switch (choice)
  32. {
  33. case 1:
  34. {
  35. n=getM(A,n);
  36. break;
  37. }
  38. case 2:
  39. {
  40. x=checkM(A,n);
  41. if (x==-1)
  42. {
  43. plsfillM();
  44. }
  45. else if (x==-2)
  46. {
  47. printf("Chisloto go nqma v masiva \n\n");
  48. }
  49. else
  50. {
  51. printf("Chisloto go ima v masiva i na poziciq: %d \n\n",x);
  52. }
  53. break;
  54. }
  55. case 3:
  56. {
  57. printM(A,n);
  58. break;
  59. }
  60. case 4:
  61. {
  62. x=palM(A,n);
  63. if (x==-1)
  64. {
  65. plsfillM();
  66. }
  67. else if (x==-2)
  68. {
  69. printf("Nqma palindrom v masiva \n\n");
  70. }
  71. else
  72. {
  73. printf("Purviq palindrom v masiva e: %d \n\n",x);
  74. }
  75. break;
  76. }
  77. case 5:
  78. {
  79. n=readF(A,n);
  80. break;
  81. }
  82. case 6:
  83. {
  84. writeF(A,n);
  85. break;
  86. }
  87. case 7:
  88. {
  89. system("cls");
  90. printf("Goodbye\n");
  91. break;
  92. }
  93. default:
  94. {
  95. system("cls");
  96. printf("Wrong Choice. Enter again\n");
  97. break;
  98. }
  99. }
  100. }
  101. while (choice != 7);
  102. getch();
  103. }
  104.  
  105.  
  106. int getM(int M[],int x)
  107. {
  108. int i;
  109. system("cls");
  110. printf("Izberete s kolko chisla shte bude masiva(do 100)\n");
  111. scanf("%d",&x);
  112. if(x>0 && x<=100)
  113. {
  114. printf("Populnete masiva\n");
  115. for(i=0;i<x;i++)
  116. {
  117. scanf("%d",&M[i]);
  118. }
  119. printf("\n\n");
  120. return x;
  121. }
  122. else
  123. {
  124. system("cls");
  125. printf("nevaliden broi chisla\n\n");
  126. return 0;
  127. }
  128. }
  129.  
  130.  
  131. void printM(int M[],int x)
  132. {
  133. int i;
  134. if (x==0)
  135. {
  136. plsfillM();
  137. }
  138. else
  139. {
  140. system("cls");
  141. printf("masiva se sustoi ot slednite elementi\n");
  142. for(i=0;i<x;i++)
  143. {
  144. printf("%d\n",M[i]);
  145. }
  146. printf("\n\n");
  147. }
  148. }
  149.  
  150.  
  151.  
  152. int checkM(int M[],int x)
  153. {
  154. int a,i;
  155. if (x==0)
  156. {
  157. return -1;
  158. }
  159. else
  160. {
  161. system("cls");
  162. printf("Proverka dali chisloto go ima v masiva: \n");
  163. scanf("%d",&a);
  164. i=0;
  165. while (i<x && a!=M[i])
  166. {
  167. i++;
  168. }
  169. if (i<x)
  170. {
  171. return i;
  172. }
  173. else
  174. {
  175. return -2;
  176. }
  177. }
  178. }
  179.  
  180.  
  181.  
  182. int palM(int M[],int x)
  183. {
  184. int i,a;
  185. if (x==0)
  186. {
  187. return -1;
  188. }
  189. else
  190. {
  191. system("cls");
  192. for(i=0;i<x;i++)
  193. {
  194. a = M[i];
  195. int reversed=0;
  196. while (a>0)
  197. {
  198. reversed=reversed*10+a%10;
  199. a/=10;
  200. }
  201. if (M[i] == reversed)
  202. {
  203. return M[i];
  204. }
  205. }
  206. return -2;
  207. }
  208. }
  209.  
  210.  
  211. int readF(int M[],int x)
  212. {
  213. FILE *f;
  214. int a,i;
  215. char file[200];
  216. system("cls");
  217. printf("kude se namira vashiqt file: ");
  218. scanf("%s", file);
  219. i=0;
  220. f=fopen(file, "r");
  221. if(!f)
  222. {
  223. printf("File ne sushtestvuva\n");
  224. return 0;
  225. }
  226. else
  227. {
  228. while(fscanf(f, "%d", &a) != EOF)
  229. {
  230. if(i<100)
  231. {
  232. M[i]=a;
  233. i++;
  234. }
  235. }
  236. x=i;
  237. fclose(f);
  238. return x;
  239. }
  240. }
  241.  
  242.  
  243. void writeF(int M[],int x)
  244. {
  245. FILE *f;
  246. int i;
  247. if (x==0)
  248. {
  249. plsfillM();
  250. }
  251. else
  252. {
  253. system("cls");
  254. char file[200];
  255. printf("kude se namira vashiqt file: ");
  256. scanf("%s", file);
  257. f=fopen(file,"w");
  258. if(!f)
  259. {
  260. printf("File ne sushtestvuva\n");
  261. }
  262. else
  263. {
  264. for(i=0;i<x;i++)
  265. {
  266. fprintf(f,"%d\n",M[i]);
  267. }
  268. fclose(f);
  269. }
  270. printf("\n\n");
  271. }
  272. }
  273.  
  274.  
  275. void plsfillM()
  276. {
  277. system("cls");
  278. printf("Molq purvo populnete masiva\n\n");
  279. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement