Se dau doua multimi de numere intregi memorate cu ajutorul vectorilor. Să se calculeze reuniunea celor două multimi.
Analiza Programului
Reuniunea a doua multimi, A si B,(A U B), reprezinta multimea tuturor elementelor care sunt membri fie ai lui A, fie ai lui B.
using System; namespace _38 { class Program { static void Main(string[] args) { int n, m; //numarul maxim de elemente pentru prima multime Console.WriteLine("Introduceti cardinalitatea primei multimi:"); n = int.Parse(Console.ReadLine()); //numarul maxim de elemente pentru a doua multime Console.WriteLine("Introduceti cardinalitatea celei de a doua multimi:"); m = int.Parse(Console.ReadLine()); //declararea celor doua vectori float[] a = new float[n+m]; float[] b = new float[m]; //elementele din prima multime Console.WriteLine("Introduceti elementele primei multimi:"); for (int i = 0; i < n; i++) { Console.WriteLine("A[{0}]=", i); a[i] = float.Parse(Console.ReadLine()); } //elementele din a doua multime Console.WriteLine("Introduceti elementele celei de a doua multimi:"); for (int i = 0; i < m; i++) { Console.WriteLine("B[{0}]=", i); b[i] = float.Parse(Console.ReadLine()); } int pos = n; bool find; //iteram prin elementele celei de-a doua multimi for (int j = 0; j < m; j++) { find = false; //iteram prin elemente primei multimi for (int i = 0; i < m; i++) { //daca elementul se afla in prima multime, il sarim if (b[j] == a[i]) { find = true; break; } } //daca elementul nu se repeta, il vom adauga langa elementele din prima multime //si vom incrementa pozitia vectorului final pentru elementul urmator if (!find) { a[pos] = b[j]; pos++; } } Console.WriteLine("Rezultatul reuniunii:"); n = pos; for (int i = 0; i < n; i++) Console.WriteLine("{0}", a[i]); Console.Read(); } } }
Category: Uncategorized