تبلیغات :
خرید لپ تاپ استوک
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 11

نام تاپيک: برنامه معکوس کردن اعداد(اعشاری یا صحیح)

  1. #1
    پروفشنال sia0368's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    تهران پاریس
    پست ها
    997

    پيش فرض برنامه معکوس کردن اعداد(اعشاری یا صحیح)

    #include <stdio.h>
    #include <conio.h>
    main()
    {
    float adad;
    int ashar,sahih;
    clrscr();
    printf ("enter a num:");
    scanf ("%f",&adad);
    if (adad==(int)adad)//adad sahih ast?
    {
    sahih=adad;
    while(1)
    {
    if (sahih/10==0)
    {
    printf ("%d",(int)sahih%10);
    break;
    }
    printf("%d",(int)sahih%10);
    sahih=sahih/10;
    }//end while(1)
    }//end if
    else
    {
    sahih=(int)adad;
    if (adad-sahih<=0.9)//tabdile ashari be sahih
    ashar=(adad-sahih)*10;
    else if (ashar<=0.99)
    ashar=(adad-sahih)*100;
    else if (ashar<=0.999)
    ashar=(float)(adad-sahih)*1000;
    while(2)
    {
    if (ashar/10==0)
    {
    printf ("%d",(int)ashar%10);
    break;
    }
    printf("%i",(int)ashar%10);
    ashar=ashar/10;
    }//end while(2)
    printf (".");
    while(3)
    {
    if (sahih/10==0)
    {
    printf ("%d",(int)sahih%10);
    break;
    }
    printf("%d",(int)sahih%10);
    sahih=sahih/10;
    }//end while(3)
    }//end else
    getch();
    }
    من این برنامه رو نوشتم ولی هرچی نگاه میکنم نمیفهمم مشکلش کجاست؟
    این برنامه باید هر عدد مثبتی رو که کاربر وارد کرد معکوس کنه مثلا:
    کاربر 21.85 رو که وارد کنه برنامه 58.12 رو نشون بده
    اگه کلا این الگوریتم و راه حلش اشتباه است الگوریتم درستش رو هم بگید ممنون برای این 5شنبه میخوامش ممنون

  2. #2
    پروفشنال sia0368's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    تهران پاریس
    پست ها
    997

    پيش فرض

    یعنی هیچ کس برنامه معکوس کردن اعداد بدون تابع و آرایه رو بلد نیست؟

  3. #3
    اگه نباشه جاش خالی می مونه Shahab_H's Avatar
    تاريخ عضويت
    Nov 2008
    محل سكونت
    Tehran
    پست ها
    482

    پيش فرض

    من برنامه رو کامل نخوندم ولی این قسمتش:
    if (adad-sahih<=0.9)//tabdile ashari be sahih
    ashar=(adad-sahih)*10;
    else if (ashar<=0.99)
    ashar=(adad-sahih)*100;
    else if (ashar<=0.999)
    اگر از این جا می خواین بفهمین که چند تا اعضار داره معلومه که درست نیست!
    چون شرط ها با هم تداخل داره!
    دلیل نداره عدد اگر از 0.9 کوچیکتر باشه 1 اعشار داشته باشه
    یا مثلا از 0.99 کئچیک تر باشه شاید از 0.9 هم کوچیک تر باشه!‌ پس شرط ها درست نیست

  4. #4
    پروفشنال sia0368's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    تهران پاریس
    پست ها
    997

    پيش فرض

    من برنامه رو کامل نخوندم ولی این قسمتش:
    If (adad-sahih<=0.9)//tabdile ashari be sahih
    ashar=(adad-sahih)*10;
    else if (ashar<=0.99)
    ashar=(adad-sahih)*100;
    else if (ashar<=0.999)
    اگر از این جا می خواین بفهمین که چند تا اعضار داره معلومه که درست نیست!
    چون شرط ها با هم تداخل داره!
    دلیل نداره عدد اگر از 0.9 کوچیکتر باشه 1 اعشار داشته باشه
    یا مثلا از 0.99 کئچیک تر باشه شاید از 0.9 هم کوچیک تر باشه!‌ پس شرط ها درست نیست
    راه حلی به ذهن شما میرسه؟

  5. #5
    پروفشنال sia0368's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    تهران پاریس
    پست ها
    997

    پيش فرض

    من برنامه رو کامل نخوندم ولی این قسمتش:
    If (adad-sahih<=0.9)//tabdile ashari be sahih
    ashar=(adad-sahih)*10;
    else if (ashar<=0.99)
    ashar=(adad-sahih)*100;
    else if (ashar<=0.999)
    اگر از این جا می خواین بفهمین که چند تا اعضار داره معلومه که درست نیست!
    چون شرط ها با هم تداخل داره!
    دلیل نداره عدد اگر از 0.9 کوچیکتر باشه 1 اعشار داشته باشه
    یا مثلا از 0.99 کئچیک تر باشه شاید از 0.9 هم کوچیک تر باشه!‌ پس شرط ها درست نیست
    راه حلی به ذهن شما میرسه؟
    یعنی مشکل اصلی فقط تو این قسمت هست؟

  6. #6
    اگه نباشه جاش خالی می مونه Shahab_H's Avatar
    تاريخ عضويت
    Nov 2008
    محل سكونت
    Tehran
    پست ها
    482

    پيش فرض

    خب به هر حال وقتی تعداد اعشار عدد معلوم نباشه قطعا جوابش درست نمیشه!
    والا من الان خیلی فرصت ندارم فکر کنم روش ولی ترم پیش خودم این برنامرو نتونستم کامل بنویسم و آخر با string نوشتم و خداروشکر استاد نفهمید نمرمو دادD:
    ولی ایشالا تو این هفته سعی می کنم روش فکر کنم

  7. #7
    اگه نباشه جاش خالی می مونه Shahab_H's Avatar
    تاريخ عضويت
    Nov 2008
    محل سكونت
    Tehran
    پست ها
    482

    پيش فرض

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اینم کلکی که من زده بودم!‌خروجی رو نشون استاددادم نفهمید!
    البته من این برنامرو الان نوشتم شما خودتون 1 چک کنید درست باشه

  8. #8
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    سلام

    من هم قبلا چنين سوالي برام پيش اومده بود و كد زير رو نوشتم مي زارم شايد بدردتون خورد
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  9. #9
    پروفشنال sia0368's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    تهران پاریس
    پست ها
    997

    پيش فرض

    سلام

    من هم قبلا چنين سوالي برام پيش اومده بود و كد زير رو نوشتم مي زارم شايد بدردتون خورد
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    می بخشید معنی این خطهایی که قرمز کردم چیه؟استاد ما هنوز این چیزا رو یاد نداده.تازه به تعریف توابع رسیدیم

  10. #10
    اگه نباشه جاش خالی می مونه Shahab_H's Avatar
    تاريخ عضويت
    Nov 2008
    محل سكونت
    Tehran
    پست ها
    482

    پيش فرض

    اینا کدهای c++ ئه!
    cin همون scanf و cout همون printf ئه!‌cout<<endl هم مثل
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    عمل می کنه و میره خط بعدی

    cin.getline هم string رو از ورودی میگیره اون عدد جلوش هم تعیین می کنه حداکثر چندتا کاراکتر بگیره
    Last edited by Shahab_H; 04-12-2008 at 00:37.

  11. این کاربر از Shahab_H بخاطر این مطلب مفید تشکر کرده است


صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

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

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •