Дополнить/стереть массив при копировании из одного массива в другой - C#
Формулировка задачи:
Есть 2 массива byte[] A и byte[] B, нужно что-бы пока A<B он копировал первый байт из А в конец А, затем второй и тд пока не станет A=B. Если A>B нужно что-бы он удалял байты с конца А, пока не станет A=B. Помогите пожалуйста с кодом
кто-нибудь поможет с кодом?
Решение задачи: «Дополнить/стереть массив при копировании из одного массива в другой»
textual
Листинг программы
using System;
using System.Collections.Generic;
namespace ConsoleAppTest
{
class MainClass
{
static void BalancingArray(ref byte[] array, int len) {
int oldLen = array.Length;
if (len <= 0)
throw new ArgumentException(
"Передайте сюда длину массива или число, большее нуля.");
if (array.Length == len)
return;
Array.Resize(ref array, len);
if (oldLen < len) {
for (int i = 0; i < len - oldLen; i++) {
array[i + oldLen] = array[i];
}
}
}
public static void Main(string[] args) {
byte[] A = { 123, 12, 2 };
byte[] B = { 10, 7, 12, 9, 101, 104, 3, 16, 2 ,4 };
// byte[] B = { 10 };
// используйте именно так: перед именем массива ставьте ref
// для второго массива указывайте длину
BalancingArray(ref A, B.Length);
// вывод
foreach (byte b in A)
Console.WriteLine(b);
}
}
}