Готовая лабораторная 4

This commit is contained in:
sqdselo 2024-04-28 10:26:11 +04:00
parent 052b9929c1
commit 21f4acf2d5
2 changed files with 20 additions and 14 deletions

View File

@ -31,7 +31,7 @@ namespace HoistingCrane.CollectionGenericObjects
{ {
get get
{ {
return (pictureWidth * pictureHeight) / (_placeSizeHeight * _placeSizeWidth); return (pictureWidth * pictureHeight) / (_placeSizeHeight * _placeSizeWidth)-3;
} }
} }
public AbstractCompany(int picWidth, int picHeight, ICollectionGenericObjects<DrawningTrackedVehicle> array) public AbstractCompany(int picWidth, int picHeight, ICollectionGenericObjects<DrawningTrackedVehicle> array)

View File

@ -45,29 +45,35 @@ namespace HoistingCrane.CollectionGenericObjects
public int Insert(T obj, int position) public int Insert(T obj, int position)
{ {
//todo Проверка позиции
if (position < 0 || position > Count) if (position < 0 || position >= Count)
{ {
return -1; return -1;
} }
if (arr[position] == null) int copyPos = position - 1;
while (position < Count)
{ {
arr[position] = obj; if (arr[position] == null)
return position;
}
else
{
if (Insert(obj, position + 1) != -1)
{
return position;
}
if (Insert(obj, position - 1) != -1)
{ {
arr[position] = obj;
return position; return position;
} }
position++;
} }
while (copyPos > 0)
{
if (arr[copyPos] == null)
{
arr[copyPos] = obj;
return copyPos;
}
copyPos--;
}
return -1; return -1;
} }
public T? Remove(int position) public T? Remove(int position)