Smaller, greater or equal?

Здравейте, тази задача ме затруднява, дали ако е възможно да се даде някакво решение.
Write a program that reads from the console a sequence of n integer numbers and returns these numbers on a single line with the correct sign ( < , > or = ) between the numbers.

using System;
using System.Linq;
using System.Collections.Generic;

namespace Rotate_List
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] input = Console.ReadLine().Split(' ');
            int[] nums = new int[input.Length];

            List<string> result = new List<string>();
            for (int i = 0; i < input.Length; i++)
            {
                nums[i] = int.Parse(input[i]);
            }
            result.Add(nums[0].ToString());

            for (int i = 0; i < nums.Length - 1; i++)
            {
                if (nums[i] < nums[i + 1])
                {
                    result.Add("<");
                }
                if (nums[i] == nums[i + 1])
                {
                    result.Add("=");
                }
                if (nums[i] > nums[i + 1])
                {
                    result.Add(">");
                }
                result.Add(nums[i + 1].ToString());
            }
            Console.WriteLine(string.Join(" ", result));
        }
    }
}
1 Like

Благодаря много!

За нищо. Разбираш ли всичко което се случва ? Ако има нещо неясно, питай.

Здравей Миро/Георги

Аз също много мъчех тази задача, без масив. Понеже това е следващата ни лекция, ще е любопитно да намерим решение без да използваме този метод.
Някакви насоки? Благодаря предварително

И аз не намерих решение без масив, доста ме измъчи и мен…

1 Like

Ето идея , но не е доизпипано.

using System;
using System.Linq;
using System.Collections.Generic;

namespace Rotate_List
{
    class Program
    {
        static void Main(string[] args)
        {
            string result = "";
            int temp = 0;
            int current = 0;
            int count = int.Parse(Console.ReadLine());
            for (int i = 0; i < count; i++)
            {
                current = int.Parse(Console.ReadLine());

                if (current > temp)
                {
                    result += "<" + current;
                    temp = current;
                }
                else if (current < temp)
                {
                    result += ">" + current;
                    temp = current;
                }
                else if (current == temp)
                {
                    result += "=" + current;
                }
            }
            Console.WriteLine(result);

        }
    }
}
1 Like

Бутнах го малко , кажете дали е това все пак :slight_smile:

using System;
using System.Linq;
using System.Collections.Generic;

namespace Rotate_List
{
    class Program
    {
        static void Main(string[] args)
        {
            string result = "";
            int temp = 0;
            
            int count = int.Parse(Console.ReadLine());
            for (int i = 0; i < count - 1; i++)
            {
                if(i == 0)
                {
                    int num = int.Parse(Console.ReadLine());
                    temp = num;
                    result += num;
                }
               int current = int.Parse(Console.ReadLine());

                if (current > temp)
                {
                    result += "<" + current;
                    temp = current;
                }
                else if (current < temp)
                {
                    result += ">" + current;
                    temp = current;
                }
                else if (current == temp)
                {
                    result += "=" + current;
                }
            }
            Console.WriteLine(result);

        }
    }
}
2 Likes

При мен работи. Браво! Много благодаря! Tочно тази първа проверка в цикъла ми убягваше…

1 Like