Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 12. We are given 5 integer numbers. Write a program that finds all subsets of these numbers whose sum is 0.
- // Assume that repeating the same subset several times is not a problem.
- using System;
- class ZeroSubsets
- {
- static void Main()
- {
- Console.Write("Enter a line of 5 numbers: ");
- string[] line = Console.ReadLine().Split();
- int[] numbers = new int[5];
- int subset = 0;
- int sum = 0;
- byte counter = 0;
- for (int i = 0; i < numbers.Length; i++)
- {
- numbers[i] = int.Parse(line[i]);
- }
- sum = numbers[0];
- for (int i = 0; i < numbers.Length - 1; i++)
- {
- for (int y = i + 1; y < numbers.Length; y++)
- {
- subset = sum + numbers[y];
- if (subset == 0)
- {
- counter++;
- Console.Write(numbers[i]);
- for (int z = i + 1; z <= y; z++)
- {
- Console.Write(" + ");
- Console.Write(numbers[z]);
- }
- Console.WriteLine(" = {0}", subset);
- }
- }
- sum = sum + numbers[i + 1];
- }
- if (counter == 0)
- {
- Console.WriteLine("No zero subsets!");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement