rohit35

code

Mar 31st, 2018
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.87 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<windows.h>
  3. #include<pthread.h>
  4. #include<conio.h>
  5. #include<string.h>
  6. #include<time.h>
  7. #define space "\t \t \t"
  8. typedef struct File2
  9. {
  10. void *portfolio;
  11. void *watchlist;
  12. void *account;
  13. void *transaction_histroy;
  14. } user_t;
  15. void userpage(char *users);
  16. void userpage(char *users)
  17. {
  18. int max=5,select=1,loop=1;
  19. user_sec:
  20. while(loop)
  21. {
  22. if(select >6||select ==0)
  23. {
  24. select =1;
  25. }
  26. system("cls");
  27. system("color 04");
  28. printf(" Stock Guide\n\n");
  29. if(select ==1)
  30. {
  31. printf("-> portfolio\n");
  32. }
  33. else
  34. {
  35. printf(" Portfolio\n");
  36. }
  37. if(select == 2)
  38. {
  39. printf("-> watchlist\n");
  40. }
  41. else
  42. {
  43. printf(" watchlist\n");
  44. }
  45. if(select==3)
  46. {
  47. printf("-> stock list\n");
  48. }
  49. else
  50. {
  51. printf(" stock list\n");
  52. }
  53. if(select==4)
  54. {
  55. printf("-> account\n");
  56. }
  57. else
  58. {
  59. printf(" account\n");
  60. }
  61. if(select ==5)
  62. {
  63. printf("-> Transaction Histroy\n");
  64. }
  65. else
  66. {
  67. printf(" Transaction histroy\n");
  68. }
  69. if(select==6)
  70. {
  71. printf("-> EXIT\n");
  72. }
  73. else
  74. {
  75. printf(" EXIT\n");
  76. }
  77. printf("Use the Arrow key's to move and select\n");
  78. switch(_getch())
  79. {
  80. case 'H':
  81. select--;
  82. // goto user_sec;
  83. break;
  84. case 'P':
  85. select++;
  86. // goto user_sec;
  87. break;
  88. case 13:
  89. if(select!=6)
  90. {
  91. user_choice(select,users);;
  92. }
  93. else
  94. {
  95. loop=0;
  96. }
  97. break;
  98. }
  99.  
  100. }
  101. }
  102. void user_choice(int choice,char *Name)
  103. {
  104. if(choice==1)
  105. portfolio(Name);
  106. else if(choice==2)
  107. watch_list(Name);
  108. else if(choice==3)
  109. stock_list(Name);
  110. else if(choice==4)
  111. my_Account(Name);
  112. else if(choice==5)
  113. trans_sec(Name);
  114. }
  115. void trans_sec(char* Name)
  116. {
  117.  
  118. }
  119. void watch_list(char* Name)
  120. {
  121.  
  122. }
  123. void stock_list(char *Name)
  124. {
  125. system("cls");
  126. FILE*fp,*fp1;
  127. char x;
  128. if((fp1=fopen("COMPANY_DATA.txt","r"))==NULL)
  129. {
  130. fp1=fopen("COMPANY_DATA.txt","w");
  131. char data[]="|venkys#20#500000$|satin#10#2500000$|ultratech#15#2000000$|polaris#17#250000$|Aditya vision#20#700000$";
  132. int i=0;
  133. while(data[i]!='\0')
  134. {
  135. x=data[i];
  136. fputc(x,fp1);
  137. i++;
  138. }
  139. fclose(fp1);
  140. }
  141. fp=fopen("COMPANY_DATA.txt","r+");
  142. int i=0;
  143. char all[10000];
  144. while((x = fgetc(fp)) != EOF)
  145. {
  146. all[i++] = x;
  147. }
  148. all[i] = '\0';
  149. printf(" Stock list \n");
  150. printf("Compnay_Name || ||starting price|| ||Volume|| ||MarketCapital\n");
  151. for(i=0; i<strlen(all); i++)
  152. {
  153. if(all[i]=='|')
  154. i=word(all,i);
  155. else if(all[i]=='#')
  156. i=numbers(all,i);
  157. else
  158. printf("\n");
  159. }
  160. _getch();
  161. }
  162. int word(char *Data,int pos)
  163. {
  164. int idx=0;
  165. if(Data[pos++]=='|')
  166. {
  167. for(pos; Data[pos]!='#'; pos++,idx++)
  168. printf("%c",Data[pos]);
  169. }
  170. printf(" ");
  171. return pos-1;
  172. }
  173. int numbers(char *Data,int pos)
  174. {
  175. char price[1000],share[1000];
  176. int idx=0;
  177. if(Data[pos++]=='#')
  178. {
  179. while(Data[pos]!='#')
  180. {
  181. price[idx++]=Data[pos];
  182. pos++;
  183. }
  184. pos++;
  185. price[idx]='\0';
  186. idx=0;
  187. while(Data[pos]!='$')
  188. {
  189. share[idx++]=Data[pos];
  190. pos++;
  191. }
  192. share[idx]='\0';
  193. }
  194. long long int market,price_value;
  195. price_value=char_to_int(price);
  196. long long int volume=char_to_int(share);
  197. market=(price_value*volume)*2;
  198. printf("%d ",price_value);
  199. printf("%d ",volume);
  200. printf("%d ",market);
  201. return pos-1;
  202. }
  203. int char_to_int(char*num)
  204. {
  205.  
  206. int length=strlen(num);
  207. int var=1;
  208. int i,c=0,temp;
  209. for(i=0; i<length; i++)
  210. {
  211. if(i==0 && num[i]==45 )
  212. {
  213. var=-1;
  214. }
  215. else
  216. {
  217. temp=(num[i]-48);
  218. c=c*10+temp;
  219. }
  220. }
  221. c=c*var;
  222. return c;
  223. }
  224. void len(char *source)
  225. {
  226. int idx;
  227. for(idx=0; source[idx]!='#'&& source[idx]!='$'; idx++)
  228. {
  229.  
  230. }
  231. return idx;
  232. }
  233. void my_Account(char *Name)
  234. {
  235. printf("My Account\n\n");
  236. printf("Name :%s\n",Name);
  237. printf("Starting Investment:50,000\n");
  238. // printf("Stock Value :%d",);
  239.  
  240. }
  241. void portfolio(char *Name)
  242. {
  243.  
  244. }
  245. int main()
  246. {
  247. system("color 04");
  248. printf("WELCOME\n");
  249. printf(" TO \n");
  250. printf(" HELIX \n");
  251. printf("Press any Key\n");
  252. _getch();
  253. Main_page();
  254. return 0;
  255. }
  256. int Main_page()
  257. {
  258. FILE *fp;
  259. char choice,x;
  260. char users[100];
  261. char username[100];
  262. char password[100];
  263. int i=0;
  264. main_sec:
  265. system("cls");
  266. while(1)
  267. {
  268. printf("Helix\n");
  269. printf("1)login\n");
  270. printf("2)signup\n");
  271. printf("3)exit");
  272. choice=_getch();
  273. if(choice== 49 || choice ==50 ||choice==51)
  274. break;
  275. else
  276. {
  277. printf("\nEnter valid choice\n");
  278. printf("press any key\n");
  279. _getch();
  280. system("cls");
  281. }
  282. }
  283. if(choice==49)
  284. {
  285. char x,*tempstr;
  286. char accountsDB[100];
  287. system("cls");
  288. printf("Login \n");
  289. printf("Username:");
  290. scanf("%s",username);
  291. printf("\n");
  292. i=0;
  293. while(username[i] != '\0')
  294. {
  295. users[i] = username[i];
  296. i++;
  297. }
  298. users[i] = '\0';
  299. i=0;
  300. printf("Password:");
  301. while ((x = _getch()) != '\r')
  302. {
  303. printf("*");
  304. password[i++] = x;
  305. }
  306. password[i] = '\0';
  307. i = 0;
  308. strcat(username, password);
  309. fp = fopen("PROJECT_DATA_FILE.txt","r");
  310. while((x = fgetc(fp)) != EOF)
  311. {
  312. accountsDB[i++] = x;
  313. }
  314. accountsDB[i] = '\0';
  315. fclose(fp);
  316. if(NULL == strstr(accountsDB, username))
  317. {
  318. printf("\n\n"space space"*Username or password is wrong");
  319. _getch();
  320. goto main_sec;
  321. }
  322. else
  323. {
  324. tempstr = strstr(accountsDB, username);
  325. }
  326. i=0;
  327. while(username[i]!='\0')
  328. {
  329. if(username[i]!=tempstr[i])
  330. break;
  331.  
  332. i++;
  333. }
  334. if(i==strlen(username))
  335. {
  336. userpage(users);
  337. goto main_sec;
  338. }
  339. else
  340. {
  341. printf("\n\n*Username or password is wrong");
  342. _getch();
  343. goto main_sec;
  344. }
  345. }
  346. if(choice ==50)
  347. {
  348. system("cls");
  349. printf("Signup\n");
  350. printf("Username:");
  351. scanf("%s",username);
  352. i=0;
  353. while((x = username[i]) != '\0')
  354. {
  355. if(x == '|' || x == '#' || x == '$')
  356. {
  357. printf("\n*Username must not contain special characters like |, #, $ etc.");
  358. _getch();
  359. goto main_sec;
  360. }
  361. i++;
  362. }
  363. char accountsDB[100];
  364. fp = fopen("PROJECT_DATA_FILE.txt","r");
  365. i = 0;
  366. while((x = fgetc(fp)) != EOF)
  367. {
  368. accountsDB[i++] = x;
  369. }
  370. fclose(fp);
  371. char temp_pass[100];
  372. if(NULL == strstr(accountsDB, username))
  373. {
  374. i=0;
  375. printf("Password:");
  376. while ((x = _getch()) != '\r')
  377. {
  378. printf("*");
  379. password[i++] = x;
  380. }
  381. password[i] = '\0';
  382. printf("\nRe-Enter password:");
  383. i = 0;
  384. while((x = _getch()) != '\r')
  385. {
  386. printf("*");
  387. temp_pass[i++] = x;
  388. }
  389. temp_pass[i]='\0';
  390. if(strcmp(temp_pass,password)==0)
  391. {
  392. i = 0;
  393. fp = fopen("PROJECT_DATA_FILE.txt","a");
  394. fputc('|',fp);
  395. while((x = username[i]) != '\0')
  396. {
  397. fputc(x,fp);
  398. i++;
  399. }
  400. i = 0;
  401. while((x = password[i]) != '\0')
  402. {
  403. fputc(x,fp);
  404. i++;
  405. }
  406. fputc('$', fp);
  407. fputc('1', fp);
  408. fputc('#', fp);
  409. fputc('1', fp);
  410. fclose(fp);
  411. printf("\n\nSign up successful");
  412. _getch();
  413. goto main_sec;
  414. }
  415. else
  416. {
  417. printf("\n\n*Passwords do not match, try again");
  418. _getch();
  419. goto main_sec;
  420. }
  421. }
  422. else
  423. {
  424. printf("\n*Username is already taken");
  425. _getch();
  426. goto main_sec;
  427. }
  428. }
  429. if(choice==51)
  430. {
  431. system("cls");
  432. printf("Exit\n\n");
  433. printf("Are You Sure Want to Exit\n");
  434. printf("Enter y/n\n");
  435. x=_getch();
  436. if(x=='n'||x=='N')
  437. goto main_sec;
  438. else
  439. {
  440. printf("Thank u for visiting\n");
  441. }
  442. }
  443. }
Add Comment
Please, Sign In to add comment