واضح آرشیو وب فارسی:سایت ریسک: برنامه ای دو عدد بگیرد و بزرگترین را بدهد (از شرط استفاده نشود و شامل کل اعداد مثبت و سونامی 22 ارديبهشت 1387, 14:27چگون ه می توان بدون علامت >و<و..............بین چند عدد بزرگترین را انتخاب کرد سونامی 22 ارديبهشت 1387, 14:30چگونه میتوان بدون علامت>و<و..................... .بزرگترین عدد بین جند عدد نشان را داد Mikhak 22 ارديبهشت 1387, 18:11سلام جناب سونامی واقعا از عنوان تاپیکتون دقیقا میشه پی برد به مسئله .... لطفا درستش کنین.. در مورد مقایسه یک اعداد بدون استفاده از عملگرهای شرطی باید یقه ریاضیات رو چسبید ... شما فرض کن میخوایم بین 6 و 8 بزرگترینش رو پیدا بکنیم بدون همونایی که تو گفتی ... میشه گفت ... اگه a=6 و b=8 min = (a+b) - (abs(a-b)) /2 max = (a+b) + (abs(a-b)) /2 سونامی 22 ارديبهشت 1387, 19:15متوجه فرمایشتون نشدم یعنی شما میگین که نمی تونه از تابع sgn استفاده کنه؟ the_king 22 ارديبهشت 1387, 21:19متوجه فرمایشتون نشدم یعنی شما میگین که نمی تونه از تابع sgn استفاده کنه؟ من متوجه فرمایش خود شما نشدم. چه کسی نمی تونه از تابع Sgn استفاده کنه؟ تابع Sgn علامت یک عدد رو مشخص می کنه. اگر عدد منفی باشه مقدار 1- و اگر عدد مثبت باشه مقدار 1+ و اگر عدد صفر باشد مقدار 0 را بر می گرداند. بر اساس مقداری که تابع برای پارامتر a - b بر می گردونه میشه تشخیص داد که کدوم عدد بزرگتر یا کوچکتره. برای انتخاب بر اساس سه مقدار 1- و 0 و 1+ کافیه مقدار بازگشتی را با 2 جمع کنیم تا به 1 و 2 و 3 تبدیل بشه. حالا تابع Choose می تونه بر اساس سه مقدار 1 و 2 و 3 یکی از اعداد رو برگردونه : MsgBox Choose(Sgn(a - b) + 2, b, a, a) در مثالی که زدم مقدار ماکزیمم بین a و b اعلام خواهد شد. حالا اگر در پارامتر های دوم و چهارم تابع Choose جای a و b را عوض کنیم خروجی تابع هم عدد مینیمم خواهد بود : MsgBox Choose(Sgn(a - b) + 2, a, a, b) sunyboy 21 آبان 1387, 15:08سلام دو عدد را بگیرد و بزرگترین را بدهد (از شرط استفاده نشود و شامل کل اعداد مثبت و منفی )؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ممنونتون میشم . ممنون میشم طودتر جوابش رو بدین:rose: saalek110 21 آبان 1387, 17:10sunyboy عزیز تاپیک شما به این تاپیک الحاق شد. the_king 24 آبان 1387, 23:00سلام دو عدد را بگیرد و بزرگترین را بدهد (از شرط استفاده نشود و شامل کل اعداد مثبت و منفی )؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ممنونتون میشم . ممنون میشم طودتر جوابش رو بدین:rose: پاسخ Mikhak عزیز در قالب یک برنامه : #include <stdio.h> #include <conio.h> #include <stdlib.h> void main() { int a,b; clrscr(); printf ("Please enter a : "); scanf("%d",&a); printf ("Please enter b : "); scanf("%d",&b); printf ("Min = %d ", (a + b - abs(a-b)) /2); printf ("Max = %d ", (a + b + abs(a-b)) /2); getch(); }
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 2424]