Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2015, 01:01   #1
sky99
Пользователь
 
Регистрация: 07.05.2015
Сообщений: 18
По умолчанию Перевод кода

Пожалуйста, помогите с переводом кода. У меня код на С#, а мне нужно на Delphi

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;

namespace Labametr1
{
    static class MetrikSpena
    {
        static List<string> arrayIdentifiers = new List<string>();
        static List<int> arraySpensCount = new List<int>();
        static List<string> arraySpensValue = new List<string>();
        static int allIdentifier;

        static public void CountMetrik()
        {
            FindIdentifier();
            CountEverySpen();
            OutputMetrik();
        }

        static void FindIdentifier()
        {
            string pattern = @"\b[_a-zA-Z][_\da-zA-Z]*\b(?=\s*=)";
            RegexOptions option = RegexOptions.None;
            Regex newReg = new Regex(pattern, option);
            foreach (string line in Program.GetArrayStringsOfCod())
            {
                foreach (Match match in newReg.Matches(line))
                {
                    arrayIdentifiers.Add(match.Value);
                    allIdentifier++;
                }
            }
        }

        static void CountEverySpen()
        {
            int count = 0;
            arrayIdentifiers.Sort();
            for (int i = 0; i < allIdentifier - 1; i++)
            {
                if (arrayIdentifiers[i] == arrayIdentifiers[i + 1])
                {
                    count++; 
                }
                else
                {
                    
                    arraySpensCount.Add(count);
                    arraySpensValue.Add(arrayIdentifiers[i]);
                    count = 0;
                }
            }
            count++;
        }

        static void OutputMetrik()
        {
            Console.WriteLine();
            Console.WriteLine("Метрик cпена: ");
            for (int i = 0; i < arraySpensCount.Count; i++)
            {
                Console.Write("Переменная {0} повторяется {1}", arraySpensValue[i], arraySpensCount[i]);
                Console.WriteLine();
            }
        }
    }
}

Последний раз редактировалось Вадим Мошев; 20.12.2015 в 01:06.
sky99 вне форума Ответить с цитированием
Старый 20.12.2015, 08:07   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Вы только половину кода привели.
Вы привели исходный текст модуля MetrikSpena.cs

И в этом коде есть обращение к методу Program.GetArrayStringsOfCod(), описание которого у Вас здесь не приведено.
исправляю упущение
Модуль Program.cs
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
 
namespace Labametr1
{
    class Program
    {
        static List<string> arrayStringsOfCod = new List<string>();
 
        static public List<string> GetArrayStringsOfCod()
        {
            return arrayStringsOfCod;
        }
 
       
        static void Main(string[] args)
        {
            ReadCodFromFile();
            MetrikSpena.CountMetrik();
            Console.ReadKey();
        }
 
        public static void ReadCodFromFile()
        {
            string line;
            System.IO.StreamReader file = new System.IO.StreamReader(@"D:\lada.txt");
            while ((line = file.ReadLine()) != null)
            {
                arrayStringsOfCod.Add(line);
               
            }
            file.Close();
        }
 
    }
}
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод кода Smail95 Помощь студентам 1 30.05.2014 10:06
перевод кода С# на С++ NastyaShuvalova Общие вопросы C/C++ 1 12.05.2014 17:20
Перевод кода на С++ Golovastik Помощь студентам 0 04.06.2009 14:27