NelIfandieva

LeftSum_RightSum_Zdravko

Oct 26th, 2019
112
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2.  
  3. namespace ConsoleApp210
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             /*Условието на задачата: от конзолата получаваме едно число n.
  10.              * После ще получим 2 * n числа. Сумата на първите n от тях трябва да запазим в една
  11.              * променлива, сумата на вторите n числя - в друга. На финала трябва да проверим,
  12.              * дали двете суми са еднакви и, ако е така, да изпишем едно нещо, а ако не са еднакви -
  13.              * да изпишем друго.*/
  14.  
  15.             int n = int.Parse(Console.ReadLine());
  16.             int desniF = 0;
  17.             int leviF = 0;
  18.             for (int i = 1; i < n * 2; i++)
  19.             {
  20.                 int num = int.Parse(Console.ReadLine());
  21.                 /*Дотук всичко е наред, само цикълът трябва да се заърти 2 * n пъти,
  22.                  * докато в този код той се върти (2 * n) - 1 пъти */
  23.  
  24.                 for (i = 1; i < n; i++)
  25.                 {
  26.                     int levi = num + num;
  27.                     leviF += levi;
  28.                 }
  29.  
  30.                 /*С този, втори цикъл, започват проблемите: най-напред, за него ползвате същата променлива i,
  31.                  * която върти основния цикъл. с което променяте нейната стойност. Този втори цикъл го въртите от 1 до n - 1.
  32.                  * В нова целочислена променлива събирате първото число, което сте получили в основния си цикъл, със самото себе си.
  33.                  * Получения сбор задавате като стойност на leviF
  34.                  * */
  35.  
  36.  
  37.                 for (i = 1; i > n; i++)
  38.                 {
  39.                     int desni = num + num;
  40.                     desniF += desni;
  41.                 }
  42.  
  43.                 /*Вътрешен цикъл номер 2 никога няма да се завърти, освен, ако n <= 0. Обаче пък, ако n <= 0,
  44.                  * никога няма да се завърти най-външния цикъл */
  45.  
  46.                 if (desniF == leviF)
  47.                 {
  48.                     Console.WriteLine("Yes, sum = " + leviF);
  49.                 }
  50.                 else
  51.                 {
  52.                     Console.WriteLine("No, diff is " + ((leviF * 1) - (desniF * 1)));
  53.                 }
  54.                 /*Дори всичко нагоре да беше наред, проверката, дали двете суми са равни
  55.                  * трябва да бъде направена след приключването на цикъла, в който събираме числата.
  56.                  * Когато я правим в цикъл, проверяваме дали в дадения момент само двете суми са еднакви.
  57.                  * Може да е валиден случай, но при друго условие на задачата.*/
  58.             }
  59.         }
  60.     }
  61. }
RAW Paste Data