A może z użyciem Linq ? Pamiętaj żeby na początku pliku dodać:
using System.Linq;
static void Main()
{
var a = new int[] { -2, -1, 0, 1, 4 };
var b = new int[] { -3, -2, -1, 1, 2, 3 };
for (int i = 0; i < a.Length; i++)
{
if (!b.Contains(a[i]))
{
Console.Write(a[i] + " ");
}
else if (a[i] == 0)
{
Console.WriteLine("empty");
break;
}
}
}
W zasadzie to z użyciem Linq przy typach prostych możesz użyć metody Except żeby pozbyć się powtarzających się elementów
static void Main()
{
var a = new int[] { -2, -1, 0, 1, 4 };
var b = new int[] { -3, -2, -1, 1, 2, 3 };
int[] c = a.Except(b).ToArray();
foreach (var i in c)
{
Console.Write(i + " ");
}
}
Tutaj jeszcze sposób bez Linq, z użyciem drugiej pętli
static void Main(string[] args)
{
var a = new int[] { -2, -1, 0, 1, 4 };
var b = new int[] { -3, -2, -1, 1, 2, 3 };
for (int i = 0; i < a.Length; i++)
{
bool isInArrayA = false;
for (int j = 0; j < b.Length; j++)
{
if (a[i] == b[j])
{
isInArrayA = true;
break;
}
}
if (!isInArrayA)
{
Console.Write(a[i] + " ");
}
else if(a[i] == 0)
{
Console.WriteLine("empty");
break;
}
}
}