تور لحظه آخری
امروز : چهارشنبه ، 1 اسفند 1403    احادیث و روایات:  حضرت مهدی (عج):من وصىّ آخرين‏ ام، به وسيله من بلا از خانواده و شيعيانم دفع مى ‏شود
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

سایبان ماشین

دزدگیر منزل

اجاره سند در شیراز

armanekasbokar

armanetejarat

Future Innovate Tech

پی جو مشاغل برتر شیراز

خرید یخچال خارجی

بانک کتاب

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

خرید بلیط هواپیما

بلیط اتوبوس پایانه

تعمیرات پکیج کرج

خرید از چین

خرید از چین

خرید سرور اچ پی ماهان شبکه

کاشت ابرو طبیعی و‌ سریع

دوره آموزش باریستا

مهاجرت به آلمان

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

نوار اخطار زرد رنگ

ثبت شرکت فوری

خودارزیابی چیست

فروشگاه مخازن پلی اتیلن

کاشت ابرو طبیعی

پارتیشن شیشه ای اداری

رزرو هتل خارجی

تولید کننده تخت زیبایی

سی پی کالاف

دوره باریستا فنی حرفه ای

چاکرا

استند تسلیت

پی ال سی زیمنس

دکتر علی پرند فوق تخصص جراحی پلاستیک

تعمیر سرووموتور

تحصیل پزشکی در چین

مجله سلامت و پزشکی

تریلی چادری

ایونا

تعمیرگاه هیوندای

چاپ جزوه ارزان قیمت

کشتی تفریحی کیش

تور نوروز خارجی

خرید اسکرابر صنعتی

طراحی سایت فروشگاهی فروشگاه آنلاین راه‌اندازی کسب‌وکار آنلاین طراحی فروشگاه اینترنتی وب‌سایت

کاشت ابرو با خواب طبیعی

هدایای تبلیغاتی

زومکشت

فرش آشپزخانه

خرید عسل

قرص بلک اسلیم پلاس

کاشت تخصصی ابرو در مشهد

صندوق سهامی

تزریق ژل

خرید زعفران مرغوب

تحصیل آنلاین آمریکا

سوالات آیین نامه

سمپاشی سوسک فاضلاب

مبل کلاسیک

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

صندلی گیمینگ

کفش ایمنی و کار

دفترچه تبلیغاتی

خرید سی پی

قالیشویی کرج

سررسید 1404

تقویم رومیزی 1404

ویزای توریستی ژاپن

قالیشویی اسلامشهر

 






آمار وبسایت

 تعداد کل بازدیدها : 1861016930




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

مربع جادویی در پاسکال -


واضح آرشیو وب فارسی:سایت ریسک: مربع جادویی در پاسکال nimja 12 آذر 1386, 16:25شرمنده ام، برنامه رو نوشته بودم ولی یادم رفت پست بزنم. uses crt; var i,j:integer; begin clrscr; for i:=1 to 4 do begin for j:=1 to i+3 do if (j<=4-i) then write() else if (j>4) then write(4-j+i) else write(j+i-4); writeln; end; readkey; end. «کد برنامه PAS در داخل یک فایل zip شده ضمیمه این پست می باشد» دست شما درد نکنه. خیلی خیلی از زحمات شما مچکرم منو ببخشید که هی مزاحمتون میشم. یه سوال دیگه هم داشتم. این سوال درباره نوشتن برنامه برای نشون دادن مربع جادویی هست. فقط برای مرتبه فرد. اگه شد برای حالت کلی برای هرمرتبه فرد. اگر هم نشد فقط برای مرتبه 3*3. اگه با استفاده از آرایه ها و حلقه ها و شرط ها باشه خیلی بهتره. باز هم بی نهایت از شما مچکرم the_king 12 آذر 1386, 20:09مربع جادویی در پاسکال با استفاده از آرایه ها و حلقه ها و شرط ها : uses crt; var a,b,c,i,j,x:integer; matrix:array[1..3,1..3] of integer; begin clrscr; randomize; b:=random(2)+1; c:=random(2)+1; a:=random(2)+b+c+1; for j:=1 to 3 do for i:=1 to 3 do begin x:=a; if i+j<>4 then if ((i+j) mod 3)=0 then x:=x-b else x:=x+b; if i<>j then if j-1=i mod 3 then x:=x-c else x:=x+c; matrix[i,j]:=x; end; for j:=1 to 3 do begin for i:=1 to 3 do write(matrix[i,j]:3); writeln; end; readkey; end. متغیر های a و b و c تعیین کننده اعداد جدول هستند، هیچکدام نباید صفر باشند و بایستی a از مجموع دو متغیر دیگر بزرگتر باشد. من از اعداد تصادفی برای تعیین مقدار این سه عدد استفاده کردم، به همین دلیل هر بار که برنامه را اجرا کنید یک مربع 3 در 3 جدید نمایش داده می شود. کد برنامه پاسکال بصورت zip شده ضمیمه این پست می باشد. nimja 12 آذر 1386, 21:02the-king عزیز ،خیلی خیلی از شما مچکرم. واقعا خیلی بدردم خورد. دست شما درد نکنه. یه سوال دیگه هم داشتم. میخواستم برنامه مربع جادویی رو توپاسکال بنویسم. اگه کمک کنید ممنون میشم. اگه شد برای همه مرتبه های فرد. اگر هم نشد فقط برای مرتبه 3*3 فقط دقت کنید که با استفاده از آرایه ها و حلقه ها و شرط ها باشه. باز هم از زحمات شما مچکرم nimja 13 آذر 1386, 08:04مربع جادویی در پاسکال با استفاده از آرایه ها و حلقه ها و شرط ها : uses crt; var a,b,c,i,j,x:integer; matrix:array[1..3,1..3] of integer; begin clrscr; randomize; b:=random(2)+1; c:=random(2)+1; a:=random(2)+b+c+1; for j:=1 to 3 do for i:=1 to 3 do begin x:=a; if i+j<>4 then if ((i+j) mod 3)=0 then x:=x-b else x:=x+b; if i<>j then if j-1=i mod 3 then x:=x-c else x:=x+c; matrix[i,j]:=x; end; for j:=1 to 3 do begin for i:=1 to 3 do write(matrix[i,j]:3); writeln; end; readkey; end. متغیر های a و b و c تعیین کننده اعداد جدول هستند، هیچکدام نباید صفر باشند و بایستی a از مجموع دو متغیر دیگر بزرگتر باشد. من از اعداد تصادفی برای تعیین مقدار این سه عدد استفاده کردم، به همین دلیل هر بار که برنامه را اجرا کنید یک مربع 3 در 3 جدید نمایش داده می شود. کد برنامه پاسکال بصورت zip شده ضمیمه این پست می باشد. جناب دست شما درد نکنه ولی منظور من اعداد 1 تا 9 بود که از هرطرف جمع بشه برابر 15 باشه. و اعداد تکراری هم در اون نباشه. با تشکر the_king 13 آذر 1386, 13:37خب، این ماتریسی که شما می خواهید جدول سودوکو است نه مربع جادویی، سودوکو یک نوع خاص از مربع جادویی است. اینکه کاری نداره، در جدول سه در سه می خواهید که اعداد از 1 الی 9 باشند پس داریم : a-b-c=1 a+b+c=9 از جمع کردن این دو معادله داریم : a=5 b+c=4 همچنین می خواهید که اعداد تکراری نباشند پس b و c نباید مساوی هم باشند. پس داریم : b=1 , c=3 یا b=3 , c=1 حالا اون سه خط مربوط به مقدار دهی a و b و c را تغییر می دهیم، به همین سادگی : uses crt; var a,b,c,i,j,x:integer; matrix:array[1..3,1..3] of integer; begin clrscr; randomize; b:=random(2)*2+1; c:=4-b; a:=5; for j:=1 to 3 do for i:=1 to 3 do begin x:=a; if i+j<>4 then if ((i+j) mod 3)=0 then x:=x-b else x:=x+b; if i<>j then if j-1=i mod 3 then x:=x-c else x:=x+c; matrix[i,j]:=x; end; for j:=1 to 3 do begin for i:=1 to 3 do write(matrix[i,j]:3); writeln; end; readkey; end. nimja 13 آذر 1386, 16:29نمیدونم با چه زبونی از شما تشکر کنم. اگه میشه لطف کنید دربارهrandomize و random(2) b توضیح بدید. اخه هنوز ما چنین چیزی رو نخوندیم!!!! نمیشه یه جوری نوشت که random توش نباشه؟؟؟!!!!! the_king 13 آذر 1386, 18:53البته می توانید آنرا حذف کنید و بصورت مستقیم به b عدد 1 و به c عدد 3 را نسبت بدهید و یا بالعکس. تابع random یک عدد صحیح را بصورت تصادفی برمی گرداند. آن عددی که به عنوان پارامتر ورودی دریافت می کند محدوده عدد تصادفی است، یعنی عدد تصادفی یک عدد غیر منفی خواهد بود که از پارامتر ورودی کوچکتر است. مثلا اگر شما به عنوان پارامتر ورودی عدد 10 را در نظر بگیرید... random(10) آنوقت عدد تصادفی بین 0 الی 9 خواهد بود (همواره از 10 کوچکتر). من می خواستم که بین دو حالت انتخاب تصادفی بوجود بیاورم که متغیر b یا 1 باشد و یا 3. برای همین نوشتم : b:=random(2)*2+1; تابع random را با پارامتر ورودی 2 دادم تا فقط دو عدد 0 و 1 را برگرداند، نتیجه محاسبه این معادله هم مشخص است : یا 0 را در 2 ضرب و سپس با 1 جمع می کند که می شود 1. یا 1 را در 2 ضرب و سپس با 1 جمع می کند که می شود 3. تابع random در حقیقت یک فرمول ریاضی است که بر اساس یک عدد ورودی تعیین می شود و از دیدگاه ریاضی تصادفی نیست، برای همین در حالت عادی هر بار که یک برنامه را اجرا می کنیم اعداد تصادفی ایجاد شده همیشه مثل دفعات قبلی است. تابع randomize این عدد ورودی اولیه را برحسب تایمر داخلی سیستم تنظیم می کند، تایمر داخلی سیستم تا چند هزارم ثانیه را هم در نظر می گیرد و به همین دلیل شانس تکراری بودن اعداد را خیلی کم می کند. اگر می خواهید random را حذف کنید بجای آن چند سطر بنویسید : begin clrscr; b:=1; c:=3; a:=5; hajiabadi2 07 بهمن 1387, 09:06سلام کمک می خوام یک جدول n*n را طراحی کنید که اعداد 1 تا n را بگیرد ودر هر سطر و ستون آن هیچ عددی تکراری نباشد اکر برای ماتریس 7*7 جواب دهد خوب است




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1808]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن