نمایش نتایج 1 تا 15 از 15

نام تاپیک: PASCAL help فوری

  1. #1

    Arrow PASCAL help فوری

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

    با تشکر Saeed_flash

  2. #2
    خوب شروع کنید برنامه رو بنویسید هر جا مشکلی داشتید بپرسید.
    برای اولی باید اعداد رو یکی یکی جدا کنید با استفاده از mod و دستور while
    شروع کنید ببینید کجاش به مشکل برخورد میکنید
    You never know what you can do until you try

  3. #3
    توی دلفی اگه رو نام یک تابع کلید کنترل رو بگیرید و کلیک کنید سورسش رو می بینید

    شاید با کلید روی توابع Inttostr ‌و Strtoint به نتیجه مطلوب برسید .

    موفق باشید

  4. #4
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    اینجا معمولا کسی کل یه برنامه رو برای شما کامل انجام نمیده . مخصوصا که اگر دانشجویی باشه
    :)

    خودتون اگر شروع کردین به نوشتنش ولی براتون اشکالی پیش اومده ، بپرسید و سریع هم جواب میگیرید

    موفق باشید

  5. #5
    نقل قول نوشته شده توسط Mahyaa مشاهده تاپیک
    اینجا معمولا کسی کل یه برنامه رو برای شما کامل انجام نمیده . مخصوصا که اگر دانشجویی باشه
    :)

    خودتون اگر شروع کردین به نوشتنش ولی براتون اشکالی پیش اومده ، بپرسید و سریع هم جواب میگیرید

    موفق باشید
    خیلی ممنون که به پست من توجه کردین ولی من هم نخواستم کل برنامه رو برای من بنویسین
    من خواستم کمکم کنید که بنویسم نه اینکه به من بگید با while یا for یا mod بنویسم
    فقط بهم بگید چه جوری میشه نوشت ممنون

  6. #6
    نقل قول نوشته شده توسط saeed_flash مشاهده تاپیک
    خیلی ممنون که به پست من توجه کردین ولی من هم نخواستم کل برنامه رو برای من بنویسین
    من خواستم کمکم کنید که بنویسم نه اینکه به من بگید با while یا for یا mod بنویسم
    فقط بهم بگید چه جوری میشه نوشت ممنون
    ببین دوست عزیز:
    شما حتی روی دستوراتی که نوشته شد فکر هم نکردی که با توجه به اونها لا اقل بخشی از برنامه ات رو بتونی بهش یه خورده فکر کنی. همین mod به تنهائی کافی بود که شما بتونی جهت و سمت و سوی پروژه ات رو پیدا کنی. یا حد اقل توجه شما به همین جواب این بود که بپرسید با اینا چجوری یا لا اقل اینکه خودتون یه بخش از راه رو یا تا اونجائی که به ذهنتون میرسه رو بگید.

    اون دستوراتی رو که من نوشتم هدفم لیست کردن دستورات c نبود هدفم راهنمائی به شما بود.
    در ضمن
    عنوان سوالتون رو اصلاح کنید
    You never know what you can do until you try

  7. #7

    Arrow

    نقل قول نوشته شده توسط mzjahromi مشاهده تاپیک
    ببین دوست عزیز:
    شما حتی روی دستوراتی که نوشته شد فکر هم نکردی که با توجه به اونها لا اقل بخشی از برنامه ات رو بتونی بهش یه خورده فکر کنی. همین mod به تنهائی کافی بود که شما بتونی جهت و سمت و سوی پروژه ات رو پیدا کنی. یا حد اقل توجه شما به همین جواب این بود که بپرسید با اینا چجوری یا لا اقل اینکه خودتون یه بخش از راه رو یا تا اونجائی که به ذهنتون میرسه رو بگید.

    اون دستوراتی رو که من نوشتم هدفم لیست کردن دستورات c نبود هدفم راهنمائی به شما بود.
    در ضمن
    عنوان سوالتون رو اصلاح کنید
    دوست عزیز من به اون دستورات فکر کردم ولی خوب به نتیجه ای نرسیدم که الان اومدم و دوباره پست و آوردم بالا
    در ضمن من با Pascal می خوام برنامه بنویسم نه با C و این نظر لطف شما هست که جواب منو دادین
    عنوان سوال چه مشکلی داره
    اگه منظورمو در رابطه با پروژم بد بیان کردم بگید تا دوباره توضیح بدم ممنون میشم که کمکم کنید


    با تشکر Saeed_flash

  8. #8
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    برای تبدیل عدد به رشته کافیه ارقام یکی یکی خونده بشه و به کاراکتر تبدیل بشه .برای اینکه ارقام رو بتونی یکی یکی بخونی ، لازمه که از عمل تقسیم متوالی و باقیمانده و اینا استفاده کنی .
    عدد رو به 10 تقسیم میکنیم ، باقیمانده تقسیم ، رقم یکان را نشان میدهد. رقم را به کاراکتر تبدیل میکنیم (بدون استفاده از Str) و جواب تقسیم قبلی را دوباره به 10 تقسیم میکنیم تا رقم بعدی آن بدست آید . تا زمانی که جواب تقسیم از صفر بزرگتر باشه ، تقسیمها را ادامه میدیم تا تمام ارقام را بدست بیاریم و دونه دونه به کاراکتر تبدیل کنیم. این میشه همون استفاده از While و Mod و اینا که آقای جهرمی گفتند.

    موفق باشید.

  9. #9
    مهیا جان من متوجه شدم که چنین اتفاقی میافته
    خوب با استفاده از یک متغیر String و گرفتن اعداد به صورت رشته و با دستور[ String [i و گرفتن تک تک کاراکتر ها و با استفاده از ord و بدست آوردن کد اسکی توانستم اعداد را از رشته به عدد تبدیل کنم ولی با این روش عدد ها رو تک به تک دارم یعنی مثلا عدد 342 رو یکی یکی می تونم بدست بیارم که هر کدوم رو جداگونه دارم و نمی توانم به عنوان یک عدد 3 رقمی باهاش کار کنم
    و برای تبدیل عدد به رشته شما گفتی " رقم را به کاراکتر تبدیل میکنیم (بدون استفاده از Str)"
    مهم اینجاست که چجوری من بدون استفاده از Str عدد رو به کاراکتر تبدیل کنم

    با تشکر Saeed_flash

  10. #10
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    نقل قول نوشته شده توسط saeed_flash مشاهده تاپیک
    مهم اینجاست که چجوری من بدون استفاده از Str عدد رو به کاراکتر تبدیل کنم

    با تشکر Saeed_flash
    خوب مثلا میتونی از تابع Chr استفاده کنی . با توجه به این که کد اسکی صفر برابر 48 هستش میتونی اون رو بدست بیاری . برای مثال عدد 4 رو داری برای تبدیل اون به کاراکتر مثلا میتونی بنویسی :

    Var
    AByte : Byte;
    AChar : Char;
    begin
    AByte := 4;
    AChar := chr(AByte + 48);
    end;
    این راهیه که به ذهن من رسید .
    موفق باشید

  11. #11
    مرسی درسته الان فقط تنها مشکلی که مونده اینه که وقتی که رشته رو به عدد تبدیل میکنم عدد ها رو تک تک دارم و اونها رو نمیتونم سر هم کنم و مثلا 325 رشته به عدد تبدیل بشه میشه
    عدد 3
    عدد 2
    عدد 5
    و نمی تونم به صورت عدد 325 داشته باشم اگه در این مورد هم کمکم کنی ازت ممنون میشم

    با تشکر فراوان

  12. #12
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    اینم که خیلی راحته
    طول رشته را با استفاده از دستور strlen به دست آز.
    با یک حلقه ی For عدد ها را به توانی مناسب از 10 برسون و با هم جمع کن.
    مثلا

    Num:=0;
    For i :=Len downto 1 do
    Num:=a[i]*10^(i-1)+NUM;


    البته کد حالت الگوریتمی داره

  13. #13
    نقل قول نوشته شده توسط dkhatibi مشاهده تاپیک
    اینم که خیلی راحته
    طول رشته را با استفاده از دستور strlen به دست آز.
    با یک حلقه ی For عدد ها را در توانی مناسب از 10 برسون و با هم جمع کن.
    مثلا

    Num:=0;
    For i :=Len downto 1 do
    Num:=a[i]*10^(i-1)+NUM;


    البته کد حالت الگوریتمی داره
    خیلی ببخشید میشه بیشتر توضیح بدین

  14. #14
    کاربر دائمی آواتار Mahyaa
    تاریخ عضویت
    آذر 1384
    محل زندگی
    UAE
    سن
    45
    پست
    517
    شما وقی بدونید طول رشته چقدره ، می تونید بفهمید که عددتون چند رقمیه . طول رشته رو باتابع Length بدست میآرید و بقیه اش دقیقا همون کدی میشه که آقای خطیبی براتون نوشتند .
    یعنی اگر فرض کنیم a رشته ورودی باشه که حاوی یک عدد به صورت رشته است :

    Var
    I , Num : Integer;
    Len : Integer;
    begin
    Len := Length[a];
    Num:=0;
    For i :=Len downto 1 do
    Num:=a[i]*10^(i-1)+NUM;
    end;

  15. #15
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    نقل قول نوشته شده توسط Mahyaa مشاهده تاپیک
    شما وقی بدونید طول رشته چقدره ، می تونید بفهمید که عددتون چند رقمیه . طول رشته رو باتابع Length بدست میآرید و بقیه اش دقیقا همون کدی میشه که آقای خطیبی براتون نوشتند .
    یعنی اگر فرض کنیم a رشته ورودی باشه که حاوی یک عدد به صورت رشته است :

    Var
    I , Num : Integer;
    Len : Integer;
    begin
    Len := Length[a];
    Num:=0;
    For i :=Len downto 1 do
    Num:=a[i]*10^(i-1)+NUM;
    end;
    درسته ! فقط یک جا را توجه داشته باشید که [a[i کاراکتر است و اول طبق اون چیزی که دوستان گفتند باید به عدد تبدیل بشه بعد ضرب در توان 10 شود.(تو حلقه منظورمه!)

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

  1. pascal
    نوشته شده توسط yas1213 در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: یک شنبه 09 دی 1386, 22:30 عصر
  2. pascal
    نوشته شده توسط yas1213 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 1
    آخرین پست: یک شنبه 09 دی 1386, 00:55 صبح
  3. pascal?
    نوشته شده توسط yalda909 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 2
    آخرین پست: جمعه 07 دی 1386, 00:15 صبح
  4. صف ها در c,pascal
    نوشته شده توسط hi2bye در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 01 آذر 1385, 17:31 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •