mirror of
https://github.com/ASDjonok/OOP_IO-2x_2023.git
synced 2026-04-01 21:21:50 +03:00
Compare commits
59 Commits
ІО-23/06-Г
...
ІО-22/20-П
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1804300a41 | ||
|
|
901f3764cc | ||
|
|
4ce763a535 | ||
|
|
8548f7c734 | ||
|
|
5e1040d05b | ||
|
|
5f4e295f72 | ||
|
|
534f830672 | ||
|
|
d127ee3456 | ||
|
|
b1f37e7fae | ||
|
|
73c713708f | ||
|
|
02f123888c | ||
|
|
a954fc5f52 | ||
|
|
dcf2b89997 | ||
|
|
e20f774ceb | ||
|
|
9ec0b06627 | ||
|
|
64b8735333 | ||
|
|
983828b777 | ||
|
|
124f67b760 | ||
|
|
8d906fd812 | ||
|
|
e6a726c647 | ||
|
|
4be9e7b1ba | ||
|
|
d1e20c015c | ||
|
|
ad7b0175ba | ||
|
|
c62613c975 | ||
|
|
c95a243c84 | ||
|
|
63b1b6f62b | ||
|
|
1c68762d9d | ||
|
|
ba82b49508 | ||
|
|
ee35a832b9 | ||
|
|
7e652a976c | ||
|
|
15685384a7 | ||
|
|
e6620839bd | ||
|
|
f136101a3b | ||
|
|
59fb75ce32 | ||
|
|
b9570d75f8 | ||
|
|
ae0f85c8d6 | ||
|
|
96dd638e66 | ||
|
|
61760443a5 | ||
|
|
8b517d136f | ||
|
|
9813f75326 | ||
|
|
8ae3907d24 | ||
|
|
a011fc41cf | ||
|
|
4454d46284 | ||
|
|
4d70c6a51e | ||
|
|
8db686fac0 | ||
|
|
a48fb7d41f | ||
|
|
09f2114de6 | ||
|
|
828dedc3b6 | ||
|
|
41b6eb063c | ||
|
|
bb2c8bd1a0 | ||
|
|
88a618647d | ||
|
|
f4fccadb7b | ||
|
|
fb4c2404f7 | ||
|
|
86940aa666 | ||
|
|
1e368a1324 | ||
|
|
559b03336e | ||
|
|
0a7521af40 | ||
|
|
0b51a1a491 | ||
|
|
f54eee595c |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
# Project exclude paths
|
|
||||||
/out/
|
|
||||||
8
.idea/.gitignore
generated
vendored
8
.idea/.gitignore
generated
vendored
@@ -1,8 +0,0 @@
|
|||||||
# Default ignored files
|
|
||||||
/shelf/
|
|
||||||
/workspace.xml
|
|
||||||
# Editor-based HTTP Client requests
|
|
||||||
/httpRequests/
|
|
||||||
# Datasource local storage ignored files
|
|
||||||
/dataSources/
|
|
||||||
/dataSources.local.xml
|
|
||||||
6
.idea/misc.xml
generated
6
.idea/misc.xml
generated
@@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="openjdk-18" project-jdk-type="JavaSDK">
|
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
8
.idea/modules.xml
generated
8
.idea/modules.xml
generated
@@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ProjectModuleManager">
|
|
||||||
<modules>
|
|
||||||
<module fileurl="file://$PROJECT_DIR$/OOP_IO-2x_2023.iml" filepath="$PROJECT_DIR$/OOP_IO-2x_2023.iml" />
|
|
||||||
</modules>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
124
.idea/uiDesigner.xml
generated
124
.idea/uiDesigner.xml
generated
@@ -1,124 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="Palette2">
|
|
||||||
<group name="Swing">
|
|
||||||
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
|
|
||||||
<initial-values>
|
|
||||||
<property name="text" value="Button" />
|
|
||||||
</initial-values>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
|
||||||
<initial-values>
|
|
||||||
<property name="text" value="RadioButton" />
|
|
||||||
</initial-values>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
|
||||||
<initial-values>
|
|
||||||
<property name="text" value="CheckBox" />
|
|
||||||
</initial-values>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
|
|
||||||
<initial-values>
|
|
||||||
<property name="text" value="Label" />
|
|
||||||
</initial-values>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
|
||||||
<preferred-size width="150" height="-1" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
|
||||||
<preferred-size width="150" height="-1" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
|
||||||
<preferred-size width="150" height="-1" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
|
||||||
<preferred-size width="150" height="50" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
|
||||||
<preferred-size width="200" height="200" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
|
||||||
<preferred-size width="200" height="200" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
|
|
||||||
<preferred-size width="-1" height="20" />
|
|
||||||
</default-constraints>
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
|
|
||||||
</item>
|
|
||||||
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
|
||||||
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
|
|
||||||
</item>
|
|
||||||
</group>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
6
.idea/vcs.xml
generated
6
.idea/vcs.xml
generated
@@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="VcsDirectoryMappings">
|
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
40
Lab3/Lab2/Lab2/Program.cs
Normal file
40
Lab3/Lab2/Lab2/Program.cs
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
public class Laba2
|
||||||
|
{
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
const int a = 2;
|
||||||
|
int[,] b = new[,] //створення матриці;
|
||||||
|
{
|
||||||
|
{ 1, 2, 8 },
|
||||||
|
{ 3, 4, 5 },
|
||||||
|
{ 6, 7, 9 }
|
||||||
|
};
|
||||||
|
int rows = b.GetLength(0); //отримання довжини рядків
|
||||||
|
int cols = b.GetLength(1); //отримання довжини стовпців
|
||||||
|
for (int i = 0; i < rows; i++)
|
||||||
|
{
|
||||||
|
int Avg = 0;
|
||||||
|
for (int j = 0; j < cols; j++)
|
||||||
|
{
|
||||||
|
Console.Write(b[i, j] + " "); // перебір матриці для обчислення середнього значення рядка
|
||||||
|
Avg += b[i, j];
|
||||||
|
}
|
||||||
|
Avg = Avg / cols;
|
||||||
|
Console.Write($"-average of row is:{Avg};" );
|
||||||
|
Console.WriteLine(" ");
|
||||||
|
|
||||||
|
}
|
||||||
|
Console.WriteLine(" ");
|
||||||
|
for (int x = 0; x < rows; x++)
|
||||||
|
{
|
||||||
|
for (int y = 0; y < cols; y++)
|
||||||
|
{
|
||||||
|
Console.Write(b[x, y] * a + " "); //виведення матриці, помноженої на константу
|
||||||
|
|
||||||
|
}
|
||||||
|
Console.WriteLine(" ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
33
Lab3/Lab3/Lab3/Program.cs
Normal file
33
Lab3/Lab3/Lab3/Program.cs
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
class Lab3
|
||||||
|
{
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
string text = "Вухатий великий синiй слон. Яблуко в саду. Зелене яблуко? Груша. Жовта слива висить у саду!";
|
||||||
|
Console.WriteLine(text );
|
||||||
|
|
||||||
|
// розділяємо текст на окремі речення
|
||||||
|
string[] textSplit = text.Split(new[] { '.', '?', '!' }, StringSplitOptions.RemoveEmptyEntries);
|
||||||
|
|
||||||
|
// обчислюємо кількість слів у кожному реченні та створюємо масив з кількістю слів у реченнях
|
||||||
|
int[] amountOfWords = new int[textSplit.Length];
|
||||||
|
for (int i = 0; i < textSplit.Length; i++)
|
||||||
|
{
|
||||||
|
string[] words = textSplit[i].Trim().Split(' ', StringSplitOptions.RemoveEmptyEntries);
|
||||||
|
amountOfWords[i] = words.Length;
|
||||||
|
}
|
||||||
|
|
||||||
|
// створюємо Dictionary, де ключ - кількість слів у реченні, а значення - речення
|
||||||
|
Dictionary<string, int> sentenceDictionary = new Dictionary<string, int>();
|
||||||
|
for (int i = 0; i < textSplit.Length; i++)
|
||||||
|
{
|
||||||
|
sentenceDictionary.Add(textSplit[i],amountOfWords[i] );
|
||||||
|
}
|
||||||
|
var sortedDict = sentenceDictionary.OrderBy(x => x.Value).ToDictionary(x => x.Key, x => x.Value);
|
||||||
|
|
||||||
|
|
||||||
|
Console.WriteLine(String.Join(";", sortedDict.Keys));
|
||||||
|
}
|
||||||
|
}
|
||||||
86
Lab3/Lab4/Lab4/Program.cs
Normal file
86
Lab3/Lab4/Lab4/Program.cs
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ConsoleApp1
|
||||||
|
{
|
||||||
|
class Furniture
|
||||||
|
{
|
||||||
|
// 5 полів
|
||||||
|
private string type;
|
||||||
|
private string material;
|
||||||
|
private string color;
|
||||||
|
private int price;
|
||||||
|
private int amount;
|
||||||
|
|
||||||
|
// конструктор з атрибутами
|
||||||
|
public Furniture(string type, string material, string color, int price, int amount)
|
||||||
|
{
|
||||||
|
this.type = type;
|
||||||
|
this.material = material;
|
||||||
|
this.color = color;
|
||||||
|
this.price = price;
|
||||||
|
this.amount = amount;
|
||||||
|
}
|
||||||
|
|
||||||
|
// методи для повернення атрибутів
|
||||||
|
public string getType()
|
||||||
|
{
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string getMaterial()
|
||||||
|
{
|
||||||
|
return material;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string getColor()
|
||||||
|
{
|
||||||
|
return color;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getPrice()
|
||||||
|
{
|
||||||
|
return price;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getAmount()
|
||||||
|
{
|
||||||
|
return amount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
|
||||||
|
Furniture[] furnitureArr = {
|
||||||
|
new Furniture("шафа", "дерево", "коричневий", 5000, 2),
|
||||||
|
new Furniture("стiл", "скло", "чорний", 3000, 3),
|
||||||
|
new Furniture("лiжко", "метал", "срiблястий", 8000, 1),
|
||||||
|
new Furniture("диван", "тканина", "сiрий", 10000, 2),
|
||||||
|
new Furniture("стiлець", "метал", "синій", 500, 4)
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Сортування масиву за ціною за зростанням
|
||||||
|
var sorted = furnitureArr.OrderBy(ob => ob.price).ToArray();
|
||||||
|
// Вивести відсортований масив
|
||||||
|
Console.WriteLine("Вiдсортований за цiною (за зростанням):");
|
||||||
|
foreach (Furniture f in sorted)
|
||||||
|
{
|
||||||
|
Console.WriteLine(f.getType() + " - " + f.getPrice() + " грн;");
|
||||||
|
}
|
||||||
|
Console.WriteLine(' ');
|
||||||
|
// Сортування масиву за кількістю за спаданням
|
||||||
|
var sortedReversery = furnitureArr.OrderBy(ob => ob.amount).ToArray().Reverse();
|
||||||
|
// Вивести відсортований масив
|
||||||
|
Console.WriteLine("Вiдсортований за кiлькiстю (за спаданням):");
|
||||||
|
foreach (Furniture f in sortedReversery)
|
||||||
|
{
|
||||||
|
Console.Write($"{f.getType()} - {f.getAmount()}; " );
|
||||||
|
}
|
||||||
|
Console.WriteLine(' ');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
121
Lab6/Lab6/Program.cs
Normal file
121
Lab6/Lab6/Program.cs
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Formats.Asn1;
|
||||||
|
|
||||||
|
// Визначити ієрархію рухомого складу залізничного транспорту.Створити пасажирський потяг.Порахувати загальну чисельність пасажирів і багажу в потязі.
|
||||||
|
// Провести сортування вагонів потягу за рівнем комфортності. Знайти вагон в потязі, що відповідає заданому діапазону кількості пасажирів.
|
||||||
|
|
||||||
|
|
||||||
|
class Lab6
|
||||||
|
{
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
List<Wagons> wagons = new List<Wagons>(); //створюємо лист-список вагонів;
|
||||||
|
|
||||||
|
// Додаємо вагони за допомогою класу Wagons;
|
||||||
|
wagons.Add(new Wagons.PassengerWagons("Пасажирський", 100, 100, "Вищий", 10));
|
||||||
|
wagons.Add(new Wagons.PassengerWagons("Пасажирський", 50, 48, "Середнiй", 20));
|
||||||
|
wagons.Add(new Wagons.PassengerWagons("Пасажирський", 20, 15, "Низький", 30));
|
||||||
|
wagons.Add(new Wagons.FreightWagons("Вантажний", 10, 10));
|
||||||
|
wagons.Add(new Wagons.FreightWagons("Вантажний", 20, 20));
|
||||||
|
wagons.Add(new Wagons.FreightWagons("Вантажний", 30, 30));
|
||||||
|
|
||||||
|
|
||||||
|
Console.WriteLine("Усi вагони:"); //відображення всіх вагонів;
|
||||||
|
|
||||||
|
foreach (Wagons wagon in wagons)
|
||||||
|
{
|
||||||
|
Console.WriteLine(wagon.GetType() + ": " + wagon.GetPassengers() + " пасажирiв(-а), " + wagon.GetBaggage() +
|
||||||
|
" валiз/контейнерiв, " + wagon.GetComfort() + ", " + wagon.GetAmount() + ";");
|
||||||
|
}
|
||||||
|
|
||||||
|
int amountOfPassangers = 0; //обчислення загальної кількості пасажирів;
|
||||||
|
foreach (Wagons p in wagons)
|
||||||
|
{
|
||||||
|
amountOfPassangers += p.GetPassengers();
|
||||||
|
}
|
||||||
|
|
||||||
|
var sorted = wagons.OrderByDescending(ob => ob.GetComfort()).ToArray(); //сортування вагонів за рівнем комфорту;
|
||||||
|
|
||||||
|
Console.WriteLine("\nКiлькiсть пасажирiв у пасажирському вагонi: " + amountOfPassangers + ";");
|
||||||
|
Console.WriteLine("\nВеддiть мiнiмальну кiлькiсть пасажирiв: ");
|
||||||
|
var minPassangers = Convert.ToInt32(Console.ReadLine());
|
||||||
|
Console.WriteLine("Веддiть максимальну кiлькiсть пасажирiв: ");
|
||||||
|
var maxPassangers = Convert.ToInt32(Console.ReadLine());
|
||||||
|
foreach (Wagons t in wagons)
|
||||||
|
{
|
||||||
|
if (t.GetPassengers() != null && t.GetPassengers() >= minPassangers && t.GetPassengers() <= maxPassangers) //пошук вагону за кількістю пасажирів;
|
||||||
|
{
|
||||||
|
Console.Write(t.GetType() + " - " + t.GetPassengers()+"; ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
throw (new InvalidOperationException("Немає такого вагону;"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class Wagons
|
||||||
|
{
|
||||||
|
private string type; // тип вагону
|
||||||
|
private int passengers; // кількість пасажирів
|
||||||
|
private int baggage; // кількість багажу в тоннах
|
||||||
|
private string comfort; // рейтиг комфорту вагону
|
||||||
|
private int amount; // кількість вагонів
|
||||||
|
|
||||||
|
public Wagons(string type, int? passengers, int? baggage, string comfort, int amount) //конструктор вагонів;
|
||||||
|
{
|
||||||
|
this.type = type;
|
||||||
|
this.passengers = Convert.ToInt32(passengers);
|
||||||
|
this.baggage = Convert.ToInt32(baggage);
|
||||||
|
this.comfort = comfort;
|
||||||
|
this.amount = amount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetType() //геттери атрибутів класу;
|
||||||
|
{
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int GetPassengers()
|
||||||
|
{
|
||||||
|
return passengers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int? GetBaggage()
|
||||||
|
{
|
||||||
|
return baggage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetComfort()
|
||||||
|
{
|
||||||
|
return comfort;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int GetAmount()
|
||||||
|
{
|
||||||
|
return amount;
|
||||||
|
}
|
||||||
|
|
||||||
|
// підклас Пасажирський вагон який наслідує батьківський клас Вагони;
|
||||||
|
public class PassengerWagons : Wagons
|
||||||
|
{
|
||||||
|
public PassengerWagons(string type, int passengers, int baggage, string comfort, int amount) : base(type,
|
||||||
|
passengers, baggage, comfort, amount)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// підклас Вантажний вагон який наслідує батьківський клас Вагони;
|
||||||
|
public class FreightWagons : Wagons
|
||||||
|
{
|
||||||
|
public FreightWagons(string type, int baggage, int amount) : base(type, null, baggage, null, amount)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<module type="JAVA_MODULE" version="4">
|
|
||||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
||||||
<exclude-output />
|
|
||||||
<content url="file://$MODULE_DIR$">
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
|
||||||
</content>
|
|
||||||
<orderEntry type="inheritedJdk" />
|
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
|
||||||
</component>
|
|
||||||
</module>
|
|
||||||
Reference in New Issue
Block a user