Skip to content

Commit 84ac078

Browse files
committed
AAAAAAAA
1 parent 8f0f22c commit 84ac078

File tree

7 files changed

+66
-29
lines changed

7 files changed

+66
-29
lines changed

task4.1/ArrayBase.cs

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
using System;
22

3-
public abstract class ArrayBase : IArrayBase
3+
public abstract class ArrayBase
44
{
55
public abstract void Print();
6-
protected abstract void RandFill();
7-
protected abstract void HandFill();
86
}

task4.1/IArray.cs

-4
This file was deleted.

task4.1/IArrayBase.cs

-4
This file was deleted.

task4.1/IPrinter.cs

-4
This file was deleted.

task4.1/Program.cs

+23-1
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,33 @@
11
using System;
2+
using static System.Runtime.InteropServices.JavaScript.JSType;
3+
24

35
namespace task4._1;
46
class Program
57
{
68
public static void Main(string[] args)
79
{
8-
UnoDimensional<int> uno = new();
10+
UnoDimensional<int> unoInt = new(arrayFillIntDefault(7));
11+
unoInt.Add(1);
12+
unoInt.Print();
13+
14+
UnoDimensional<int> uno = new(arrayFillIntDefault(30));
15+
uno.Add(15);
16+
uno.Print();
917

18+
// UnoDimensional<string> unoString = new();
19+
// unoString.Add("sdfsdfs");
20+
// unoString.Print();
21+
}
22+
23+
public static int[] arrayFillIntDefault(int length)
24+
{
25+
int[] array = new int[length];
26+
Random rand = new Random();
27+
for (int i = 0; i < length; i++)
28+
{
29+
array[i] = rand.Next(-1024, 1024);
30+
}
31+
return array;
1032
}
1133
}

task4.1/task4.1.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net8.0</TargetFramework>
5+
<TargetFramework>net7.0</TargetFramework>
66
<RootNamespace>task4._1</RootNamespace>
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>

task4.1/uno.cs

+41-12
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,14 @@
11
using System;
22

3+
34
namespace task4._1;
4-
public class UnoDimensional<T>
5+
public class UnoDimensional<T> : ArrayBase
56
{
67
private T[] _array;
78

8-
public UnoDimensional()
9-
{
10-
_array = new T[7];
11-
Create();
12-
}
13-
14-
public T[] Add(T element)
9+
public UnoDimensional(T[] array)
1510
{
16-
11+
_array = array;
1712
}
1813

1914
public T[] Where(Func<T, bool> condition)
@@ -22,14 +17,48 @@ public T[] Where(Func<T, bool> condition)
2217
int count = 0;
2318
for (int i = 0; i < _array.Length; i++)
2419
{
25-
if (condition(arr[i]))
20+
if (condition(_arr[i]))
2621
{
2722
_arr[count++] = _array[i];
2823
}
2924
}
30-
Array.Resize(_arr, count);
25+
Array.Resize(ref _arr, count);
26+
return _arr;
27+
}
28+
29+
public T[] Add(T element)
30+
{
31+
T[] _arr = new T[_array.Length + 1];
32+
_arr[_arr.Length - 1] = element;
3133
return _arr;
32-
}
34+
}
35+
36+
public T[] Remove(T element)
37+
{
38+
T[] _arr = new T[_array.Length - 1];
39+
for (int i = 0; i < _arr.Length; i++)
40+
{
41+
if (_arr[i] == element)
42+
{
43+
continue;
44+
}
45+
_arr[i] = _array[i];
46+
}
47+
Array.Resize(ref _arr, _arr.Length - 1);
48+
return _arr;
49+
}
50+
51+
52+
public T[] Reverse()
53+
{
54+
T[] _arr = new T[_array.Length];
55+
int count = 0;
56+
for (int i = _arr.Length; i >= 0; i--)
57+
{
58+
_arr[i] = _array[count++];
59+
}
60+
return _arr;
61+
}
3362

3463
public override void Print()
3564
{

0 commit comments

Comments
 (0)