Advertisement
Maxim_Leo

Untitled

Apr 13th, 2022
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.77 KB | None | 0 0
  1. package com.company;
  2.  
  3. //enum v {car,truck,bus}
  4.  
  5.  
  6. abstract class Car {
  7. static int i=0;
  8. static Car[] mas=new Car[10];
  9. private String reg_number="Отсутствует";
  10. private final String brand;
  11. // private final v view;
  12. private String color;
  13. //private int power;
  14. private Engine engine;
  15. private final int num_of_wheels;
  16. public Car(String brand,String color, Engine engine, int num_of_wheels){ //(v view)
  17. this.brand=brand;
  18. // this.view=view;
  19. this.color=color;
  20. //this.power=power;
  21. this.engine=engine;
  22. this.num_of_wheels=num_of_wheels;
  23. mas[i]=this;
  24. i++;
  25. }
  26. public Car(String number,String brand, String color, Engine engine, int num_of_wheels){// v view
  27. this.brand=brand;
  28. // this.view=view;
  29. this.color=color;
  30. //this.power=power;
  31. this.engine=engine;
  32. this.num_of_wheels=num_of_wheels;
  33. this.reg_number=number;
  34. }
  35.  
  36. final void setReg_number(String reg_number){
  37. this.reg_number = reg_number;
  38. }
  39. final void setColor(String color){
  40. this.color = color;
  41. }
  42. final void setEngine(Engine engine){
  43. this.engine = engine;
  44. }
  45. final String getBrand(){
  46. return brand;
  47. }
  48. final String getReg_number(){
  49. return reg_number;
  50. }
  51. final String getColor(){
  52. return color;
  53. }
  54. final Engine getEngine(){
  55. return engine;
  56. }
  57. final int getNum_of_wheels(){
  58. return num_of_wheels;
  59. }
  60. final void ChangeColor(String color){
  61. this.color=color;
  62. }
  63. //void ChangePower(int power){
  64. // this.power=power;
  65. // }
  66. final void ChangeEngine(Engine engine){
  67. this.engine=engine;
  68. }
  69. void ChangeNumber(String number){
  70. if (number.matches("^([АБЕКМНОРСТУХABEKMHOPCTYX][\\s]?)[0-9]{3}[\\s]?[АБЕКМНОРСТУХABEKMHOPCTYX]{2}[\\s]?([0-9]{2,3})[\\s]?[A-Z]{3}$"))
  71. this.reg_number=number;
  72. else System.out.println("Номер задан неправильно");
  73. }
  74. void Info(){
  75. System.out.println("Информация о машине: ");
  76. // System.out.println("Вид: "+view);
  77. System.out.println("Регистрационный номер: "+reg_number);
  78. System.out.println("Марка: "+brand);
  79. //System.out.println("Мощность двигателя: "+power+" л.с.");
  80. System.out.println("Количество колёс: "+num_of_wheels);
  81. System.out.println("Цвет: "+color);
  82. engine.printInfo();
  83. System.out.println();
  84. }
  85. }
  86. class Engine {
  87. private String serial_number = "";
  88. private double fuel_rate;
  89. private String fuel_type;
  90. private int power;
  91. private double capacity;
  92. private int cylinders_num;
  93. private double torque;
  94. private int max_speed;
  95.  
  96. public Engine(double fuel_rate, String fuel_type, int power, double capacity, int cylinders_num, double torque, int max_speed) {
  97. this.fuel_rate = fuel_rate;
  98. this.fuel_type = fuel_type;
  99. this.power = power;
  100. this.capacity = capacity;
  101. this.cylinders_num = cylinders_num;
  102. this.torque = torque;
  103. this.max_speed = max_speed;
  104. }
  105.  
  106. public Engine(String serial_number, double fuel_rate, String fuel_type, int power, double capacity, int cylinders_num, double torque, int max_speed) {
  107. this.serial_number = serial_number;
  108. this.fuel_rate = fuel_rate;
  109. this.fuel_type = fuel_type;
  110. this.power = power;
  111. this.capacity = capacity;
  112. this.cylinders_num = cylinders_num;
  113. this.torque = torque;
  114. this.max_speed = max_speed;
  115. }
  116.  
  117. void ChangeSNum(String serial_number) {
  118. this.serial_number = serial_number;
  119. }
  120.  
  121. void ChangeFuelRate(double fuel_rate) {
  122. this.fuel_rate = fuel_rate;
  123. }
  124.  
  125. void ChangeFuelType(String fuel_type) {
  126. this.fuel_type = fuel_type;
  127. }
  128.  
  129. void ChangePower(int power) {
  130. this.power = power;
  131. }
  132.  
  133. void ChangeCapacity(double capacity) {
  134. this.capacity = capacity;
  135. }
  136.  
  137. void ChangeCylNum(int cylinders_num) {
  138. this.cylinders_num = cylinders_num;
  139. }
  140.  
  141. void ChangeTorque(double torque) {
  142. this.torque = torque;
  143. }
  144.  
  145. void ChangeMaxSpeed(int max_speed) {
  146. this.max_speed = max_speed;
  147. }
  148. void printInfo(){
  149. System.out.println("Характеристики двигателя: ");
  150. System.out.println("Серийный номер: № "+serial_number);
  151. System.out.println("Расход топлива: "+fuel_rate+" л/100 км");
  152. System.out.println("Тип топлива: "+fuel_type);
  153. System.out.println("Мощность: "+power+" л.с.");
  154. System.out.println("Обьем: "+capacity+" л");
  155. System.out.println("Количество цилиндров: "+cylinders_num);
  156. System.out.println("Крутящий момент: "+torque+" Нм");
  157. System.out.println("Максимальное число оборотов: "+max_speed+" об/мин");
  158. System.out.println();
  159. }
  160. }
  161.  
  162.  
  163. class Pass_Car extends Car{
  164. String type;
  165. String transmission;
  166. int max_speed;
  167. public Pass_Car(String brand, String color, Engine engine, int num_of_wheels,String type,String transmission,int max_speed){
  168. super(brand, color, engine, num_of_wheels);
  169. //this.view=view;
  170. //this.power=power;
  171. setColor(color);
  172. setEngine(engine);
  173. this.type=type;
  174. this.transmission=transmission;
  175. this.max_speed=max_speed;
  176.  
  177. }
  178.  
  179. public Pass_Car(String reg_number,String brand, String color, Engine engine, int num_of_wheels,String type,String transmission,int max_speed) {
  180. super(brand, color, engine, num_of_wheels);
  181. //this.view=view;
  182. //this.power=power;
  183. setReg_number(reg_number);
  184. setColor(color);
  185. setEngine(engine);
  186. this.type=type;
  187. this.transmission=transmission;
  188. this.max_speed=max_speed;
  189.  
  190. }
  191. @Override void Info(){
  192. System.out.println("Информация о машине: ");
  193. // System.out.println("Вид: "+view);
  194. System.out.println("Регистрационный номер: "+getReg_number());
  195. System.out.println("Марка: "+getBrand());
  196. //System.out.println("Мощность двигателя: "+power+" л.с.");
  197. System.out.println("Количество колёс: "+getNum_of_wheels());
  198. System.out.println("Цвет: "+getColor());
  199. System.out.println("Тип: "+type);
  200. System.out.println("Коробка передач: "+transmission);
  201. System.out.println("Максимальная скорость: "+max_speed);
  202. getEngine().printInfo();
  203. System.out.println();
  204. }
  205. }
  206. class Truck extends Car {
  207. private int weight;
  208. private int lifting_capacity;
  209. private int cabin;
  210. String dimensions;
  211.  
  212. public Truck(String brand, String color, Engine engine, int num_of_wheels, int weight, int lifting_capacity, int cabin, String dimensions) {
  213. super(brand, color, engine, num_of_wheels);
  214. //this.view=view;
  215. //this.power=power;
  216. this.lifting_capacity = lifting_capacity;
  217. this.weight = weight;
  218. this.cabin = cabin;
  219. this.dimensions = dimensions;
  220. }
  221. public Truck(String reg_number,String brand, String color, Engine engine, int num_of_wheels, int weight, int lifting_capacity, int cabin, String dimensions) {
  222. super(brand, color, engine, num_of_wheels);
  223. //this.view=view;
  224. //this.power=power;
  225. setReg_number(reg_number);
  226. this.lifting_capacity = lifting_capacity;
  227. this.weight = weight;
  228. this.cabin = cabin;
  229. this.dimensions = dimensions;
  230. }
  231. @Override void Info(){
  232. System.out.println("Информация о машине: ");
  233. // System.out.println("Вид: "+view);
  234. System.out.println("Регистрационный номер: "+getReg_number());
  235. System.out.println("Марка: "+getReg_number());
  236. //System.out.println("Мощность двигателя: "+power+" л.с.");
  237. System.out.println("Количество колёс: "+getNum_of_wheels());
  238. System.out.println("Цвет: "+getColor());
  239. System.out.println("Грузподъемность: "+lifting_capacity);
  240. System.out.println("Вес: "+weight);
  241. System.out.println("Мест в кабине: "+cabin);
  242. System.out.println("Размеры: "+dimensions);
  243. getEngine().printInfo();
  244. System.out.println();
  245. }
  246. }
  247. class Bus extends Car{
  248. final int space;
  249. final String dimensions;
  250. public Bus(String brand, String color, Engine engine, int num_of_wheels,int space,String dimensions){
  251. super(brand, color, engine, num_of_wheels);
  252. //this.view=view;
  253. //this.power=power;
  254. this.space=space;
  255. this.dimensions=dimensions;
  256.  
  257. }
  258. public Bus(String reg_number,String brand, String color, Engine engine, int num_of_wheels,int space,String dimensions){
  259. super(brand, color, engine, num_of_wheels);
  260. //this.view=view;
  261. //this.power=power;
  262. setReg_number(reg_number);
  263. this.space=space;
  264. this.dimensions=dimensions;
  265.  
  266. }
  267. @Override void Info(){
  268. System.out.println("Информация о машине: ");
  269. // System.out.println("Вид: "+view);
  270. System.out.println("Регистрационный номер: "+getReg_number());
  271. System.out.println("Марка: "+getReg_number());
  272. //System.out.println("Мощность двигателя: "+power+" л.с.");
  273. System.out.println("Количество колёс: "+getNum_of_wheels());
  274. System.out.println("Цвет: "+getColor());
  275. System.out.println("Количество мест: "+space);
  276. System.out.println("Размеры: "+dimensions);
  277. getEngine().printInfo();
  278. System.out.println();
  279. }
  280. }
  281. class FireTruck extends Car{
  282. private int weight;
  283. int space;
  284. String passability;
  285. public FireTruck(String brand, String color, Engine engine, int num_of_wheels,int weight,int space,String Passability){
  286. super(brand, color, engine, num_of_wheels);
  287. //this.view=view;
  288. //this.power=power;
  289. this.weight=weight;
  290. this.space=space;
  291. this.passability=passability;
  292. setColor("Red");
  293. }
  294. public FireTruck(String reg_number,String brand, String color, Engine engine, int num_of_wheels,int weight,int space,String Passability){
  295. super(brand, color, engine, num_of_wheels);
  296. //this.view=view;
  297. //this.power=power;
  298. setReg_number(reg_number);
  299. this.weight=weight;
  300. this.space=space;
  301. this.passability=passability;
  302. setColor("Red");
  303. }
  304. @Override void Info(){
  305. System.out.println("Информация о машине: ");
  306. // System.out.println("Вид: "+view);
  307. System.out.println("Регистрационный номер: "+getReg_number());
  308. System.out.println("Марка: "+getReg_number());
  309. //System.out.println("Мощность двигателя: "+power+" л.с.");
  310. System.out.println("Количество колёс: "+getNum_of_wheels());
  311. System.out.println("Цвет: "+getColor());
  312. System.out.println("Вес: "+weight);
  313. System.out.println("Количество мест: "+space);
  314. System.out.println("Проходимость: "+passability);
  315. getEngine().printInfo();
  316. System.out.println();
  317. }
  318. @Override void ChangeNumber(String number){
  319. if (number.matches("^([АБЕКМНОРСТУХABEKMHOPCTYX]{2}[\\s]?)[0-9]{4}[\\s]?[5]{2}[A-Z]{3}$"))
  320. this.setReg_number(number);
  321. else System.out.println("Номер задан неправильно");
  322. }
  323. }
  324.  
  325. class Motor_depot{
  326.  
  327. int k;
  328. int j = 0;
  329. public Motor_depot(int i){
  330. this.k = i;
  331. }
  332.  
  333. void Free_Places(){
  334. System.out.println("Свободных мест осталость: " + (k-j));
  335. }
  336.  
  337. Car[] mas = new Car[5];
  338. String[] status = new String[5];
  339. int[] Space = new int[]{1,2,3,4,5};
  340.  
  341. void addCar(Car s){
  342. if (k == j){
  343. System.out.println("Место закончилось");
  344. }
  345. else{
  346. for (int i = 0; i < 5; i++){
  347. if (Space[i] != 0){
  348. mas[i] = s;
  349. status[i] = "Свободен";
  350. Space[i] = 0;
  351. j += 1;
  352. break;
  353. }
  354. }
  355. }
  356. }
  357. void deleteCar(int i){
  358. i -= 1;
  359. mas[i] = null;
  360. status[i] = "Списан";
  361. j -= 1;
  362. Space[i] = i+1;
  363. }
  364. void For_Flight(int i){
  365. i -= 1;
  366. if (status[i] == "Свободен")
  367. status[i] = "В рейсе";
  368. }
  369. void Vozvrashenie(int i){
  370. i -= 1;
  371. status[i] = "Свободен";
  372. }
  373. void For_Repairs(int i){
  374. i -= 1;
  375. status[i] = "На ремонте";
  376. }
  377.  
  378. void print_Motor_depotAll(){
  379. System.out.println("\nСвободные машины: ");
  380. for (int i = 0; i<k;i++){
  381. if (mas[i] != null){
  382. if (status[i] == "Свободен"){
  383. System.out.println(mas[i].getBrand() + " " + (i+1));
  384. }
  385. }
  386. }
  387. System.out.println("\nМашины в ремонте: ");
  388. for (int i = 0; i<k;i++){
  389. if (mas[i] != null){
  390. if (status[i] == "На ремонте"){
  391. System.out.println(mas[i].getBrand() + " " + (i+1));
  392. }
  393. }
  394. }
  395. System.out.println("\nМашины в рейсе: ");
  396. for (int i = 0; i<k;i++){
  397. if (mas[i] != null){
  398. if (status[i] == "В рейсе"){
  399. System.out.println(mas[i].getBrand() + " " + (i+1));
  400. }
  401. }
  402. }
  403. }
  404. }
  405.  
  406. class Complex{
  407. private double x;
  408. private double y=0;
  409.  
  410. Complex(double x, double y){
  411. this.x=x;
  412. this.y=y;
  413. }
  414. Complex(){}
  415. Complex(double x){this.x=x;}
  416. void Real(){
  417. System.out.println(x);
  418. }
  419. void Imaginary(){
  420. System.out.println("i*"+y);
  421. }
  422. void AlgForm() {
  423. System.out.println("Алгебраическая форма: ");
  424. System.out.println(x+"+i*"+y);
  425. }
  426. void TrigForm() {
  427. System.out.println("Тригонометрическая форма: ");
  428. double r=Math.sqrt(x*x+y*y);
  429. double FI = Math.atan(y/x);
  430. System.out.printf("%.2f *(cos(%.2f)+ isin(%.2f))",r,FI,FI);
  431. System.out.println();
  432. }
  433. static boolean Compare(Complex z1, Complex z2){
  434. return z1.x == z2.x && z1.y == z2.y;
  435. }
  436. static Complex Sum(Complex z1, Complex z2){
  437. Complex z3 = new Complex();
  438. z3.x=z1.x+ z2.x;
  439. z3.y=z1.y+ z2.y;
  440. //z3.alg_form();
  441. return z3;
  442. }
  443. static Complex Diff(Complex z1, Complex z2){
  444. Complex z3 = new Complex();
  445. z3.x=z1.x- z2.x;
  446. z3.y=z1.y- z2.y;
  447. //z3.alg_form();
  448. return z3;
  449. }
  450. static Complex Mult(Complex z1, Complex z2){
  451. Complex z3 = new Complex();
  452. z3.x=z1.x* z2.x-z1.y* z2.y;
  453. z3.y=z1.y* z2.x+z1.x*z2.y;
  454. //z3.alg_form();
  455. return z3;
  456. }
  457. static Complex Div(Complex z1, Complex z2){
  458. Complex z3 = new Complex();
  459. z3.x=(z1.x*z2.x+z1.y*z2.y)/(z2.x*z2.x+z2.y*z2.y);
  460. z3.y=(z1.y*z2.x+z1.x*z2.y)/(z2.x*z2.x-z2.y*z2.y);
  461. //z3.alg_form();
  462. return z3;
  463. // System.out.printf("%.2f + i * %.2f",(z1.x*z2.x+z1.y*z2.y)/(z2.x*z2.x+z2.y*z2.y),(z1.y*z2.x+z1.x*z2.y)/(z2.x*z2.x-z2.y*z2.y));
  464. // System.out.println();
  465. }
  466.  
  467. Complex conjugate(){y=-y; return new Complex(x,y);}
  468. static Complex exp(Complex z){
  469. return new Complex(Math.exp(z.x)*Math.cos(z.y),Math.exp(z.x)*Math.sin(z.y));
  470. }
  471. static Complex sin(Complex z){
  472. return new Complex(Math.sin(z.x) * Math.cosh(z.y), Math.cos(z.x) * Math.sinh(z.y));
  473. }
  474. static Complex cos(Complex z){
  475. return new Complex(Math.cos(z.x) * Math.cosh(z.y), -Math.sin(z.x) * Math.sinh(z.y));
  476. }
  477. public static Complex tan(Complex z){return Div(sin(z),cos(z));}
  478. public static Complex arctan(Complex z){
  479. return Div(cos(z),sin(z));
  480. }
  481. public static Complex sh(Complex z) {return Div(Diff(exp(z),exp(z.conjugate())),new Complex(2,0));}
  482. public static Complex ch(Complex z){return Div(Sum(exp(z),exp(z.conjugate())),new Complex(2,0));}
  483. public static Complex th (Complex z) {return Div(sh(z),ch(z));}
  484. public static Complex cth (Complex z) {return Div(ch(z),sh(z));}
  485. }
  486. public class Lab4 {
  487. public static void main(String[] args){
  488.  
  489. // Car Land_Cruiser = new Car ("Toyota",v.car,"White",300,4);
  490. Engine engine=new Engine(10.1,"Бензин",415,3.3,6,650,5200);
  491. engine.ChangeCapacity(3.5);
  492. engine.printInfo();
  493. Pass_Car Land_Cruiser = new Pass_Car("Toyota","Белый",engine,4,"Внедорожник","Автоматическая",210);
  494. Land_Cruiser.Info();
  495. Land_Cruiser.ChangeNumber("X156YH76RUS");
  496. Land_Cruiser.ChangeColor("Зеленый");
  497. // Land_Cruiser.ChangePower(350);
  498. Land_Cruiser.Info();
  499. Pass_Car BMW_X5 = new Pass_Car ("BMW","Черный",engine,4,"Внедорожник","Автоматическая",220);
  500. Pass_Car Mercedes_C200 = new Pass_Car ("Mercedes","Белый",engine,4,"Седан","Автоматическая",210);
  501. Pass_Car Audi_A5 = new Pass_Car ("Audi","Белый",engine,4,"Автоматическая","Хетчбэк",240);
  502. Pass_Car Kia_Rio = new Pass_Car ("Kia","Белый",engine,4,"Автоматическая","Седан",225);
  503. Pass_Car Lexus_rx507 = new Pass_Car ("Hyundai","Черный",engine,4,"Автоматическая","Внедорожник",200);
  504. Pass_Car Nissan_Quaskai = new Pass_Car ("Nissan ","Красный",engine,4,"Автоматическая","Внедорожник",230);
  505. //String reg_number,String brand, String color, Engine engine, int num_of_wheels,String type,String transmission,int max_speed
  506. System.out.println("Задание 2");
  507. Complex z1 = new Complex(10,3);
  508. Complex z2 = new Complex(7,2);
  509. z1.Real();
  510. z1.Imaginary();
  511. z2.Real();
  512. z2.Imaginary();
  513. z1.AlgForm();
  514. z1.TrigForm();
  515. System.out.println(Complex.Compare(z1,z2));
  516. Complex.Sum(z1,z2);
  517. Complex.Diff(z1,z2);
  518. Complex.Mult(z1,z2);
  519. Complex.Div(z1,z2);
  520. System.out.println("Задание 3");
  521.  
  522. System.out.println("Задание 7");
  523. Motor_depot Test = new Motor_depot(5);
  524. Test.addCar(Land_Cruiser);
  525. Test.addCar(BMW_X5);
  526. Test.addCar(Mercedes_C200);
  527. Test.addCar(Audi_A5);
  528. Test.addCar(Kia_Rio);
  529. Test.addCar(Lexus_rx507);
  530. Test.print_Motor_depotAll();
  531. Test.Free_Places();
  532. Test.For_Flight(2);
  533. Test.Vozvrashenie(1);
  534. Test.For_Repairs(1);
  535. Test.For_Repairs(3);
  536. Test.Vozvrashenie(1);
  537. Test.deleteCar(1);
  538. Test.addCar(Nissan_Quaskai);
  539. Test.print_Motor_depotAll();
  540. Test.Free_Places();
  541. }
  542. }
  543.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement