تبليغات
تبلیغات در دانشجو کلوب محک :: موسسه خيريه حمايت از کودکان مبتلا به سرطان ::
جستجوگر انجمن.براي جستجوي مطالب دانشجو کلوپ مي توانيد استفاده کنيد 
برای بروز رسانی تاپیک کلیک کنید
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5

سورس کد گرفتن یک عدد و نمایش عامل های اول آن به زبان پاسکال

نویسنده پیام
  • navid
    آفلاین
  • مدیر بازنشسته
    **
  • ارسال‌ها: 1,344
  • تاریخ عضویت: مرداد ۱۳۹۰
  • اعتبار: 85
  • تحصیلات:لیسانس
  • علایق:برنامه نویسی
  • محل سکونت:Istanbul, Turkey
  • سپاس ها 1152
    سپاس شده 3031 بار در 1139 ارسال
  • امتیاز کاربر: 27,279$
  • حالت من:حالت من
ارسال: #1
سورس کد گرفتن یک عدد و نمایش عامل های اول آن به زبان پاسکال
این برنامه ابتدا اعداد اول قبل از نصف عدد مورد نظر رو پیدا میکنه
بعدش اون عدد رو به اعداد اول تقسیم میکنه تا عاملهای اول عدد مورد نظرو رو بدست بیاره


کد:
program test ;
   uses crt ;
   const g = 300 ;
   type
       arr = array[1..g] of integer ;
   var
       x : arr ;
       i , j , k , n , m: integer ;
       key : boolean ;
begin
    clrscr;
    {written by: navid}
    write('pleas enter a number:');
    readln(n);
    m := n div 2;
    x[1] := 2 ;
    k := 1 ;
    for i := 3 to m do
    begin
         key := true ;
         j := 1 ;
        while (j <= k) and key do
           if (i mod x[j]) = 0 then
                  key := false
           else
              j := j + 1;
        if key then
        begin
           k := k + 1;
           x[k] := i
        end ;
    end;
    writeln('the result is');
    i:=1;
    while ( i <= k ) do
     begin
      if (n mod x[i]) = 0 then
        begin
           write(x[i],' * ');
           n := n div x[i];
           i := i - 1;
        end;
      i:=i+1;
     end;
    readln;
end.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46



مطالب مشابه ...










تن آدمی شریف است به جیب آدمیت و همین لباس زیباست نشان آدمیت !

۲۵-۸-۱۳۹۰ ۰۹:۲۳ عصر
جستجو یافتن همه ارسال های کاربر اهدا امتیازاهدای امتیاز به کاربر پاسخ پاسخ با نقل قول
 سپاس شده توسط ♔ αϻἰг κнаη ♔ ، senior engineer
  • شادی1370
    آفلاین
  • کاربرسایت
  • ارسال‌ها: 1
  • تاریخ عضویت: آبان ۱۳۹۰
  • اعتبار: 0
  • تحصیلات:
  • علایق:
  • محل سکونت:
  • سپاس ها 0
    سپاس شده 0 بار در 0 ارسال
  • امتیاز کاربر: 0$
  • حالت من:حالت من
ارسال: #2
RE: سورس کد گرفتن یک عدد و نمایش عامل های اول آن به زبان پاسکال
با سلام و سپاس
ببخشید چطور میشه این برنامه رو به شرح زیر تغییر داد:

شرح تمرين:
در اين تمرين ميخواهيم يک عدد را به عوامل اول تجزيه کنيم و به صورت حاصلضرب اين عوامل نشان دهيم. به عنوان مثال عدد 126 را ميتوان به صورت حاصلضرب عوامل اول آن به صورت 7*3*3*2 نوشت.

ورودي:
ورودي شامل چندين خط است که در هر خط يک عدد بزرگتر از 1 قرار دارد. در خط آخر عدد 0 (به معني خاتمه اعداد) قرار دارد.

خروجي:
به ازاي هر ورودي (بجز عدد 0 آخر)، در خروجي يک خط چاپ مي شود که عدد را به صورت حاصل ضرب عوامل اول آن نشان مي دهد. در اين خط ابتدا خود عدد به همراه يک علامت مساوي (=) و در ادامه عبارت نشاندهنده حاصلضرب عوامل اول چاپ مي شود. دقت کني

۲۶-۸-۱۳۹۰ ۰۷:۳۶ عصر
جستجو یافتن همه ارسال های کاربر اهدا امتیازاهدای امتیاز به کاربر پاسخ پاسخ با نقل قول
  • navid
    آفلاین
  • مدیر بازنشسته
    **
  • ارسال‌ها: 1,344
  • تاریخ عضویت: مرداد ۱۳۹۰
  • اعتبار: 85
  • تحصیلات:لیسانس
  • علایق:برنامه نویسی
  • محل سکونت:Istanbul, Turkey
  • سپاس ها 1152
    سپاس شده 3031 بار در 1139 ارسال
  • امتیاز کاربر: 27,279$
  • حالت من:حالت من
ارسال: #3
RE: سورس کد گرفتن یک عدد و نمایش عامل های اول آن به زبان پاسکال
ببینین همونیه که شما میخواین


کد:
program test ;
   uses crt ;
   const g = 300 ;
   type
       arr = array[1..g] of integer ;
        var
       x , y : arr ;
       i , j , k , n , m , l , o: integer ;
       key : boolean ;
begin
    clrscr;
    {written by: navid}
    writeln('pleas enter n number, for finsh insert 0:');
    i := 0;
    repeat

          i := i + 1;
         readln(y[i]);

     until  y[i] = 0;
    l := i - 1;
    o := 1;
    while o <= l do
      begin
        n := y[o];

        m := n div 2;
        x[1] := 2 ;
        k := 1 ;
        for i := 3 to m do
          begin
             key := true ;
             j := 1 ;
               while (j <= k) and key do
                 if (i mod x[j]) = 0 then
                    key := false
                 else
                    j := j + 1;
                 if key then
                    begin
                          k := k + 1;
                          x[k] := i
                    end ;
           end;
         write('the result for number ',y[o],' is : ');
         i:=1;
         while ( i <= k ) do
            begin
              if (n mod x[i]) = 0 then
                  begin
                     write(x[i],' * ');
                     n := n div x[i];
                     i := i - 1;
                  end;
               i:=i+1;
            end;
            writeln;
            o := o + 1;
        end;
    readln;
end.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61

تن آدمی شریف است به جیب آدمیت و همین لباس زیباست نشان آدمیت !

(آخرین ویرایش در این ارسال: ۲۷-۸-۱۳۹۰ ۰۱:۴۸ صبح، توسط navid.)
۲۶-۸-۱۳۹۰ ۰۸:۵۸ عصر
جستجو یافتن همه ارسال های کاربر اهدا امتیازاهدای امتیاز به کاربر پاسخ پاسخ با نقل قول
 سپاس شده توسط ♔ αϻἰг κнаη ♔ ، senior engineer

برای بروز رسانی تاپیک کلیک کنید


مطالب مشابه ...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  بازی جنگ فضایی-پاسکال Macsi - space fighting game. ♔ αϻἰг κнаη ♔ 0 421 ۲-۳-۱۳۹۱ ۱۱:۴۳ عصر
آخرین ارسال: ♔ αϻἰг κнаη ♔
  استخر شنا و تعداد افراد ان-پاسکال ♔ αϻἰг κнаη ♔ 0 259 ۲-۳-۱۳۹۱ ۱۱:۴۰ عصر
آخرین ارسال: ♔ αϻἰг κнаη ♔
  برنامه تقویم -پاسکال ♔ αϻἰг κнаη ♔ 0 442 ۲-۳-۱۳۹۱ ۱۱:۳۲ عصر
آخرین ارسال: ♔ αϻἰг κнаη ♔
  ضرب دو ماتریس - پاسکال navid 0 1,863 ۴-۷-۱۳۹۰ ۱۰:۴۱ عصر
آخرین ارسال: navid
  ترانهاده یک ماتریس - پاسکال navid 0 1,382 ۴-۷-۱۳۹۰ ۱۰:۴۰ عصر
آخرین ارسال: navid
  تعویض قطر اصلی و فرعی در یک ماتریس - پاسکال navid 0 792 ۴-۷-۱۳۹۰ ۱۰:۳۸ عصر
آخرین ارسال: navid
  جمع ردیف های یک ماتریس - پاسکال navid 0 356 ۴-۷-۱۳۹۰ ۱۰:۳۴ عصر
آخرین ارسال: navid
  جمع دو ماتریس - پاسکال navid 0 770 ۴-۷-۱۳۹۰ ۱۰:۳۰ عصر
آخرین ارسال: navid
  مرتب کردن دو آرایه غیر مرتب در یک آرایه - پاسکال navid 0 519 ۴-۷-۱۳۹۰ ۱۰:۲۷ عصر
آخرین ارسال: navid
  چاپ سری اعداد به صورت ردیفی - پاسکال navid 0 381 ۴-۷-۱۳۹۰ ۱۰:۱۹ عصر
آخرین ارسال: navid

پرش به انجمن:

کاربرانِ درحال بازدید از این موضوع: 1 مهمان