Advertisement
Razzim

JavaKalkuAZ$TW

Oct 26th, 2016
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.62 KB | None | 0 0
  1. package kalkuzielonka;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5.  
  6. public class KalkuZielonka {
  7.  
  8.  
  9. public static void main(String[] args) throws IOException{
  10. BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  11.  
  12. int i = 99;
  13. double a,b,c,wynik,delta,x1,x2;
  14. while(i != 0){
  15. System.out.println("Kalkulator");
  16. System.out.println("[1] Dodawanie");
  17. System.out.println("[2] Odejmowanie");
  18. System.out.println("[3] Mnożenie");
  19. System.out.println("[4] Dzielenie");
  20. System.out.println("[5] Pole trójkąta");
  21. System.out.println("[6] Pierwiaastki równania kwadratowego");
  22.  
  23. System.out.println("[0] Wyjście");
  24.  
  25. try{
  26. i = Integer.parseInt(br.readLine());
  27. }catch(NumberFormatException nfe){
  28. //System.err.println("Invalid Format!");
  29. i = -1;
  30. }
  31.  
  32. switch(i){
  33. case 0: System.out.println("Koniec Programu");
  34. break;
  35. case 1: System.out.println("Dodawanie");
  36. while(true)
  37. try{
  38. System.out.print("Podaj liczbę a: ");
  39. a = Double.parseDouble(br.readLine());
  40. break;
  41. }catch(NumberFormatException nfe){
  42. System.out.println("Nie ten typ danych!");
  43. }
  44. while(true)
  45. try{
  46. System.out.print("Podaj liczbę b: ");
  47. b = Double.parseDouble(br.readLine());
  48. break;
  49. }catch(NumberFormatException nfe){
  50. System.out.println("Nie ten typ danych!");
  51. }
  52. wynik = a + b;
  53. System.out.println("Wynik to: "+wynik);
  54. break;
  55. case 2: System.out.println("Odejmowanie");
  56. while(true)
  57. try{
  58. System.out.print("Podaj liczbę a: ");
  59. a = Double.parseDouble(br.readLine());
  60. break;
  61. }catch(NumberFormatException nfe){
  62. System.out.println("Nie ten typ danych!");
  63. }
  64. while(true)
  65. try{
  66. System.out.print("Podaj liczbę b: ");
  67. b = Double.parseDouble(br.readLine());
  68. break;
  69. }catch(NumberFormatException nfe){
  70. System.out.println("Nie ten typ danych!");
  71. }
  72. wynik = a - b;
  73. System.out.println("Wynik to: "+wynik);
  74. break;
  75. case 3: System.out.println("Mnożenie");
  76. while(true)
  77. try{
  78. System.out.print("Podaj liczbę a: ");
  79. a = Double.parseDouble(br.readLine());
  80. break;
  81. }catch(NumberFormatException nfe){
  82. System.out.println("Nie ten typ danych!");
  83. }
  84. while(true)
  85. try{
  86. System.out.print("Podaj liczbę b: ");
  87. b = Double.parseDouble(br.readLine());
  88. break;
  89. }catch(NumberFormatException nfe){
  90. System.out.println("Nie ten typ danych!");
  91. }
  92. wynik = a * b;
  93. System.out.println("Wynik to: "+wynik);
  94. break;
  95. case 4: System.out.println("Dzielenie");
  96. while(true)
  97. try{
  98. System.out.print("Podaj liczbę a: ");
  99. a = Double.parseDouble(br.readLine());
  100. break;
  101. }catch(NumberFormatException nfe){
  102. System.out.println("Nie ten typ danych!");
  103. }
  104. while(true)
  105. try{
  106. System.out.print("Podaj liczbę b: ");
  107. b = Double.parseDouble(br.readLine());
  108. if(b==0)
  109. System.out.println("Nie dzieli się przez zero.");
  110. else
  111. break;
  112. }catch(NumberFormatException nfe){
  113. System.out.println("Nie ten typ danych!");
  114. }
  115. wynik = a / b;
  116. System.out.println("Wynik to: "+wynik);
  117. break;
  118. case 5: System.out.println("Pole trójkąta");
  119. while(true)
  120. try{
  121. System.out.print("Podaj liczbę a: ");
  122. a = Double.parseDouble(br.readLine());
  123. break;
  124. }catch(NumberFormatException nfe){
  125. System.out.println("Nie ten typ danych!");
  126. }
  127. while(true)
  128. try{
  129. System.out.print("Podaj liczbę h: ");
  130. b = Double.parseDouble(br.readLine());
  131. break;
  132. }catch(NumberFormatException nfe){
  133. System.out.println("Nie ten typ danych!");
  134. }
  135. wynik = (a * b)/2;
  136. System.out.println("Wynik to: "+wynik);
  137. break;
  138. case 6: System.out.println("Pierwiastki równania kwadratowego");
  139. while(true)
  140. try{
  141. System.out.print("Podaj liczbę a: ");
  142. a = Double.parseDouble(br.readLine());
  143. if(a==0)
  144. System.out.println("Nie jest to równanie kwadratowe jeśli a = 0.");
  145. else
  146. break;
  147. }catch(NumberFormatException nfe){
  148. System.out.println("Nie ten typ danych!");
  149. }
  150. while(true)
  151. try{
  152. System.out.print("Podaj liczbę b: ");
  153. b = Double.parseDouble(br.readLine());
  154. break;
  155. }catch(NumberFormatException nfe){
  156. System.out.println("Nie ten typ danych!");
  157. }
  158. while(true)
  159. try{
  160. System.out.print("Podaj liczbę c: ");
  161. c = Double.parseDouble(br.readLine());
  162. break;
  163. }catch(NumberFormatException nfe){
  164. System.out.println("Nie ten typ danych!");
  165. }
  166. delta = b*b-4*a*c;
  167. if(delta > 0){
  168. x1 = (-b-Math.sqrt(delta))/(2*a);
  169. x2 = (-b+Math.sqrt(delta))/(2*a);
  170. System.out.println("x1 = "+x1);
  171. System.out.println("x2 = "+x2);
  172. } else if(delta == 0) {
  173. x1 = (-b)/(2*a);
  174. System.out.println("x = "+x1);
  175. } else {
  176. System.out.println("Brak rozwiązań.");
  177. }
  178.  
  179. break;
  180. default: System.out.println("Nie ma takiej opcji!");
  181. break;
  182. }
  183. if(i>0 && i<7){
  184. System.out.println("Nacisnij dowolny klawisz aby kontynowac.");
  185. try {
  186. System.in.read();
  187. } catch (IOException ex) { }
  188. }
  189.  
  190. }
  191. }
  192.  
  193.  
  194. }
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201. package twkalkulator;
  202. import java.util.Scanner;
  203.  
  204. public class TWkalkulator
  205. {
  206. public double wynik = 0;
  207. public double x1 = 0;
  208. public double x2 = 0;
  209. public double a = 0;
  210. public double b = 0;
  211. public double c = 0;
  212. public double h = 0;
  213. public int dzialanie = 0;
  214. public Scanner keyboard = new Scanner(System.in);
  215.  
  216. public int kalkulatornia()
  217. {
  218. System.out.println("\n");
  219.  
  220. System.out.print("Podaj numer dzialania (aby uzyskac pomoc wpisz 7): ");
  221.  
  222. if(!keyboard.hasNextInt())
  223. {
  224. keyboard.next();
  225. System.out.print("NIE KOMBINUJ. Wybierz numer z zakresu 1-6: ");
  226. return(0);
  227. }
  228. else
  229. {
  230. dzialanie = keyboard.nextInt();
  231. }
  232.  
  233. if (dzialanie >0 && dzialanie <5 )
  234. {
  235. switch(dzialanie)
  236. {
  237. case 1:
  238. System.out.println("\nDODAWANIE\n");
  239. break;
  240. case 2:
  241. System.out.println("\nODEJMOWANIE\n");
  242. break;
  243. case 3:
  244. System.out.println("\nMNOZENIE\n");
  245. break;
  246. case 4:
  247. System.out.println("\nDZIELENIE\n");
  248. break;
  249. default:
  250. System.out.println("\nBlad 69\n");
  251. return(0);
  252. }
  253.  
  254. System.out.print("Podaj pierwsza wartosc: ");
  255. while (!keyboard.hasNextDouble()) keyboard.next();
  256. a = keyboard.nextDouble();
  257.  
  258. System.out.print("Podaj druga wartosc: ");
  259. while (!keyboard.hasNextDouble()) keyboard.next();
  260. b = keyboard.nextDouble();
  261. }
  262.  
  263. else if (dzialanie == 5)
  264. {
  265. System.out.println("Obliczanie pierwiastkow rownania kwadratowego");
  266.  
  267. System.out.print("Podaj a: ");
  268. while (!keyboard.hasNextDouble()) keyboard.next();
  269. a = keyboard.nextDouble();
  270.  
  271. System.out.print("Podaj b: ");
  272. while (!keyboard.hasNextDouble()) keyboard.next();
  273. b = keyboard.nextDouble();
  274.  
  275. System.out.print("Podaj c: ");
  276. while (!keyboard.hasNextDouble()) keyboard.next();
  277. c = keyboard.nextDouble();
  278. }
  279.  
  280. else if (dzialanie == 6)
  281. {
  282. System.out.println("Obliczanie pola trojkata na podstawie podstawy i wysokosci");
  283.  
  284. System.out.print("Podaj dlugosc podstawy a: ");
  285. while (!keyboard.hasNextDouble()) keyboard.next();
  286. a = keyboard.nextDouble();
  287. if (a<1)
  288. {
  289. System.out.print("Podstawa musi byc wieksza niz zero!");
  290. return(0);
  291. }
  292.  
  293. System.out.print("Podaj wysokosc h: ");
  294. while (!keyboard.hasNextDouble()) keyboard.next();
  295. h = keyboard.nextDouble();
  296. if (h<1)
  297. {
  298. System.out.print("Wysokosc musi byc wieksza niz zero!");
  299. return(0);
  300. }
  301. }
  302.  
  303. switch(dzialanie)
  304. {
  305. case 1:
  306. wynik = a+b;
  307. ZwrocWynik();
  308. break;
  309. case 2:
  310. wynik = a-b;
  311. ZwrocWynik();
  312. break;
  313. case 3:
  314. wynik = a*b;
  315. ZwrocWynik();
  316. break;
  317. case 4:
  318. if (b==0)
  319. {
  320. System.out.print("Nope. Tutaj nie bedzie sie dzielic przez zero. Nastepnym razem podaj wlasciwa wartosc.");
  321. return(0);
  322. }
  323. wynik = a/b;
  324. ZwrocWynik();
  325. break;
  326. case 5:
  327. kwadratowe();
  328. break;
  329. case 6:
  330. PoleTrojkata();
  331. ZwrocWynik();
  332. break;
  333. case 7:
  334. System.out.println("Pomoc");
  335. help();
  336. return(0);
  337. default:
  338. System.out.println("NIE KOMBINUJ. Wybierz numer z zakresu 1-6");
  339. return(0);
  340. }
  341. return(0);
  342. }
  343.  
  344. public void help()
  345. {
  346. System.out.println("\n");
  347. System.out.println("Kalulator made by Tomek\n");
  348.  
  349. System.out.println("Aby cos wyliczyc wybierz dzialanie: \n");
  350.  
  351. System.out.println("1- dodawanie");
  352. System.out.println("2- odejmowanie");
  353. System.out.println("3- mnozenie");
  354. System.out.println("4- dzielenie");
  355. System.out.println("5- pierwiastki rownania kwadratowego");
  356. System.out.println("6- pole trojkata");
  357. }
  358.  
  359. public void ZwrocWynik()
  360. {
  361. if (dzialanie <5 || dzialanie >1)
  362. {
  363. System.out.print("\nWynik wynosi: ");
  364. System.out.println(wynik);
  365. }
  366.  
  367. if (dzialanie == 6)
  368. {
  369. System.out.print("\nPole trojkata wynosi: ");
  370. System.out.println(wynik);
  371. }
  372. }
  373.  
  374. public void kwadratowe()
  375. {
  376. double delta = 0;
  377. delta = (a*a)+b-(4*a*c);
  378. if (delta > 0)
  379. {
  380. x1 = (-b - Math.sqrt(delta))/(2*a);
  381. x2 = (-b + Math.sqrt(delta))/(2*a);
  382. System.out.println("\nDwa pierwiastki rownania: \n");
  383. System.out.print("x1: ");
  384. System.out.println(x1);
  385. System.out.print("x2: ");
  386. System.out.println(x2);
  387. }
  388. else if(delta==0)
  389. {
  390. x1 = -b/(2*a);
  391. System.out.print("\nJeden pierwiastek rownania: ");
  392. System.out.println(x1);
  393.  
  394. }
  395. else if(delta < 0)
  396. {
  397. System.out.print("\nBrak pierwiastkow ");
  398. }
  399. else
  400. {
  401. System.out.println("Cos zepsules. Za kare formatuje dysk...");
  402. }
  403. }
  404.  
  405. public double PoleTrojkata()
  406. {
  407. wynik = (a*h)/2;
  408. return wynik;
  409. }
  410.  
  411. public static void main(String[] args)
  412. {
  413. TWkalkulator k=new TWkalkulator();
  414. while(true)
  415. {
  416. k.kalkulatornia();
  417. }
  418.  
  419. }
  420.  
  421. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement