Страница 1 из 1

Прошу помощи С# (в долгу не останусь)

Добавлено: 29 дек 2009, 01:29
Ronin01
Задачи вроде легкие, когда язык знаешь, а когда не знаешь - просто китайская грамота(((( Нужна помощь - буду очень благодарен (пополню счет номера вашего телефона)!!!!!!!
Задача 1
Написать и протестировать функцию, которая "переворачивает" строку, передаваемую ей в качестве параметра.
Задача 2
Написать и протестировать функцию, подсчитывающую количество минимальных элементов в целочисленной матрице.

Re: Прошу помощи С# (в долгу не останусь)

Добавлено: 29 дек 2009, 13:58
WinMain
Примерно так будет выглядеть программный код на C# для первой задачи...

Код: Выделить всё

 
using System;
using System.Collections.Generic;
using System.Text;
 
namespace RevStr
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = "Пример строки...";
            Console.WriteLine(ReverceString(str));
            Console.ReadLine();
        }
 
        static string ReverceString(string str)
        {
            char[] chars = str.ToCharArray();
            int strLen = chars.Length;
            if (strLen > 1)
            {
                int k = strLen - 1;
                for (int n = 0; n < k; n++, k--)
                {
                    char tmp = chars[n];
                    chars[n] = chars[k];
                    chars[k] = tmp;
                }
            }
            return new string(chars);
        }
    }
}

Re: Прошу помощи С# (в долгу не останусь)

Добавлено: 29 дек 2009, 14:38
Ronin01
А вторую задачу можете решить? Очень нужно!!!! и еще один глупый вопрос: в какой среде можно получить .ехе-шник, только не в Visual C#, чтобы прога работала вобщем нужно...

Re: Прошу помощи С# (в долгу не останусь)

Добавлено: 30 дек 2009, 00:39
Newbie
Ronin01 писал(а): Задача 2
Написать и протестировать функцию, подсчитывающую количество минимальных элементов в целочисленной матрице.
Можно решить ее таким способом: (просто переши под функцию которая будет возвращать Pair)

Код: Выделить всё

class Program
	{
		static void Main(string[] args)
		{
			int[,] matrix = new int[10, 10];
			Random r = new Random();
			for(int i = 0; i < 10; i++)
			{
				for(int j = 0; j < 10; j++)
				{
					matrix[i, j] = r.Next(10);
					Console.Write(matrix[i, j]);
					Console.Write(" ");
				}
				Console.WriteLine();
			}
			int min = matrix[1,1];
			int count = 0;
			for(int i = 0; i < 10; i++)
				for(int j = 0; j < 10; j++)
				{
					if(matrix[i,j] < min)
					{
						count = 1;
						min = matrix[i, j];
						continue; 
					}
					if (matrix[i, j] == min)
						count++;
				}
			Console.WriteLine("min = " + min.ToString());
			Console.WriteLine("count = " + count.ToString());
			Console.ReadKey();
		}
	}