نمایش نتایج 1 تا 2 از 2

نام تاپیک: پیدا کردن کلمات مترادف

  1. #1
    کاربر جدید آواتار Code-up
    تاریخ عضویت
    تیر 1391
    محل زندگی
    شمـــــــــــال
    پست
    7

    Lightbulb پیدا کردن کلمات مترادف

    سلام

    20 تا کلمه که اونارو توی buttonها داریم
    هر کدوم از این کلمه‌ها یه عدد هم داره که توی عکس مشخصه. (این اعداد و کلمه‌هارو از یک فایل text میخونم و کاملا مشخصه که هر عدد با یک کلمه لینک شده)
    مثلا پارچه و قماش یا به عبارتی عدد 12 و 15 هم‌معنی هستند یا برعکس، قماش و پارچه و 15 و 12.
    با چه الگوریتمی میشه اینکارو انجام داد؟
    چطور متوجه بشیم درست انخاب شدند و اگر دست بودند از جدول حذف بشن.


    فایل تکستی که این اطلاعات نوشته شده و لود میکنم.
    moteradef.zip

    تصویر جدول:
    s.png

  2. #2
    کاربر دائمی آواتار ShayanFiroozi
    تاریخ عضویت
    شهریور 1397
    محل زندگی
    بندرعباس ، خلیج همیشه فارس
    سن
    38
    پست
    224

    نقل قول: پیدا کردن کلمات مترادف

    سلام دوست عزیز ،

    متاسفانه بنده سینکس VB رو فراموش کردم که کدشو براتون بنویسم اما امیدوارم شرح دادنش کمکتون کنه :

    1- شما یک کلاس تعریف کنین که شامل خود کلمه ، شماره کلمه و شماره مترادفش باشه.

    2- از اون کلاس یه لیست تعریف کنین که بتونیم هر بار یک عنصر(از نوع کلاسی که تعریف کردیم که شامل کلمه ، شماره کلمه و شماره مترادفش) بهش اضافه کنیم.

    3- حالا هر وقت که بخوایم کل لیست رو پیمایش میکنیم و عناصر رو با هم مقایسه میکنیم و اگر کاربر صحیح انتخاب کرده بود از لیست حذفش میکنیم.

    ** البته این فقط برای زمانی جواب میده که هر کلمه فقط یک مترادف داشته باشه اگر هر کلمه بخواد n تا مترادف داشته باشه یکم پیچیده تر میشه.

    تا حدودی با سی شارپ براتون پیاده سازی کردم که بهتون کمک میکنه روش رو درک کنین ولی زحمت تبدیلش به عهده خودتون

    public static class cWords
    {


    /// <summary>
    /// لیستی که کلمات ما رو نگه میدارن ، در واقع لیستی از کلاس cWord
    /// </summary>
    public static List<cWord> WordList = new List<cWord>();


    /// <summary>
    /// کلاسی که یک کلمه + کد اون کلمه + کلمه مترادف + کد کلمه مترادف رو ذخیره میکنه
    /// </summary>
    public class cWord
    {
    /// <summary>
    /// خود کلمه
    /// </summary>
    public string Word { get; set; }


    /// <summary>
    /// شماره کلمه
    /// </summary>
    public int WordID { get; set; }


    /// <summary>
    /// کلمه مترادف
    /// </summary>
    public string WordSysnonim { get; set; }




    /// <summary>
    /// شماره کلمه مترادف
    /// </summary>
    public int WordSysnonimID { get; set; }






    public cWord(string Word, int WordID, string WordSysnonim, int WordSysnonimID)
    {
    this.Word = Word;
    this.WordID = WordID;
    this.WordSysnonim = WordSysnonim;
    this.WordSysnonimID = WordSysnonimID;
    }






    }






    public static void Add_Word(string Word, int WordID, string WordSysnonim, int WordSysnonimID)
    {
    WordList.Add(new cWord(Word, WordID, WordSysnonim, WordSysnonimID));
    }




    public static void Clear_List()
    {
    WordList.Clear();
    }




    public static bool Is_Words_Sysnonims(string Word1,string Word2)
    {
    foreach (cWord _Word in WordList)
    {
    if ((_Word.Word == Word1 && _Word.WordSysnonim == Word2) || (_Word.Word == Word2 && _Word.WordSysnonim == Word1))
    {
    return true;
    }
    }


    return false;
    }




    public static bool Is_WordsID_Sysnonims(int Word1_ID, int Word2_ID)
    {
    foreach (cWord _Word in WordList)
    {
    if ((_Word.WordID == Word1_ID && _Word.WordSysnonimID == Word2_ID) || (_Word.WordID == Word2_ID && _Word.WordSysnonimID == Word1_ID))
    {
    return true;
    }
    }


    return false;
    }







    }



تاپیک های مشابه

  1. پاسخ: 0
    آخرین پست: سه شنبه 18 اسفند 1394, 03:20 صبح
  2. پاسخ: 0
    آخرین پست: شنبه 25 آذر 1391, 09:45 صبح
  3. پاسخ: 0
    آخرین پست: سه شنبه 04 مرداد 1390, 13:06 عصر
  4. پاسخ: 1
    آخرین پست: پنج شنبه 05 خرداد 1390, 21:45 عصر
  5. کامپوننت تغییر کد پیج سینا به کد پیجهای فارسی ویندوز ؟
    نوشته شده توسط mahdi939 در بخش کامپوننت های سایر شرکت ها، و توسعه کامپوننت
    پاسخ: 2
    آخرین پست: یک شنبه 08 خرداد 1384, 19:53 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •