انجمن تخصصی موبایل برای ایرانیان - صفحه اصلی
  • ثبت نام


  • انجمن
    • ارسالهاي امروز
    • ثبت نام
    • تقویم
    • ابزار انجمن
      • نشانه گذاري انجمن ها به عنوان خوانده شده
    • کلیدهای میانبر
      • نمايش مديران انجمن ها
  • آخرین ارسال ها
  • پرتال تخصصی موبایل
  • فروشگاه اینترنتی
  • آپلود عکس
  • بازارچه
  • پکیج ویژه مستندهای جنجالی ایرانی

    • خانه
    • انجمن
    • بخش کامپیوتر- Computer Section
    • برنامه نویسی کامپیوتر - Pc Programming
    • برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]














    irantrack irantrack

    irantrack irantrack

    irantrack irantrack
    نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

    تاپيك: برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

    • LinkBack
      • LinkBack URL LinkBack URL
      • About LinkBacks About LinkBacks
    • ابزارهای تاپيك
      • پرینت این صفحه / نمایش بصورت پرینت
      • ارسال این صفحه توسط ایمیل…
      • اشتراک در این تاپيك…
    • حالت نمایش
      • تعویض به حالت ترکیبی
      • تعوض به حالت رشته ای
    1. 10-25-2008 #1
      sahel7
      sahel7 آنلاین نیست.
      sahel7 آواتار ها

      تاریخ عضویت
      Oct 2008
      پست‌ها
      1
      تشکر : 0
      تشکر شده 0 بار در 0 پست

      برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

      لطفا كمك كنيد:برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند؟ (به زبان ++c )
      پاسخ با نقل قول پاسخ با نقل قول


    2. تبلیغات در موبایل برای ایرانیان


      • فول آلبوم آهنگ های تمامی خواننده های ایرانی
      • مستند جنجالی شیطان پرستان ایرانی
      • آموزش شعبده بازی + تردستی با ورق
      • آموزش تکنیک دفاع شخصی با دست خالی
      • پکیج استثنائی ۲۰۰ کارتون دوبله فارسی
      • سخنرانی دکتر انوشه(روابط دختر و پسر)
      • مستند بی نظیر حیات BBC Life 2009
      • مجموعه سخنرانی های جنجالی استاد دانشمند
      • کلکسیون مسابقات قویترین مردان جهان
      • مجموعه افکت های حرفه ای سینمایی
      • با این 3 دی وی دی استاد فتوشاپ شوید
      • آموزش آرایشگری مثلث طلایی
      • تکنیک ها و رموز موفقیت در زندگی
      • مجموعه کامل آهنگ های قدیمی و سنتی چهره
      • یادگیری سریع مکالمه انگلیسی با لهجه آمریکایی
      • مستند متافیزیک ماورای طبیعه (قیمت ارزان)
      • مسابقه “معجزه کاهش وزن” The Biggest Loser
      • مجموعه بزرگ آموزش فتوشاپ Lynda
      • آموزش تعمیر و نگهداری انواع خودروها
      • مستند جذاب توقف زمان – Time Warp با کیفیت HD
      • آموزش تقویت حافظه و تند خوانی مرد حافظه ایران


    3. irantrack irantrack

      irantrack irantrack

      irantrack irantrack
    4. 10-25-2008 #2
      SHADOW
      SHADOW آنلاین نیست.
      SHADOW آواتار ها

      تاریخ عضویت
      Jul 2006
      محل سکونت: شهر گنبدهای فیروزه ای ... نصف جهان
      پست‌ها
      1,550
      تشکر : 0
      تشکر شده 33 بار در 33 پست

      پیش فرض Re: سوال

      بفرمایید.
      هرچند که خودم مخالف این بودم که کد را در اختیار بگذارم و بیشتر راهنمایی کنم تا خودتان برنامه را بنویسید...
      ولی خب... به درخواست مدیر سایت کد را براتون گذاشتم.
      سوالی در مورد اون بود بگین تا توضیح بدم

      کد:
      // project created on 10/25/2008 at 6:42 PM
      #include <stdio.h>
      
      bool IsPrime(int p)
      {
      	for(int i=1;i<=p;i++)
      	
      		if(i==1 || i==p)
      			continue;
      		else if(p % i==0)
      			return false;
      	
      	return true;
      }
      
      int main (int argc, char *argv[])
      {
      	for(int i=1;i<=1000;i++)
      	{
      		if(IsPrime(i))
      			printf("%d   ",i);		
      	}
      	
      	return 0;
      }
      و این هم خروجی برنامه:
      کد:
      1   2   3   5   7   11   13   17   19   23   29   31   37   41   43   47   53   59   61   67   71   73   79   83   89   97   101   103   107   109   113   127   131   137   139   149   151   157   163   167   173   179   181   191   193   197   199   211   223   227   229   233   239   241   251   257   263   269   271   277   281   283   293   307   311   313   317   331   337   347   349   353   359   367   373   379   383   389   397   401   409   419   421   431   433   439   443   449   457   461   463   467   479   487   491   499   503   509   521   523   541   547   557   563   569   571   577   587   593   599   601   607   613   617   619   631   641   643   647   653   659   661   673   677   683   691   701   709   719   727   733   739   743   751   757   761   769   773   787   797   809   811   821   823   827   829   839   853   857   859   863   877   881   883   887   907   911   919   929   937   941   947   953   967   971   977   983   991   997
      البته میشه از دستور cout به جای Printf استفاده کرد که فرم تابع main در برنامه به شکل زیر در خواهد آمد:

      کد:
      int main (int argc, char *argv[])
      {
      	for(int i=1;i<=1000;i++)
      	{
      		if(IsPrime(i))
      			cout<<i<<"   ";		
      	}
      	
      	return 0;
      }
      و حتما باید فایل iostream.h در ابتدای کار include شودبه یکی از دو فرم زیر:
      کد:
      #include <iostream>
      
      یا
      
      #inculde "iostream.h"


      اطلاعیه مورخ پنج شنبه۱۲ آذر ماه ۱۳۸۸ :
      طبق آخرین اخبار.... محل خدمتی من عوض شد و روزی که رفتیم تهران انداختنمون بیرون گفتن باید بری شهید ادیبی.
      خلاصه ما رهسپار مرزن آباد که وابسته به چالوس هست شدیم. پادگان شهید ادیبی ناجا.

      این بار خواستید کمپوت بیارید و آجیل باید بیایید: چالوس - مرزن آباد - پادگان شهید ادیبی ناجا
      بگید با حسین کار دارم همه میشناسن. گردان ۱ گروهان ۴ .


      پاسخ با نقل قول پاسخ با نقل قول


    5. 03-31-2009 #3
      shayatinsorkh
      shayatinsorkh آنلاین نیست.
      shayatinsorkh آواتار ها

      تاریخ عضویت
      Sep 2008
      پست‌ها
      208
      تشکر : 7
      تشکر شده 29 بار در 51 پست

      پیش فرض Re: برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

      عزیز من کارت خوبه ولی برنامه رو میشه سریع ترش کرد فقط کافیه کد بالا رو یعنی:
      for(int i=1;i<=p;i++)i
      رو با کد زیر عوض کنین:
      for(int i=1;i<=(p/2);i++)i
      (اون i آخر رو پاک کنین)
      اما دلیلش اینه که واسه پیدا کردن عدد اول باید مقسوم علیه هاشو پیدا کنین که واسه این کار کافیه تا نصف اون عدد چک بشه یعنی تا p/2 تو برنامه بالا........

      پاسخ با نقل قول پاسخ با نقل قول


    6. 03-31-2009 #4
      shayatinsorkh
      shayatinsorkh آنلاین نیست.
      shayatinsorkh آواتار ها

      تاریخ عضویت
      Sep 2008
      پست‌ها
      208
      تشکر : 7
      تشکر شده 29 بار در 51 پست

      پیش فرض Re: برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

      عزیز من کارت خوبه ولی برنامه رو میشه سریع ترش کرد فقط کافیه کد بالا رو یعنی:
      for(int i=1;i<=p;i++)i
      رو با کد زیر عوض کنین:
      for(int i=1;i<=(p/2);i++)i
      (اون i آخر رو پاک کنین)
      اما دلیلش اینه که واسه پیدا کردن عدد اول باید مقسوم علیه هاشو پیدا کنین که واسه این کار کافیه تا نصف اون عدد چک بشه یعنی تا p/2 تو برنامه بالا........

      پاسخ با نقل قول پاسخ با نقل قول


    7. 06-01-2009 #5
      mamadmm
      mamadmm آنلاین نیست.
      mamadmm آواتار ها

      تاریخ عضویت
      Jun 2009
      پست‌ها
      1
      تشکر : 0
      تشکر شده 0 بار در 0 پست

      پیش فرض Re: برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

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


    8. 06-01-2009 #6
      SHADOW
      SHADOW آنلاین نیست.
      SHADOW آواتار ها

      تاریخ عضویت
      Jul 2006
      محل سکونت: شهر گنبدهای فیروزه ای ... نصف جهان
      پست‌ها
      1,550
      تشکر : 0
      تشکر شده 33 بار در 33 پست

      پیش فرض Re: برنامه اي كه تمام اعداد اول زير 1000 را چاپ كند [حل شد]

      فلوچارتش رو که حال ندارم بکشم ولی به صورت الگوریتمیک توضیح میدم تا بهتون کمکی بشه.

      روال کار بر این اساس هست که در تابع اصلی برنامه ما باید اعداد اول ۱ تا ۱۰۰۰ را چاپ کنیم. پس به یک حلقه نیاز داریم که از یک تا ۱۰۰۰ تکرار شود ما در زبان سی از حلقه for استفاده میکنیم و از متغیر حلقه که در هر مرحله به ترتیب اعداد ۱ تا ۱۰۰۰ را پیمایش میکند برای محاسبات استفاده میکنیم.

      برای تک تک این اعداد ما باید مقسوم علیه های انها را پیدا کنیم ... مثلا فرض کنید ما به عدد ۱۸ رسیده ایم، باید مقسوم علیه های این عدد را پیدا کنیم. برای اینکه روال کار قشنگ باشه من اومدم و روال پیدا کردن مقسوم علیه های یک عدد را داخل تابعی به نام IsPrime قرار دادم که یک پارامتر ورودی دارد و آن هم عدد مورد نظر هست که میخواهیم مقسوم علیه های آن را پیدا کنیم. یعنی این تابع با دریافت عدد مورد نظر، مقسوم علیه های آن را پیدا میکند. خروجی این تابع پس از بررسی مقسوم علیه ها یا درست True است و یا غلط یا False است. یعنی یا عدد مورد نظر ما اول بوده یا خیر.

      روال کار تابع IsPrime :
      در این تابع ما باید مقسوم علیه ها را پیدا کنیم. برای این کار کافی اس که یک حلقه تکرار شونده داشته باشیم که از عدد ۱ شروع شود ... انتهای این حلقه کافی است که برابر نصف عدد ما باشد. مثلا اگر قرار است مقسوم علیه های عدد ۱۸ پیدا شود کافی است که ما تا عدد ۹ پیش برویم. چراکه همیشه بزرگترین مقسوم علیه یک عدد از نصف آن عدد کوچکتر و یا مساوی آن است.
      در تابع من دو شرط را بررسی کردم یکی اگر متغیر حلقه برابر ۱ هست نیازی به چک کردن آن نباشد چرا که همه اعداد بر ۱ بخش پذیرند.
      اما در غیر این صورت اگر باقیمانده تقسیم عدد مورد نظر که در پارامتر ورودی این تابع با P مشخص شده است، اگر باقیمانده تقسیم عدد مورد نظر بر متغیر حلقه ما برابر مقدار 0 شد، یعنی که این عدد بر مقدار فعلی متغیر حلقه بخش پذیر است. و این یعنی که عدد مورد نظر یعنی P بر یک عددی غیر از ۱ و خودش بخش پذیر است پس یعنی این عدد اول نیست پس باید در همین لحظه از تابع با خروجی False خارج شویم return False
      اما اگر حلقه ما به پایان رسید و خروجی False نداشتیم پس عدد ما غیر از ۱ و خودش به هیچ عدد دیگری بخش پذیر نبوده و باید خروجی True داشته باشیم return True

      در تابع اصلی برنامه که main نام دارد و تابع IsPrime در آن صدا زده شد، خروجی تابع IsPrime را بررسی میکنیم. اگر خروجی True یا درست بود یعنی عدد اول بوده و باید متغیر کنونی حلقه ما که از ۱ تا ۱۰۰۰ تکرار میشود چاپ گردد ولی اگر False یا غلط بود، نیازی به چاپ آن نیست.

      این روال کلی برنامه چاپ اعداد اول ۱ تا ۱۰۰۰ بود.

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


      اطلاعیه مورخ پنج شنبه۱۲ آذر ماه ۱۳۸۸ :
      طبق آخرین اخبار.... محل خدمتی من عوض شد و روزی که رفتیم تهران انداختنمون بیرون گفتن باید بری شهید ادیبی.
      خلاصه ما رهسپار مرزن آباد که وابسته به چالوس هست شدیم. پادگان شهید ادیبی ناجا.

      این بار خواستید کمپوت بیارید و آجیل باید بیایید: چالوس - مرزن آباد - پادگان شهید ادیبی ناجا
      بگید با حسین کار دارم همه میشناسن. گردان ۱ گروهان ۴ .


      پاسخ با نقل قول پاسخ با نقل قول


    « سئوال برنامه نويسي | سئوال برنامه نويسي ++c »

    فروش استثنائی محصولات نوین | با قیمتی استثنائی

    • بهترین شعبده بازی های کریس آنجل (دوبله فارسی)
    • مسابقه جنجالی(دروغ نیم میلیون دلاری)زیرنویس فارسی
    • مستند جنجالی فوتبالیست های زن ایرانی
    • آموزش تصويري پينگ پونگ
    • بمب خنده مهران مديري – جديد
    • دوربین مخفی بازیگران هالیوودی
    • دو جنسه های ایرانی+دماغ عملی
    • تمام سریالها و شاهکارهای مهران مدیری
    • آنچه مردان و زنان به آن نیاز دارند
    • هنر عشق بازی در روابط زناشوئی


    • آموزش حرفه ای ورزش پارکور
    • آموزش مهارتهاي فوتبال توسط ديويد بکهام+هديه
    • گلچین بهترین قسمتهای خنده بازار
  • تمامی نکات و دانستنی های یک ازدواج موفق
  • مجموعه کامل شب هاي برره (بدون سانسور)

  • اطلاعات تاپیک:

    Users Browsing this Thread

    در حال حاضر 1 کاربر در حال بازدید از این تاپیک هست.(شامل 0 کاربر و 1 مهمان)

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

    1. مجموعه ی 1000 بازی جذاب برای S60 ورژن سه !
      توسط shadi_khachikian در انجمن بازی ها - Games 3rd
      پاسخ ها: 24
      آخرين نوشته: 11-06-2008, 09:07 AM
    2. هزار ^ 1000 ^ بازی جاوا یک جا برای موبایل های نوکیا
      توسط shadi_khachikian در انجمن بازی ها - Games Java
      پاسخ ها: 0
      آخرين نوشته: 10-21-2008, 06:40 PM
    3. اولين لپ تاپ 1000 گيگي وارد بازار شد
      توسط hossein_delpiero در انجمن اینترنت و اخبار آی تی - Internet and IT news
      پاسخ ها: 0
      آخرين نوشته: 06-29-2008, 02:11 PM
    4. زوم بر روی عکس تا 1000 برابر بدون کم شدن کیفیت!
      توسط DANG3R در انجمن معرفی برنامه های کامپیوتر - PC Softwares
      پاسخ ها: 2
      آخرين نوشته: 01-05-2008, 04:04 PM
    5. دانلود مجموعه ای بی نظیر از 1000 تا sms
      توسط Professional در انجمن بخش عمومی موبایل - Public Mobile Phones
      پاسخ ها: 0
      آخرين نوشته: 09-19-2007, 08:38 AM

    http://www.irantrack.com/novin/zqd7l5b9lozqvr6w8jb.jpg
    مستند ابتذال در سینمای ایران + هدیه
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/200kartoon-k.gif
    پکیج استثنائی ۲۰۰ کارتـون دوبـله فـارسی جدید |۹۰ هزار تومان زیر قیمت
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/2qsb4kit7yyqj5o2bzvr.gif
    آب کردن چربی های اضافی در منزل (تضمینی)
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/k055d0pjer1kjfftnzzl.gif
    آموزش تقویت حافظه و تند خوانی (دکتر سیدا: مرد حافظه ایران)
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/0x3yymtrjettye310y53.jpg
    کاهش وزن تنها در ٣٠ دقیقه
    توضیحات بیشتر
    خرید پستی

    • تماس با ما
    • mobile4persian
    • بایگانی
    • بالا
    اکنون ساعت 01:11 PM برپایه ساعت جهانی (GMT - گرینویچ) +3.5 می باشد.
    Powered by vBulletin .
    Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.
    Search Engine Friendly URLs by vBSEO