تبلیغات
تبلیغات متنی
محبوبترینها
بهترین هدیه تولد برای متولدین زمستان: هدیههای کاربردی برای روزهای سرد
در خرید پارچه برزنتی به چه نکاتی باید توجه کنیم؟
سه برند برتر کلید و پریز خارجی، لگراند، ویکو و اشنایدر
مراحل قانونی انحصار وراثت در یک نگاه: از کجا شروع کنیم؟
چگونه برای دریافت ویزای ایران اقدام کنیم؟ مدارک لازم و نکات کاربردی
راهنمای خرید یو پی اس برای مراکز درمانی و بیمارستانی مطابق الزامات قانونی
آیا طلاق توافقی نیاز به وکیل دارد؟
چگونه ویزای آفریقای جنوبی را به آسانی دریافت کنیم؟ راهنمای قدم به قدم
همه چیز درباره ویزای آلمان و مراحل دریافت آن
چرا پاسارگاد به عنوان یکی از مهمترین آثار تاریخی ایران شناخته میشود؟
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1820837009
Trace این برنامه -
واضح آرشیو وب فارسی:سایت ریسک: Trace این برنامه draria 14 آبان 1387, 17:41دوست عزیز the_king () میتونی این برنامه رو Trace کنی ؟ مخصوصا حلقه هاش و قسمتهای پایینی using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int n, i, j, temp; Console.Clear(); Console.Write("Please enter n : "); n=int.Parse(Console.ReadLine()); int[] a = new int[n]; for (i = 0; i < n; i++) { Console.Write ("Please enter A[" + (i+1) + "] : "); a[i] = int.Parse(Console.ReadLine()); } for (i = 0; i < n - 1; i++) for (j = i + 1; j < n; j++) if (a[i] < a[j]) { temp = a[i]; a[i] = a[j]; a[j] = temp; } for (i = 0; i < n; i++) Console.WriteLine ("A[" + (i+1) + "] = " + a[i]); Console.ReadKey(true) ; } } } the_king 14 آبان 1387, 18:42دوست عزیز the_king () میتونی این برنامه رو Trace کنی ؟ مخصوصا حلقه هاش و قسمتهای پایینی همیشه کد هایتان در بین تگی که دکمه مربوط به Code یعنی می سازد قرار دهید. اینطوری هم کد به هم نمی ریزد و هم چپ به راست چاپ می شود و هم تو رفتی سطر ها از بین نمی رود. این کد های زیر که گمان نمی کنم نیازی به توضیح داشته باشند، مخصوصا که بصورت مشترک در پروژه های کنسولی بطور خودکار درج می شود : using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { } } } ابتدا متغیر n را برای خواندن تعداد اندیس های آرایه ، متغیر i را برای مشخص کردن یک اندیس از آرایه، jمتغیر را برای مقایسه یک اندیس از آرایه با سایر اندیس ها (مرتب سازی آرایه) و متغیر temp را برای نگه داشتن موقت مقدار یک اندیس از آرایه (در هنگام تعویض مقدار دو اندیس آرایه) تعریف می کنیم : int n, i, j, temp; صفحه نمایش را پاک می کنیم : Console.Clear(); پیغام مناسبی را برای گرفتن مقدار n چاپ می کنیم : Console.Write("Please enter n : "); یک رشته string را از ورودی می خوانیم (Console.ReadLine) و به یک عدد int تبدیلش می کنیم (int.Parse) و در داخل متغیر n قرار می دهیم. (در یک کلام یک عدد را در متغیر n می خوانیم) : n=int.Parse(Console.ReadLine()); آرایه a را با تعداد اندیس های n و از نوع int می سازیم : int[] a = new int[n]; یک حلقه را با متغیر i می سازیم که برای پیمایش کلیه اندیس های آرایه a مناسب باشد : for (i = 0; i < n; i++) { پیغام مناسبی چاپ می کنیم که از کاربر بخواهد که اندیس i+1 (چون اندیس های آرایه از 0 شروع می شوند ولی بطور معمول کاربران اندیس اول را 1 فرض می کنند، در هنگام نمایش شماره اندیس یک واحد به i اضافه می کنیم.) آرایه را وارد نماید : Console.Write ("Please enter A[" + (i+1) + "] : "); یک رشته string را از ورودی می خوانیم (Console.ReadLine) و به یک عدد int تبدیلش می کنیم (int.Parse) و در داخل اندیس i ام آرایه a قرار می دهیم. (در یک کلام یک عدد را در اندیس i ام a می خوانیم) : a[i] = int.Parse(Console.ReadLine()); پس از خاتمه یافتن حلقه for ای که با متغیر i پیمایش نمودیم، تمامی عنصر های آرایه a خوانده شده اند : } با متغیر i یک حلقه می سازیم که بجز آخرین اندیس آرایه a سایر اندیس های آنرا پیمایش کند : for (i = 0; i < n - 1; i++) با متغیر j یک حلقه داخلی (داخل حلقه for ای که با i ساخته بودیم) می سازیم که تمامی اندیس های آرایه a که بعد از اندیس i هستند را پیمایش کند (همواره پیمایش متغیر j از یک اندیس بعد از i آغاز می شود) : for (j = i + 1; j < n; j++) اگر اندیس i ام آرایه a از اندیس j ام آرایه a کوچکتر است، پس ترتیب آرایه از نظر نزولی صحیح نیست : if (a[i] < a[j]) { اگر ترتیب آرایه از نظر نزولی صحیح نیست پس باید مقدار اندیس i ام آرایه a با اندیس j ام آرایه a تعویض شود، این عمل در سه مرحله انجام می شود و متغیر temp در این میان نقش یک واسطه را بازی می کند : temp = a[i]; a[i] = a[j]; a[j] = temp; در هر حال پس از اجرای دو حلقه تو در توی i و j، آرایه از نظر نزولی مرتب شده است : } یک حلقه با متغیر i تشکیل می دهیم که برای پیمایش تمامی اندیس های آرایه a مناسب باشد : for (i = 0; i < n; i++) با پیغام مناسبی، مقدار اندیس i ام آرایه a را چاپ می کنیم (چون اندیس های آرایه از 0 شروع می شوند ولی بطور معمول کاربران اندیس اول را 1 فرض می کنند، در هنگام نمایش شماره اندیس یک واحد به i اضافه می کنیم و بجای مقدار i مقدار i+1 را نمایش می دهیم) Console.WriteLine ("A[" + (i+1) + "] = " + a[i]); از کاربر می خواهیم که پیش از خروج از برنامه، زحمت فشار دادن یک کلید از صفحه کلید را بکشد : Console.ReadKey(true) ; لطفا در هنگام مطرح کردن سوال هایتان کاربر خاصی را مخاطب قرار ندهید، احساس یک ارتباط صرفا دو سویه ای که با مورد سوال قرار دادن یک کاربر خاص ایجاد می شود، سایر دوستان را در پاسخگویی به گفتگو ها دلسرد می کند. لطفا با مخاطب قرار دادن کلیه دوستان،سایر کاربران را برای پاسخ گویی به سوالات ترغیب کنید. draria 14 آبان 1387, 21:30متشکر . فقط یه نکته چرا یک حلقه را با متغیر i می سازیم که برای پیمایش کلیه اندیس های آرایه a مناسب باشد با پیغام مناسبی، مقدار اندیس i ام آرایه a را چاپ می کنیم (چون اندیس های آرایه از 0 شروع می شوند ولی بطور معمول کاربران اندیس اول را 1 فرض می کنند، در هنگام نمایش شماره اندیس یک واحد به i اضافه می کنیم و بجای مقدار i مقدار i+1 را نمایش می دهیم رو چند بار استفاده کردید بعد نکته بعدی اینکه از کجا باید دقیق بفهمیم متغیرها ی داخل for رو چطوری بنویسیم . for (i = 0; i < n; i++) for (i = 0; i < n - 1; i++) و .... the_king 14 آبان 1387, 22:31متشکر . فقط یه نکته چرا یک حلقه را با متغیر i می سازیم که برای پیمایش کلیه اندیس های آرایه a مناسب باشد با پیغام مناسبی، مقدار اندیس i ام آرایه a را چاپ می کنیم (چون اندیس های آرایه از 0 شروع می شوند ولی بطور معمول کاربران اندیس اول را 1 فرض می کنند، در هنگام نمایش شماره اندیس یک واحد به i اضافه می کنیم و بجای مقدار i مقدار i+1 را نمایش می دهیم رو چند بار استفاده کردید دوبار تکرار شده است، چون دقیقا دوبار باید پیغام مشابهی به کاربر داده شود، بار اول زمانی است که عناصر آرایه را از او دریافت می کنیم و کاربر باید بداند که مثلا آن عددی که از او دریافت می شود داخل [A[5 قرار می گیرد : A[5] : بار دوم هم زمانی است که عناصر مرتب شده را چاپ می کنیم، مثلا پیش از چاپ مقدار اندیس پنجم آرایه این عبارت را نمایش می دهیم : A[5] = چون هم روال دریافت مقدار اندیس های آرایه و هم روال چاپ اندیس های آرایه، نیاز به یک حلقه دارد که از اول تا آخر آرایه را پیمایش کند، بدیهی است که هم کد آنها یکسان است و هم توضیحات کد آنها. بعد نکته بعدی اینکه از کجا باید دقیق بفهمیم متغیرها ی داخل for رو چطوری بنویسیم . for (i = 0; i < n; i++) for (i = 0; i < n - 1; i++) و .... کدی که در روال مرتب سازی نوشتم را در نظر بگیرید : for (i = 0; i < n - 1; i++) for (j = i + 1; j < n; j++) الگوریتم های مشخص و معروف اندیس های شروع و پایانی دارند که از قبل تعیین شده است. این دو حلقه تو در تو جزئی از روال عادی الگوریتم مرتب سازی حبابی هستند، هدف اصلی این است که اندیس های هر عضو از آرایه را با بقیه عضو ها مقایسه کنیم. پس حلقه i از صفر شروع می شود ولی هیچگاه شامل آخرین اندیس آرایه نخواهد بود، چرا؟ چون دیگر بعد از آخرین عنصر آرایه دیگر عنصری نیست که بخواهیم با آن مقایسه اش کنیم. برای همین i باید از n - 1 کوچکتر باشد. کم کردن یک از n تضمین می کند که i آخرین عضو آرایه را در روال خود اجرا نکند. اندیس j هم نباید از i کوچکتر باشد، چرا؟ چون i همانطور که افزایش می یابد اندیس ها را مرتب می کند و اندیس های قبلتر از i مرتب هستند. به همین دلیل نیازی به مقایسه مجدد ندارند. یعنی j >= i همچنین بدیهی است که مقایسه کردن یک عضو با خودش فایده ای ندارد پس j برابر خود i هم نیست، پس همیشه j از i + 1 شروع می شود. اندیس انتهایی j هم که آخرین عضو آرایه است. حالا این کد زیر را در نظر بگیرید : for (i = 0; i < n ; i++) for (j = 0 ; j < n; j++) دقت کنید که هر دو اندیس i و j مقدار شروع و پایان یکسانی دارند، جالب اینکه این دو حلقه for می توانند بجای دو حلقه ای که من نوشته بودم بکار روند، یعنی مرتب سازی را بدون مشکل انجام می دهند. تنها عیبشان این است که دوباره کاری و کار بیهوده هم انجام می دهد، مثلا اندیس 5 را با اندیس 5 مقایسه می کند در حالی که همواره ایندو با هم برابر اند. به بیان ساده تر کندتر از نمونه قبلی عمل می کند وگرنه اجرایش صحیح است.
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 844]
صفحات پیشنهادی
Trace این برنامه -
Trace این برنامه draria 14 آبان 1387, 17:41دوست عزیز the_king () میتونی این برنامه رو Trace کنی ؟ مخصوصا حلقه هاش و قسمتهای پایینی using System; using ...
Trace این برنامه draria 14 آبان 1387, 17:41دوست عزیز the_king () میتونی این برنامه رو Trace کنی ؟ مخصوصا حلقه هاش و قسمتهای پایینی using System; using ...
نام این برنامه چیه ؟ -
8 فوريه 2008 – --نام این برنامه چیه ؟ baharaneh 01 ارديبهشت 1385, 09:06سلام دوستان اگه دقت کرده ... یعنی ما vector در اختیار داریم دیگه trace bitmap نمیخوایم.
8 فوريه 2008 – --نام این برنامه چیه ؟ baharaneh 01 ارديبهشت 1385, 09:06سلام دوستان اگه دقت کرده ... یعنی ما vector در اختیار داریم دیگه trace bitmap نمیخوایم.
شنایی با انواع برنامه های جاسوسی و مخرب
TRACE : یک نمونه از برنامه های جاسوسی TRACE می باشد این گونه از برنامه ها می توانند به صورتهای مختلف سیستم را تخریب کنند یعنی هم می توانند به محیط ...
TRACE : یک نمونه از برنامه های جاسوسی TRACE می باشد این گونه از برنامه ها می توانند به صورتهای مختلف سیستم را تخریب کنند یعنی هم می توانند به محیط ...
مشکل این برنامه چیه؟
مشکل این برنامه چیه؟-ehsaaaan08-12-2009, 12:13 PMدوستان ... کامپایل میشه ولی درست اجرا نمیشه.وقتی trace کردم دیدم به محض اینکه به خط a=x b=a x=b میرسه خود ب.
مشکل این برنامه چیه؟-ehsaaaan08-12-2009, 12:13 PMدوستان ... کامپایل میشه ولی درست اجرا نمیشه.وقتی trace کردم دیدم به محض اینکه به خط a=x b=a x=b میرسه خود ب.
Trace Modeler 1.6.5 MultiOS - نرم افزار مهندسی رسم نمودار ...
Trace Modeler 1.6.5 MultiOS - نرم افزار مهندسی رسم نمودار UML - دانلود-اگر به صورت حرفه ای برنامه نویسی می کنید مطمئنا همیشه یک نمودار کلی از عملکرد برنامه ...
Trace Modeler 1.6.5 MultiOS - نرم افزار مهندسی رسم نمودار UML - دانلود-اگر به صورت حرفه ای برنامه نویسی می کنید مطمئنا همیشه یک نمودار کلی از عملکرد برنامه ...
دانلود نرم افزار رایگان Hefaz JunkCode Generator -
ندارن ولی Trace کردن کد رو برای کراکر سخت میکنن ، این ابزار وطنی هم دقیقا" همین کار رو میکنه ، نرم افزار کاملا" رایگان هست و خرجش فقط یه صلوات واسه روح اموات ...
ندارن ولی Trace کردن کد رو برای کراکر سخت میکنن ، این ابزار وطنی هم دقیقا" همین کار رو میکنه ، نرم افزار کاملا" رایگان هست و خرجش فقط یه صلوات واسه روح اموات ...
مشكل اجراي برنامه VB6 در ويندوز XP -
VmWare workstation microsoft vitual machin اين برنامه ها براي كاراي مختلفي استفاده ميشن يكيش همين Trace ... MrJamshidy29-02-2008, 10:47 AMپس باید مشکل ...
VmWare workstation microsoft vitual machin اين برنامه ها براي كاراي مختلفي استفاده ميشن يكيش همين Trace ... MrJamshidy29-02-2008, 10:47 AMپس باید مشکل ...
وزارت ارتباطات در آیینه برنامه چهارم -
وزارت ارتباطات در آیینه برنامه چهارم --وزارت ارتباطات در آیینه برنامه چهارم PhonieX 15 آبان 1387, 12:07برنامهریزیها ... ماده 57 این برنامه دولت را موظف کرده است تا پایان برنامه چهارم، به منظور برقراری تسهیلات لازم جهت دسترسی به .... Trace این برنامه - ...
وزارت ارتباطات در آیینه برنامه چهارم --وزارت ارتباطات در آیینه برنامه چهارم PhonieX 15 آبان 1387, 12:07برنامهریزیها ... ماده 57 این برنامه دولت را موظف کرده است تا پایان برنامه چهارم، به منظور برقراری تسهیلات لازم جهت دسترسی به .... Trace این برنامه - ...
همه برنامه نویسا کمککککککککک
برنامه رو trace كن. وقتي هنگ ميكنه حتما كدنويسي مشكل داره farhad_g1 عزیز پس کجایی؟ اين روزها كمتر ميام سورس دومي كه براي thread گذاشتم ساده ترين مثال براي ...
برنامه رو trace كن. وقتي هنگ ميكنه حتما كدنويسي مشكل داره farhad_g1 عزیز پس کجایی؟ اين روزها كمتر ميام سورس دومي كه براي thread گذاشتم ساده ترين مثال براي ...
Corel نگارش جدید نرم افزار گرافیکی Corel Draw را معرفی کرد
21 ژانويه 2006 – از مهمترین ویژگی های این نسخه می توان به ابزار جدید. ... در این برنامه برای راحتی کار با این ابزار یک پالت رنگ از روی تصویر اصلی ساخته می ... يه چيز ديگه من منظورم Corel PowerTRACE که دقيقا با ابزار live trace در ill cs2 برابري ...
21 ژانويه 2006 – از مهمترین ویژگی های این نسخه می توان به ابزار جدید. ... در این برنامه برای راحتی کار با این ابزار یک پالت رنگ از روی تصویر اصلی ساخته می ... يه چيز ديگه من منظورم Corel PowerTRACE که دقيقا با ابزار live trace در ill cs2 برابري ...
-
گوناگون
پربازدیدترینها