راستی برای مثلا سینوس و کسینوس هم توابع کتابخانه ای توی پاسکال ذخیره شده مثلا این برنامه سینوس عدد 10 رو میگیره :
به جای sin میشه از cos (کسینوس) و (آرک تانژانت) arctan هم استفاده کردکد:program sin; var x:real; x:=sin(10); write ('sin 10 =',x) end.
---------- Post added at 01:09 AM ---------- Previous post was at 01:04 AM ----------
فکر کنم باید اون رو integer تعریف کنید (اعداد صحیح)اما یه مشکلی داشت که اگر 3243ddf232+3434 هم بهش میدادی خطا نمیگرفت در حالی که ddf وقتی اون وسط هست باید خطا میداد ؟
real میشه اعداد حقیقی
البته منم از ریاضی سر در نمیارم ، اما یذره برنامه نوشتن بلدم (فقط یه ذره)
راستی میتونید من رو رضا صدا کنید (از rezafh2 راحت تره)
مشکل اجرای غیر صحیح چک کردن رو با کمک تسنیم حل کردیم.
مشکل اینجا بود که begin end برای اجرای چک کردن همش نذاشته بودم....
حالا یه چیز دیگه.
من توی حلقه for هستم ! حالا میخوام ازش خارج شم ! دستور exit باید بزنم درسته ؟ ولی exit که میزنم کلا برنامه بسته میشه ! چیکار باید کرد ؟
چطوری میتونم تو برنامه بهش بگم برو خط فلان برنامه رو اجرا کن.
یعنی بگم تا اینجا خوندی دستت درد نکنه حالا برو از خط ۱۰۰ ادامه کارتو انجام بده![]()
تو برنامه نویسی همچین دستوری پیشنهاد نمیشه کما اینکه تو زبان سی با دستور goto میتونی بری به یه قسمت خاصی از برنامه! تو پاسکال رو دقیق نمیدونم چی میشه.چطوری میتونم تو برنامه بهش بگم برو خط فلان برنامه رو اجرا کن.
پروژت چیه ؟
همون چیزی که چند وقت پیش بم گفتی ؟ عملیات ریاضی و ... ؟
سلام
توی پاسکال حلقه for فقط دستور بعد از خودش رو انجام میده و بعد میره دستور بعدی
اگر تعداد دستوراتی که باید توی حلقه باشن ، زیاد باشه ، میتونید از یه brgin و end; بعد از حلقه استفاده کنید و دستورات مورد نیاز داخل اون باشن
آره begin end یادم رفته بود که تسنیم یادآوری کرد...
بابت اینکه چطوری از حلقه خارج بشیم هم یادم اومد. باید از break استفاده میشد.
حالا چک کردن اینکه جمله شامل عدد و اپراتور هست حل شد.
جمله رو چک میکنه و هر کدوم رو به صورت جداگونه توی یه خونه از آرایه میذاره.
چیزی که الان به ذهنم میرسه اینه که حالا توی آرایه سرچ کنه و اپراتور رو پیدا کنه... اون رو بذاره به عنوان اپراتور. خونه های قبلیش باشه عدد اول و خونه های بعدی باشه عدد دوم ؟
نظرتون چیه ؟
تو c دو تا دستور برای این کار (خروج از حلقه) داریم، break و continue که هر کدوم کاربرد خودش رو داره، تو پاسکال هم باید مشابهاش باشه!
---------- Post added at 11:49 AM ---------- Previous post was at 11:46 AM ----------
شما الان میخواین برنامهای بنویسید که فقط دو تا عدد رو بگیره؟ یعنی همون برنامه سوم!
خوب راهتون درسته. از اول آرایه شروع کنید تا وقتی به عملگر نرسیدید هی در 10 ضرب کنید و با بعدی جمع کنید و برید جلو، به عملگر که رسیدید عدد اول آماده شده، برای عدد دوم هم همین کار رو بکنید، بعد هم عملگر رو بهشون اعمال کنید و نتیجه رو چاپ کنید!
برای ضرب دو عدد اصلا این چیزا نیاز نیست
شما دو تا عدد رو در دو تا متغیر میگیرید و بعد اونها رو در هم ضرب میکنید و در آخر نمایش جواب !
چیزی که نمایش داده میشه فکر کنم اینطوری باشه :کد:program t2; var a,b:integer; begin writeln ('please enter your first number :'); read (a); writeln ('please enter your secound number :'); read (b); writeln ( a,'*',b,'=',a*b ); end.
همین ! (عدد a گرفته میشود و بعد عدد b و بعد در هم ضرب شده و جواب نمایش داده میشود)کد:please enter your first number : 312 please enter your secound number : 42 312 * 42 = 13104
البته این فقط برای ضرب بود .
برای اینکه یکم پیشرفته تر بشه میشه یه متغیر هم برای عملگر ( علامتهای ضرب و تقسیم و ... ) از ورودی گرفت
در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)