Advertisement
Guest User

Untitled

a guest
Jun 28th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.18 KB | None | 0 0
  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7. MAth,
  8. Dialogs, StdCtrls;
  9.  
  10. type
  11. TForm1 = class(TForm)
  12. Edit1: TEdit;
  13. Button1: TButton;
  14. Button2: TButton;
  15. Button3: TButton;
  16. Button4: TButton;
  17. Button5: TButton;
  18. Button6: TButton;
  19. Button7: TButton;
  20. Button8: TButton;
  21. Button9: TButton;
  22. Button10: TButton;
  23. Button11: TButton;
  24. Button12: TButton;
  25. Button13: TButton;
  26. Button14: TButton;
  27. Button15: TButton;
  28. Button16: TButton;
  29. Button17: TButton;
  30. Button18: TButton;
  31. Button19: TButton;
  32. Button20: TButton;
  33. Button21: TButton;
  34. Button22: TButton;
  35. Button23: TButton;
  36. Button24: TButton;
  37. Button25: TButton;
  38. Button26: TButton;
  39. Button27: TButton;
  40. Button28: TButton;
  41.  
  42. procedure Button3Click(Sender: TObject);
  43. procedure Button9Click(Sender: TObject);
  44. procedure Button1Click(Sender: TObject);
  45. procedure Button2Click(Sender: TObject);
  46. procedure Button4Click(Sender: TObject);
  47. procedure Button5Click(Sender: TObject);
  48. procedure Button6Click(Sender: TObject);
  49. procedure Button7Click(Sender: TObject);
  50. procedure Button8Click(Sender: TObject);
  51. procedure Button10Click(Sender: TObject);
  52. procedure Button11Click(Sender: TObject);
  53. procedure Button12Click(Sender: TObject);
  54. procedure Button13Click(Sender: TObject);
  55. procedure Button14Click(Sender: TObject);
  56. procedure Button15Click(Sender: TObject);
  57. procedure Button16Click(Sender: TObject);
  58. procedure Button17Click(Sender: TObject);
  59. procedure Button18Click(Sender: TObject);
  60. procedure Button19Click(Sender: TObject);
  61. procedure Button20Click(Sender: TObject);
  62. procedure Button21Click(Sender: TObject);
  63. procedure Button22Click(Sender: TObject);
  64. procedure Button23Click(Sender: TObject);
  65. procedure Button24Click(Sender: TObject);
  66. procedure Button26Click(Sender: TObject);
  67. procedure Button25Click(Sender: TObject);
  68. procedure Button27Click(Sender: TObject);
  69. procedure Button28Click(Sender: TObject);
  70. procedure Button29Click(Sender: TObject);
  71. private
  72. { Private declarations }
  73. public
  74. { Public declarations }
  75. end;
  76.  
  77. var
  78. Form1: TForm1;
  79. sum, y: real;
  80. c1: char;
  81.  
  82. implementation
  83.  
  84. {$R *.dfm}
  85.  
  86. procedure TForm1.Button10Click(Sender: TObject);
  87. begin
  88. Edit1.text := Edit1.text + '-';
  89. end;
  90.  
  91. procedure TForm1.Button11Click(Sender: TObject);
  92. begin
  93. Edit1.text := Edit1.text + '+';
  94. end;
  95.  
  96. procedure TForm1.Button1Click(Sender: TObject);
  97. begin
  98. Edit1.text := Edit1.text + '1';
  99. end;
  100.  
  101. procedure TForm1.Button20Click(Sender: TObject);
  102. begin
  103. Edit1.text := Edit1.text + 'ctg';
  104. end;
  105.  
  106. procedure TForm1.Button21Click(Sender: TObject);
  107. begin
  108. Edit1.text := Edit1.text + 'arcsin';
  109. end;
  110.  
  111. procedure TForm1.Button22Click(Sender: TObject);
  112. begin
  113. Edit1.text := Edit1.text + 'arccos';
  114. end;
  115.  
  116. procedure TForm1.Button23Click(Sender: TObject);
  117. begin
  118. Edit1.text := Edit1.text + 'arctan';
  119. end;
  120.  
  121. procedure TForm1.Button24Click(Sender: TObject);
  122. begin
  123. Edit1.text := Edit1.text + 'arcctg';
  124. end;
  125.  
  126. procedure TForm1.Button25Click(Sender: TObject);
  127. begin
  128. Edit1.text := Edit1.text + 'sqrt';
  129. end;
  130.  
  131. procedure TForm1.Button26Click(Sender: TObject);
  132. begin
  133. Edit1.text := Edit1.text + 'sqr';
  134. end;
  135.  
  136. procedure TForm1.Button27Click(Sender: TObject);
  137. begin
  138. Edit1.text := Edit1.text + 'exp';
  139. end;
  140.  
  141. procedure TForm1.Button28Click(Sender: TObject);
  142. begin
  143. Edit1.text := Edit1.text + 'ln';
  144. end;
  145.  
  146. procedure TForm1.Button29Click(Sender: TObject);
  147. begin
  148. Edit1.text := Edit1.text + 'abs';
  149. end;
  150.  
  151. procedure TForm1.Button2Click(Sender: TObject);
  152. begin
  153. Edit1.text := Edit1.text + '2';
  154. end;
  155.  
  156. procedure TForm1.Button3Click(Sender: TObject);
  157. begin
  158. Edit1.text := Edit1.text + '3';
  159. end;
  160.  
  161. procedure TForm1.Button4Click(Sender: TObject);
  162. begin
  163. Edit1.text := Edit1.text + '4';
  164. end;
  165.  
  166. procedure TForm1.Button5Click(Sender: TObject);
  167. begin
  168. Edit1.text := Edit1.text + '5';
  169. end;
  170.  
  171. procedure TForm1.Button6Click(Sender: TObject);
  172. begin
  173. Edit1.text := Edit1.text + '6';
  174. end;
  175.  
  176. procedure TForm1.Button7Click(Sender: TObject);
  177. begin
  178. Edit1.text := Edit1.text + '7';
  179. end;
  180.  
  181. procedure TForm1.Button8Click(Sender: TObject);
  182. begin
  183. Edit1.text := Edit1.text + '8';
  184. end;
  185.  
  186. procedure TForm1.Button9Click(Sender: TObject);
  187. begin
  188. Edit1.text := Edit1.text + '9';
  189. end;
  190.  
  191. procedure TForm1.Button12Click(Sender: TObject);
  192. var
  193. s, s1, sf: string;
  194. c: char;
  195. x: real;
  196. i, k: integer;
  197. begin
  198. s := Edit1.text;
  199. k := 0;
  200. for i := 1 to Length(s) do
  201. begin
  202. c := s[i];
  203. case c of
  204. '0' .. '9':
  205. s1 := s1 + c;
  206. 'a' .. 'z':
  207. sf := sf + c;
  208.  
  209. '+':
  210. begin
  211. y := strtofloat(s1);
  212. if k > 0 then
  213. begin
  214. case c1 of
  215. '1':
  216. begin
  217. sum := sum + y;
  218. end;
  219. '2':
  220. begin
  221. sum := sum - y;
  222. end;
  223. '3':
  224. begin
  225. sum := sum * y;
  226. end;
  227. '4':
  228. begin
  229. sum := sum / y;
  230. end;
  231. end;
  232. end
  233. else
  234. begin
  235. sum := y;
  236. k := 1;
  237. end;
  238. s1 := ' ';
  239. k := 1;
  240. c1 := '1';
  241. end;
  242. '-':
  243. begin
  244. y := strtofloat(s1);
  245. if k > 0 then
  246. begin
  247. case c1 of
  248. '1':
  249. begin
  250. sum := sum + y;
  251. end;
  252. '2':
  253. begin
  254. sum := sum - y;
  255. end;
  256. '3':
  257. begin
  258. sum := sum * y;
  259. end;
  260. '4':
  261. begin
  262. sum := sum / y;
  263. end;
  264. end;
  265. end
  266. else
  267. begin
  268. sum := y;
  269. k := 1;
  270. end;
  271. s1 := ' ';
  272. c1 := '2';
  273. end;
  274. '*':
  275. begin
  276. y := strtofloat(s1);
  277. if k <> 0 then
  278. begin
  279. case c1 of
  280. '1':
  281. begin
  282. sum := sum + y;
  283. end;
  284. '2':
  285. begin
  286. sum := sum - y;
  287. end;
  288. '3':
  289. begin
  290. sum := sum * y;
  291. end;
  292. '4':
  293. begin
  294. sum := sum / y;
  295. end;
  296. end;
  297. end
  298. else
  299. begin
  300. sum := y;
  301. k := 1;
  302. end;
  303. s1 := ' ';
  304. c1 := '3';
  305. end;
  306. '/':
  307. begin
  308. y := strtofloat(s1);
  309. if k <> 0 then
  310. begin
  311. case c1 of
  312. '1':
  313. begin
  314. sum := sum + y;
  315. end;
  316. '2':
  317. begin
  318. sum := sum - y;
  319. end;
  320. '3':
  321. begin
  322. sum := sum * y;
  323. end;
  324. '4':
  325. begin
  326. sum := sum / y;
  327. end;
  328. end;
  329. end
  330. else
  331. begin
  332. sum := y;
  333. k := 1;
  334. end;
  335. s1 := ' ';
  336. c1 := '4';
  337. end;
  338. end;
  339. end;
  340. y := strtofloat(s1);
  341. case c1 of
  342. '1':
  343. begin
  344. sum := sum + y;
  345. end;
  346. '2':
  347. begin
  348. sum := sum - y;
  349. end;
  350. '3':
  351. begin
  352. sum := sum * y;
  353. end;
  354. '4':
  355. begin
  356. sum := sum / y;
  357. end;
  358. end;
  359.  
  360. if sf = 'sin' then
  361. begin
  362. y := strtofloat(s1);
  363. x := degtorad(y);
  364. sum := sin(x);
  365. sf := ' ';
  366. s1 := ' ';
  367. end;
  368. if sf = 'cos' then
  369. begin
  370. y := strtofloat(s1);
  371. x := degtorad(y);
  372. sum := cos(x);
  373. sf := ' ';
  374. s1 := ' ';
  375. end;
  376. if sf = 'tan' then
  377. begin
  378. y := strtofloat(s1);
  379. x := degtorad(y);
  380. sum := sin(x) / cos(x);
  381. sf := ' ';
  382. s1 := ' ';
  383. end;
  384. if sf = 'ctg' then
  385. begin
  386. y := strtofloat(s1);
  387. x := degtorad(y);
  388. sum := cos(x) / sin(x);
  389. sf := ' ';
  390. s1 := ' ';
  391. end;
  392. if sf = 'arcsin' then
  393. begin
  394. y := strtofloat(s1);
  395. x := degtorad(y);
  396. sum := Arctan(x / Sqrt(1 - sqr(x)));;
  397. sf := ' ';
  398. s1 := ' ';
  399. end;
  400. if sf = 'arccos' then
  401. begin
  402. y := strtofloat(s1);
  403. x := degtorad(y);
  404. sum := Arctan(Sqrt(1 - sqr(x)) / x);
  405. sf := ' ';
  406. s1 := ' ';
  407. end;
  408. if sf = 'arctan' then
  409. begin
  410. y := strtofloat(s1);
  411. x := degtorad(y);
  412. sum := Arctan(x);
  413. sf := ' ';
  414. s1 := ' ';
  415. end;
  416. if sf = 'arcctg' then
  417. begin
  418. y := strtofloat(s1);
  419. x := degtorad(y);
  420. sum := 1 / Arctan(x);
  421. sf := ' ';
  422. s1 := ' ';
  423. end;
  424. if sf = 'sqr' then
  425. begin
  426. y := strtofloat(s1);
  427. sum := y * y;
  428. sf := ' ';
  429. s1 := ' ';
  430. end;
  431. if sf = 'sqrt' then
  432. begin
  433. y := strtofloat(s1);
  434. sum := Sqrt(y);
  435. sf := ' ';
  436. s1 := ' ';
  437. end;
  438. if sf = 'ln' then
  439. begin
  440. y := strtofloat(s1);
  441. sum := ln(y);
  442. sf := ' ';
  443. s1 := ' ';
  444. end;
  445. if sf = 'exp' then
  446. begin
  447. y := strtofloat(s1);
  448. sum := exp(y);
  449. sf := ' ';
  450. s1 := ' ';
  451. end;
  452. Edit1.text := Edit1.text + '=' + floattostr(sum);
  453. end;
  454.  
  455. procedure TForm1.Button13Click(Sender: TObject);
  456. begin
  457. Edit1.text := ' ';
  458. end;
  459.  
  460. procedure TForm1.Button14Click(Sender: TObject);
  461. begin
  462. Edit1.text := Edit1.text + '*';
  463. end;
  464.  
  465. procedure TForm1.Button15Click(Sender: TObject);
  466. begin
  467. Edit1.text := Edit1.text + '/';
  468. end;
  469.  
  470. procedure TForm1.Button16Click(Sender: TObject);
  471. begin
  472. Edit1.text := Edit1.text + '0';
  473. end;
  474.  
  475. procedure TForm1.Button17Click(Sender: TObject);
  476. begin
  477. Edit1.text := Edit1.text + 'sin';
  478. end;
  479.  
  480. procedure TForm1.Button18Click(Sender: TObject);
  481. begin
  482. Edit1.text := Edit1.text + 'cos';
  483. end;
  484.  
  485. procedure TForm1.Button19Click(Sender: TObject);
  486. begin
  487. Edit1.text := Edit1.text + 'tan';
  488. end;
  489.  
  490. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement