اطلاعیه

Collapse
No announcement yet.

c++ گروهی

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #76
    پاسخ : c++ گروهی

    نوشته اصلی توسط negin-bahadori
    ماتریس و چطوری میآ‌شه به جاییآ‌ که پوینتر داره اشاره میآ‌کنه کپیآ‌ کرد؟
    با استفاده از عملگر * میتونید مقداری که اشاره گر بهش اشاره میکنه را داشته باشید.


    تو پست زیر مختصری در رابطه با اشاره گر ها گفته شده:
    http://www.eca.ir/forum2/index.php?topic=81025.msg504661#msg504661

    در پست زیر هم مختصری در رابطه با ++C و شی گرایی گفته شده:
    http://www.eca.ir/forum2/index.php?topic=81025.msg511252#msg511252
    راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو) : http://www.eca.ir/forum2/index.php?topic=78587.0
    کوچ کردن از کدویژن به http://www.eca.ir/forum2/index.php?topic=81025.0 : AtmelStudio
    نحوه نوشتن اصولی یک لایبرری و درایور نرم افزاری( بصورت ساده) : http://www.eca.ir/forum2/index.php?topic=81071
    http://www.eca.ir/forum2/index.php?topic=82130.0 سفارش راه انداز ماژول های مختلف توسط اعضای انجمن
    انشالله به زودی تاپیک ها به روز رسانی خواهد شد،

    دیدگاه

    • ۲٬۱۶۳٬۰۰۰ ریال ۱٬۷۳۰٬۴۰۰ ریال
      ۷۵٬۰۰۰٬۰۰۰ ریال ۷۲٬۷۵۰٬۰۰۰ ریال
      ۱٬۲۳۰٬۰۰۰ ریال ۹۲۲٬۵۰۰ ریال
      ۱٬۲۹۰٬۰۰۰ ریال ۷۷۴٬۰۰۰ ریال
      ۲٬۷۴۰٬۰۰۰ ریال ۲٬۴۶۶٬۰۰۰ ریال
      ۵۳٬۶۰۰٬۰۰۰ ریال ۵۰٬۹۲۰٬۰۰۰ ریال

      #77
      پاسخ : c++ گروهی

      تا اینجاشو میدونستم ؛)

      ممنون که وقت گذاشتین..

      دیدگاه


        #78
        پاسخ : c++ گروهی

        ببخشیدا چرا انقدر نظم اموزشاتون بهم ریخت.شما که به ترتیب و خوب مرحله به مرحله رو داشتید می گفتید؟ oo:
        [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]
        وبسایت ختم صلوات
        http://www.salavaty.com/

        دیدگاه


          #79
          پاسخ : c++ گروهی

          راستش اولین دلیلش این بود که خیلیآ‌ به حاشیه رفت! برنامه داشتم که از مدیر این بخش بخوام که اجازه بده پستهای مرتبط و منتقل کنم به یه پست جدید که البته تا این لحظه این کارو نکردم!...حالا اگه نشد که اینجا ادامه بدیم یه پیج فیسآ‌بوک باز میآ‌کنیم و منظم میریم جلو ...

          دیدگاه


            #80
            پاسخ : c++ گروهی

            نوشته اصلی توسط negin-bahadori
            تا اینجاشو میدونستم ؛)

            ممنون که وقت گذاشتین..
            ببنید شما مثلا یک ماتریس دو بعدی به شکل زیر دارید:
            کد:
            int m[10][10];
            این یه ماتریس 10 در 10 هست.
            حالا یه پوینترم دارید به شکل زیر:
            کد:
            int *ptr;
            برای اینکه محتویات ماتریس را بریزید جای پوینتره کافیه یک حلقه for ایجاد کنید به تعداد درایه های ماتریس و با عملگر * بریزید جایی که پوینتر بهش اشاره میکنه.

            کد:
            for ( int i=0 ; i<100 ;i++)
            	*(ptr+i)=*(m+i);
            نکته 1 : اسم یک ماتریس یا هر آرایه n بعدی، یک اشاره گر به عنصر اول اون آرایه است.( دیدید که اینجا m مثل یک اشاره گر عمل کرد)

            نکته 2: همیشه در اینگونه برنامه ها باید قبل از ریختن مقادیر به محلی که اشاره گر به آن اشاره میکنه، از سیستم عامل مقدار حافظه ی مورد نیاز را رزرو کنیم.(در ورژن های قدیمی در صورتی که این رعایت نمیشد ،با اینکار احتمال داشت سیستم عامل کامل هنگ کنه.)
            راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو) : http://www.eca.ir/forum2/index.php?topic=78587.0
            کوچ کردن از کدویژن به http://www.eca.ir/forum2/index.php?topic=81025.0 : AtmelStudio
            نحوه نوشتن اصولی یک لایبرری و درایور نرم افزاری( بصورت ساده) : http://www.eca.ir/forum2/index.php?topic=81071
            http://www.eca.ir/forum2/index.php?topic=82130.0 سفارش راه انداز ماژول های مختلف توسط اعضای انجمن
            انشالله به زودی تاپیک ها به روز رسانی خواهد شد،

            دیدگاه


              #81
              پاسخ : c++ گروهی

              اگه سایز سطر و ستون ماتریس یکیآ‌ نبودن چیآ‌...؟؟

              دیدگاه


                #82
                پاسخ : c++ گروهی

                نوشته اصلی توسط negin-bahadori
                اگه سایز سطر و ستون ماتریس یکیآ‌ نبودن چیآ‌...؟؟
                خوب کلا سطر و ستون را در هم ضرب کنید.
                مثلا 10 در 20 میشه 200 . حالا حلقه دویست بار باید تکرار بشه.

                کلا اینکه میگیم ماتریس یک دید برای خودمونه و در حافظه فرقی نداره چه هزار بعدی باشه چه 1 بعدی پشت سر هم ذخیره میشه . حالا دید ما هست که مهمه ولی برای حافظه فرقی نداره.
                راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو) : http://www.eca.ir/forum2/index.php?topic=78587.0
                کوچ کردن از کدویژن به http://www.eca.ir/forum2/index.php?topic=81025.0 : AtmelStudio
                نحوه نوشتن اصولی یک لایبرری و درایور نرم افزاری( بصورت ساده) : http://www.eca.ir/forum2/index.php?topic=81071
                http://www.eca.ir/forum2/index.php?topic=82130.0 سفارش راه انداز ماژول های مختلف توسط اعضای انجمن
                انشالله به زودی تاپیک ها به روز رسانی خواهد شد،

                دیدگاه


                  #83
                  پاسخ : c++ گروهی

                  مرسیآ‌ از اینکه وقت میذارید...

                  راستش قضیه اینه که من دارم image processing کار میآ‌کنم و از opencv library استفاده میآ‌کنم...دیتایی که دارم real-time از سنسور دریافت میآ‌کنم و بصورتِ ماتریس دراوردم! دلیلشم این بود که فانکشنی که میآ‌خواستم apply کنم به برنامم از من ورودی رو به صورت ماتریس میآ‌خواست,...پس الان ورودی من به این فانکشن ماتریس. چیزی که توی خود تعریف تابعآ‌اش نوشته اینه که خروجی که بهم میده هم به صورت ماتریس خواهد بود..احتمالا این یعنیآ‌ من باید به صورت ماتریس بهش نگاه کنم (حتا اگه در memory بصورت پشت سر هم ذخیره میآ‌شه!)..حالا من میآ‌خوام این خروجی رو به جایی که pointer م (که جنسش float e ) اشاره میآ‌کنه کپیآ‌ کنم...

                  الان میآ‌شه نظرتونو بدید؟


                  دیدگاه


                    #84
                    پاسخ : c++ گروهی

                    نوشته اصلی توسط negin-bahadori
                    مرسیآ‌ از اینکه وقت میذارید...

                    راستش قضیه اینه که من دارم image processing کار میآ‌کنم و از opencv library استفاده میآ‌کنم...دیتایی که دارم real-time از سنسور دریافت میآ‌کنم و بصورتِ ماتریس دراوردم! دلیلشم این بود که فانکشنی که میآ‌خواستم apply کنم به برنامم از من ورودی رو به صورت ماتریس میآ‌خواست,...پس الان ورودی من به این فانکشن ماتریس. چیزی که توی خود تعریف تابعآ‌اش نوشته اینه که خروجی که بهم میده هم به صورت ماتریس خواهد بود..احتمالا این یعنیآ‌ من باید به صورت ماتریس بهش نگاه کنم (حتا اگه در memory بصورت پشت سر هم ذخیره میآ‌شه!)..حالا من میآ‌خوام این خروجی رو به جایی که pointer م (که جنسش float e ) اشاره میآ‌کنه کپیآ‌ کنم...

                    الان میآ‌شه نظرتونو بدید؟
                    خواهش میکنم.

                    خوب مشکلی نداره دیگه.
                    من فقط با جمله داخل پرانتز که گفتید " (حتا اگه در memory بصورت پشت سر هم ذخیره میآ‌شه!) " مشکل دارم:
                    اول اینکه حتی با الف نوشته شده :mrgreen: شوخی میکنم

                    در رابطه با این شما وقتی میگید ماتریس . این یعنی آرایه دوبعدی .
                    وقتی میگیم آرایه . این یعنی درایه ها پشت سرهم در حافظه ذخیره میشوند .
                    به خاطه همین خصوصیتشه که اون حلقه for میتونه مقدار کل درایه ها را بکشه بیرون.


                    شما نمیتونید بگید من میخوام ماتریسی بهش نگاه کنم و حافظه ای نگاه نکنم . شما باید هم ماتریسی بهش نگاه کنید هم حافظه ای.

                    ولی خوب الان شما یه دید ماتریسی به قضیه دارید و بیخیال حافظه و پیاده سازیش تو حافظه.

                    خروجی تابع یک ماتریس است. پس باید خروجی را به یک اشاره گر به اشاره گر آرایه ی یک بعدی بدید یا اینکه ، راحت ترش اینه که: باید به یک اشاره گر به یک آرایه دو بعدی بدید.

                    نه نترسید . مثال زیر را نگاه کنید بعد دوباره بیاید جمله بالا را بخونید . اگر متوجه نشدید دوباره بخونید و...

                    دو اعلان زیر را نگاه کنید:
                    کد:
                    int m1[10];
                    
                    int m2[10][10];
                    الان m1 خودش یک اشاره گر به یک آرایه ی یک بعدی است.

                    حالا m2 چیه؟
                    خوب m2 هم یک اشاره گر به آرایه دو بعدی است.

                    توجه توجه : اشاره گر به اشاره گر آرایه یک بعدی همون اشاره گر به آرایه دوبعدی است.


                    اصلا بیخیال. خیلی راحت یک ماتریس اعلان کنید و مقدار بازگشتی تابع را بدید بهش(به اسمش).
                    البته تعداد ستون هایی که تو اعلان مشخص میکنید باید حتما برایر با تعداد ستون های ماتریس بازگشتی تابع باشه . در غیر اینصورت ارور میده . سطر ها یکی نباشه ارور نمیده ولی بهتره یکی باشه. همون قضیه رزرو حافظه از سیستم عامل و هنگ و... پیش میاد.

                    کلا من توضیحات را میدم که شما از اون زیر با خبر شید و سطحی نگری نداشته باشید.
                    در کل به نظر من زیر خیلی مهمتر از رو است.
                    راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو) : http://www.eca.ir/forum2/index.php?topic=78587.0
                    کوچ کردن از کدویژن به http://www.eca.ir/forum2/index.php?topic=81025.0 : AtmelStudio
                    نحوه نوشتن اصولی یک لایبرری و درایور نرم افزاری( بصورت ساده) : http://www.eca.ir/forum2/index.php?topic=81071
                    http://www.eca.ir/forum2/index.php?topic=82130.0 سفارش راه انداز ماژول های مختلف توسط اعضای انجمن
                    انشالله به زودی تاپیک ها به روز رسانی خواهد شد،

                    دیدگاه


                      #85
                      پاسخ : c++ گروهی

                      نوشته اصلی توسط RubeuS
                      من فقط با جمله داخل پرانتز که گفتید " (حتا اگه در memory بصورت پشت سر هم ذخیره میآ‌شه!) " مشکل دارم:
                      اول اینکه حتی با الف نوشته شده :mrgreen: شوخی میکنم
                      خدمتتون عارضم که من کیبوردم الفبای فارسی نداره( به هیچ وجه هم حاضر نیستم الفبای فارسی روش بچسبونم ) به همین خاطر برای فارسی تایپ کردن از سایت (behnevis.com) استفاده میآ‌کنم...فینگلیش مینویسم اونم به فارسی برمیگردونه...اینه که بعضیآ‌ کلمهآ‌ها اشتباه به فارسی برگردونده میشن ؛)

                      نوشته اصلی توسط RubeuS

                      خرجی تابع یک ماتریس است. پس باید خروجی را به یک اشاره گر به اشاره گر آرایه یک بعدی بدید یا اینکه راحت ترش اینه که باید به یک اشاره گر به یک آرایه دو بعدی بدید.
                      یه ویرایش کنین جملتون و لطفا..اگه کامایی چیزی احتیاج داره بذارید

                      نوشته اصلی توسط RubeuS

                      نه نترسید . مثال زیر را نگاه کنید بعد دوباره بیاید جمله بالا را بخونید . اگر متوجه نشدید دوباره بخونید و...
                      خیلیآ‌ میترسم ..

                      نوشته اصلی توسط RubeuS

                      توجه توجه : اشاره گر به اشاره گر آرایه یک بعدی همون اشاره گر به آرایه دوبعدی است.

                      اصلا بیخیال...
                      :biggrin:

                      نوشته اصلی توسط RubeuS
                      البته تعداد ستون هایی که تو اعلان مشخص میکنید باید حتما برایر با تعداد ستون های ماتریس بازگشتی تابع باشه . در غیر اینصورت ارور میده . سطر ها یکی نباشه ارور نمیده ولی بهتره یکی باشه. همون قضیه رزرو حافظه از سیستم عامل و هنگ و... پیش میاد.
                      اسم این هنگ که میاد من تنآ‌ و بدنم میآ‌لرزه..الانه که اوستاهای کامپیوتر سرازیر شن...



                      کلا دقت کردین...رو هرچیآ‌ گفته بودید کامنت گذشتم الا قسمت علمیش :د

                      دلیل اولش اینه که خود همون لایبرری که استفاده میآ‌کردم یه متد داره که این کار و انجام میده و تونستم کارم و راه بندازم و دیگه اینکه چون هنوز ترس توی وجودمه :د

                      نه شوخیآ‌ کردم...مرسیآ‌ از توضیح تون 2،3 تا برنامهٔ کوچولو در موردش پیدا کنم و روش کار کنم بعد میام رفع اشکال


                      دیدگاه


                        #86
                        پاسخ : c++ گروهی

                        در رابطه با اشاره گر ها باید بگم یه مقدار گفتنش اینجوری سخته . یعنی درست نمیشه منظور را رسوند.
                        کلا به نظر من دوتا مبحث هست که یه مقدار درکش اول کار مشکله ولی بعد از درکش دیگه کار راحته . یکی همین اشاره گرهاست و دیگری یک مبحث در درس سیستم عامل است به نام انحصار متقابل و بنبست و در کل سمافورها .

                        ولی اگه بخوام پیاده سازی ماتریس ها را در حافظه با دید ریاضی که دارید متصل کنم توضیح زیر کافیه:

                        الان تو هوا یک ماترسی 10 سطر در 5 ستون فرض کنید . (نمیخواد چشماتون را ببندید ، چون باید ادامه پست را بخونید. :icon_razz
                        این ماتریس چجوریه؟
                        اره یک مستطیل شکله که البته یه مستطیل طولی.
                        خوب حالا رو سطر اول تمرکز کنید و بقیه ش را بیخیال شید :
                        یک سطره که 5 تا عنصر داره . درسته؟
                        خوب این خودش یک آرایه ی یک بعدی 5 عنصره است.
                        اینا پشت سر هم در حافظه ذخیره میشن.
                        حالا این 5 تا که ذخیره شدن پشت بندش 5 تا درایه ی سطر دوم ذخیره میشن. و...
                        پس اگه یکم فکر کنیم برای اینکه برسیم به یک عنصر وسطای ماتریس مهم تعداد ستون هاست .
                        مثلا اگه بخوایمم به عنصر دوم سط دوم برسیم باید حتما تعداد ستون ها را بدونیم .
                        یعنی باید بدونیم تعداد ستونها 5تاست .
                        خوب یه 5تا میریم جلو . حالا یه دونه دیگه هم بریم جلو میرسیم به عنصر هدف.

                        -------------------------------------

                        حالا برای اینکه ترستون بریزه ، من باب شوخی یک مساله را مطرح میکنم:

                        اون عکس آواتارتون محل کارتونه؟ اگه اینطوره کاملا مشخصه کیبردتون فارسی نیست، و کلاس کلا بالاست.

                        والا بنده با دیدن اون عکس یک نگاه به دور اطراف خودم انداختم و یک تفاوت های ناچیزی را مشاهده نمودم:
                        اول از همه با یک نگاه روی میز به یک سری سیم و مقاومت و دیود و ال ای دی و به تعداد زیاد میکرو مواجه شدم .(همچنین سیم چین و انبر دست)
                        که البته با توجه به position و موقعیت هر میکرو روی میز میتونم بگم در اون میکرو چه برنامه ای الان وجود دارد و پروگرام شده.
                        در رابطه با کیبرد ، خیر کیبرد بنده حروف فارسی هم داره که البته این کیبرد به صورتیه که تقریبا حروف فارسی و انگلیسی پاک شده و همچنین دکمه ی اسپس جوریه که وقتی روش فشار داده میشه یک صدای نابه هنجاری از خود ساطع میکنه.(یه صدای شبیه قییییژ )
                        در صورتی که از زاویه بالا نگاه کنید در شمال شرقی مانیتور (یه مقدار عقبتر از ماوس ) 6 عدد خودکار تمام شده مشاهده میشه و تقریبا در کنار ماوس یک عدد خودکار که یک چهارم دیگر جوهر دارد وجود دارد. (در صورت تمام شدن جوهر این خودکار و اقدام نکردن برای خرید مجدد خودکار ، بایستی از آن به بعد با ذغال مطالب نوشته شود ) در سمت چپ مانیتور و جلو 4 عدد سالنامه که به نحو خیلی بدی در آمدند وجود دارد و پشت آنها یک قوری چای با قندان و لیوان چای موجود است که هم اکنون در لیوان به اندازه یک پنجم ، چای وجود دارد.)
                        خوب مسیر دید را ادامه میدهم. یک مقدار آنطرفتر یک لپتاپ وجود دارد که البته به خاطر اینکه یک کتاب یا سالنامه (دقیق مشخص نیست الان) زیر آن است درست روی میز قرار نگرفته و کج است.
                        البته لپتاپ هم اکنون در حالا استندبای رفته و صفحه نمایش آن خاموش شده است. به خاطر همین از این دید که بنده به صفحه نمایش آن نگاه میکنم در صورتی که خاک روی صفحه نمایش لپتاپ و PC روی هم انباشته کنیم ، با یک مقدار آب میتوان مقدار گل لازم برای ساخت یک خانه ی گلی را فراهم کرد.
                        خوب در کنار لبتاپ یک سری سیم یو اس بی به گونه ای وجود دارد که از نصفه از میز آویزان هستند . البته چون این سیم ها یک مقدار به هم تابیده شدند از روی پوزیشن آنها نمیتوان تشخیص داد مربوط به چه دستگاهی میشوند. که بنده با زدن سیم ها به درگاه یو اس بی لبتاپ و چک کردن دیوایس مننجر میفهمم هر سیم مربوط به چه دستگاهی میشود.
                        یک مقدار آنطرف تر یک هویه و سیم لحیم و روغن لحیم وجود دارد که از سیاه بودن تنه ی هویه ،سن آن کاملا مشخص است.
                        از وضعیت کنونی خودم هم که فکر میکنم چیزی نگم بهتره.

                        در کل با دیدن اون عکس و وضعیت کنونیم ، بسیار به حال خودم تاسف خوردم و نگرانی و ترس وجودم را گرفته الان.
                        راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو) : http://www.eca.ir/forum2/index.php?topic=78587.0
                        کوچ کردن از کدویژن به http://www.eca.ir/forum2/index.php?topic=81025.0 : AtmelStudio
                        نحوه نوشتن اصولی یک لایبرری و درایور نرم افزاری( بصورت ساده) : http://www.eca.ir/forum2/index.php?topic=81071
                        http://www.eca.ir/forum2/index.php?topic=82130.0 سفارش راه انداز ماژول های مختلف توسط اعضای انجمن
                        انشالله به زودی تاپیک ها به روز رسانی خواهد شد،

                        دیدگاه


                          #87
                          پاسخ : c++ گروهی

                          پاک شد
                          به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
                          (پیش به سوی هدف)

                          دیدگاه


                            #88
                            پاسخ : c++ گروهی

                            منم با کیبورد لپتاپم اول داشتم همین مشکل رو پید میکردم، ولی به یه شکل دیگه حل شد:
                            همونطور که میدونید رو کیبورد هیچ مکبوکی نوشته فارسی وجود نداره، و برچسب زدن هم باعث گرفته شدن نور بکلایت کیبورد میشه.
                            وقتی من مک خریدم، همون روزای اول داشتم سر این موضوع باهاش در گیر میشم، که یکم با تنظیماتش سر و کلله زدم و تو کیبورد ها، کیبوردی با چنین چینش حروفی پیدا کردم:
                            جای حروف کیبورد در حالت عادی:

                            جای حروف کیبورد وقتی که دکمه شیفت رو فشار دادم:

                            جای حروف کیبورد وقتی که دکمه پشن (معادلش تو ویندوز میشه alt) رو فشار دادم:

                            وقتی اینو دیدم، با خودم گفتم اون قبلیا رو چه حسابی اون چینش کیبورد رو برای زبون فارسی طراحی کرده بودنآ‌؟!!!! :-? و ما هم یه عمر باهاش عمر حروم کردیم :-w و بهش عادت کردیم و حالا به این روز افتادیم /
                            اسم این کیبورد Persian QWERTY هست، و نمیدونم که تو ویندوز هم میشه گیرش آورد یا نه!، ولی دنبالش بگردین که اگه گیر بیارین راحت میشین.
                            خیلی سریع بهش عادت میکنید، و یکی از بهترین و مهم ترین و پر فایده ترین چیزی که من ازش دیدم اینه که: اگه حواستون نبود و کیبورد روی این حالت بود و شما فکر می کنید که کیبورد رو حالت انگیسی هست و در حال تایپ به صورت انگلیسی باشید، بعضی از کلماتی که نوشتین کاملا درست به فارسی نوشته میشن و بعضی دیگه با اینکه غلط هستن ولی در آخر جمله دارای مفهومی که میخواستیم باشه هست. (تو چت کاربرد داره).
                            ;()((void (*)(void))0x0000))

                            دیدگاه


                              #89
                              پاسخ : c++ گروهی

                              سلام.
                              از هلپ ویژال استدیو چه اطلاعاتی میشه بدست آورد؟؟
                              مثلا من دستور for رو تایپ کردم ،هیچی پیدا نکرد.یا while .
                              ویژال استدیو 2012 دارم.
                              به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
                              (پیش به سوی هدف)

                              دیدگاه


                                #90
                                پاسخ : c++ گروهی

                                سلام. کسیآ‌ میدونه چطوری میآ‌شه scale کرد با c++؟

                                فرض کنید من یه vector دارم که اعدادش بین 200 تا 5000 هست..حالا میآ‌خوام اونا رو scale کنم به اعداد بین 0 تا 1 ... کسیآ‌ میآ‌دونه چطوری میآ‌شه این کار رو انجام داد؟

                                دیدگاه

                                لطفا صبر کنید...