.NET 3.x Поиск совпадений в строках циклом - C#

Узнай цену своей работы

Формулировка задачи:

Поиск совпадений в строках циклом
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Title("Test");
 
            string[] find = File.ReadAllLines("111.txt");
            string[] scan = File.ReadAllLines("111.txt");
            for (int i = 0; i < find.Length; i++)
            {
                for (int j = 0; j < scan.Length; j++)
                {
                    if (i<j)
                    {
                        if(find[i].Trim()==scan[j])
                        Console.WriteLine(j+1);  // строки нумерованые совпадения
                    }
                }
            }
            Console.ReadKey(true);
        }
 
         static void Title(string t)
        {
            Console.Title = t;
            Console.BackgroundColor=ConsoleColor.DarkCyan;
            Console.Clear();
            Console.ForegroundColor=ConsoleColor.White;
        }
    }
}
Проверте товарищи правильно , я использую поиск совпадений строк циклом ?
Кажется нашол отсеить похожие
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Linq;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Title("Test");
            int k = 0;
            string txt=String.Empty;
            
            string[] find = File.ReadAllLines("111.txt");
            List<string> list = new List<string>();
            
            for (int i = 0; i < find.Length; i++)
            {
                list.Add(find[i]);
            }
 
            List<string> distinct = list.Distinct().ToList();
            for (int i = 0; i < distinct.Count; i++)
            {
                Console.WriteLine((i+1)+" :"+distinct[i]);
            }

            Console.ReadKey(true);
        }
 
         static void Title(string t)
        {
            Console.Title = t;
            Console.BackgroundColor=ConsoleColor.DarkCyan;
            Console.Clear();
            Console.ForegroundColor=ConsoleColor.White;
        }
    }
}
Но все таки надо получить совпадения ))
До пер
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Linq;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Title("Test");
            int k = 0;
            string txt=String.Empty;
            
            string[] find = File.ReadAllLines("111.txt");
            List<string> list = new List<string>();
            List<string> distinct = new List<string>();
            for (int i = 0; i < find.Length; i++)
            {
                list.Add(find[i]);
            }
 
             distinct = list.Distinct().ToList();
 
            for (int i = 0; i < distinct.Count; i++)
            {
                Console.WriteLine((i+1)+" :"+distinct[i]);
            }
            Console.WriteLine("\n\n");
 
            for (int i = 0; i < find.Length; i++)
            {
                for (int j = i+1; j < find.Length; j++)
                {
                    if (find[i]==find[j])
                    {
                        Console.WriteLine("Дубликат: "+(j+1));
                        break;
                    }
                }
            }
 
            Console.ReadKey(true);
        }
 
         static void Title(string t)
        {
            Console.Title = t;
            Console.BackgroundColor=ConsoleColor.DarkCyan;
            Console.Clear();
            Console.ForegroundColor=ConsoleColor.White;
        }
    }
}
Хих сам спросил , сам решил Пока
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Linq;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Title("Test");
            int k = 0;
            string txt=String.Empty;
            
            string[] find = File.ReadAllLines("111.txt");
            List<string> list = new List<string>();
            List<string> distinct = new List<string>();
            for (int i = 0; i < find.Length; i++)
            {
                list.Add(find[i]);
            }
            Console.WriteLine("Список вместе с Дубликатами\n");
            for (int i = 0; i < list.Count; i++)
            {
               Console.WriteLine((i+1)+" :{0}",list[i]); 
            }
 
             distinct = list.Distinct().ToList();
             Console.WriteLine("\n\n");
             Console.WriteLine("Список без Дубликатов\n");
            for (int i = 0; i < distinct.Count; i++)
            {
                Console.WriteLine((i+1)+" :"+distinct[i]);
            }
            Console.WriteLine("\n\n");
            Console.WriteLine("Список индексов Дубликатов\n");
            for (int i = 0; i < find.Length; i++)
            {
                for (int j = i+1; j < find.Length; j++)
                {
                    if (find[i]==find[j])
                    {
                        Console.WriteLine("Дубликат: "+(j+1));
                        break;
                    }
                }
            }
 
            Console.ReadKey(true);
        }
 
         static void Title(string t)
        {
            Console.Title = t;
            Console.BackgroundColor=ConsoleColor.DarkCyan;
            Console.Clear();
            Console.ForegroundColor=ConsoleColor.White;
        }
    }
}

Решение задачи: «.NET 3.x Поиск совпадений в строках циклом»

textual
Листинг программы
 private void button2_Click(object sender, EventArgs e)
        {
            int dat1 = 0, dat2 = 0,k=0;
            int[] del = null;
            dat1 = dataGridView1.Rows.Count - 1;
            dat2 = dataGridView2.Rows.Count - 1;
            List<string> list = new List<string>();
            List<string> distinct = new List<string>();
            if (dat1==dat2)
            {
                using (StreamWriter sw=new StreamWriter("dell.tmp",false,Encoding.GetEncoding(1251)))
                {
                    for (int i = 0; i < dat2; i++)
                    {
                        for (int j = i + 1; j < dat2; j++)
                        {
                            if (dataGridView2.Rows[i].Cells[0].Value.ToString() == dataGridView2.Rows[j].Cells[0].Value.ToString())
                            {
                                
                                sw.WriteLine(j);
                                
                            }
                        }
                    }
                    
                }
                if (File.Exists("dell.tmp") == true)
                {
                    string[] dellm = File.ReadAllLines("dell.tmp");
                    for (int i = 0; i < dellm.Length; i++)
                    {
                        
                        //MessageBox.Show(dataGridView2.Rows[Convert.ToInt32(dellm[i])].Cells[0].Value.ToString() + "\n" + dataGridView1.Rows[Convert.ToInt32(dellm[i])].Cells[0].Value.ToString());
                        //MessageBox.Show(dellm[i]);
                        dataGridView1.Rows.RemoveAt(Convert.ToInt32(dellm[(i)]));
                        dataGridView2.Rows.RemoveAt(Convert.ToInt32(dellm[(i)]));
                    }
                    File.Delete("dell.tmp");
                }
                label1.Text = "Lines: " + (dataGridView1.Rows.Count - 1);
                label2.Text = "Lines: " + (dataGridView2.Rows.Count - 1);
                MessageBox.Show("Проверка окончена!","INFO",MessageBoxButtons.OK,MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Не соответствие строк , и контролеров\n\n"+"Строки: "+dat1+"\nКонтролеры: "+dat2, "ERROR",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.714 из 5
Похожие ответы