ایجاد شرط if در آردوینو (آموزش کامل قرار دادن شرط)

دستور if شرایط را بررسی می کند و در صورت “True یا 1” بودن عبارت، مجموعه دستورات را اجرا می کند.
if (condition) { // ایجاد شرط //statement(s) // بعد از صحیح شدن شرط اجرا میشوند }
- condition: یک عبارت بولی (به عنوان مثال ، می تواند True یا False باشد).
کد نمونه با if
ممکن است براکت ها بعد از دستور if حذف شوند. اگر این کار انجام شود ، سطر بعدی (تعریف شده با نقطه ویرگول) تنها عبارت شرطی می شود.
if (x > 120) digitalWrite(LEDpin, HIGH); // اگر ایکس بیشتر از 120 باشد دستور اجرا میشود if (x > 120) digitalWrite(LEDpin, HIGH); if (x > 120) {digitalWrite(LEDpin, HIGH);} if (x > 120) { digitalWrite(LEDpin1, HIGH); digitalWrite(LEDpin2, HIGH); } // تمامی حالت های بالا صحیح هستند
نکات
عباراتی که در داخل پرانتز ارزیابی می شوند ، نیاز به استفاده از یک یا چند عملگر نشان داده شده در زیر دارند.
اپراتور های مقایسه ای:
x == y (x برابر با y است) x! = y (x برابر با y نیست) x <y (x کمتر از y است) x> y (x بزرگتر از y است) x <= y (x كمتر یا مساوی با y است) x> = y (x بزرگتر یا مساوی با y است)
مراقب باشید که از یک علامت مساوی استفاده نکنید (به عنوان مثال if (x = 10)). علامت مساوی تنها عملگر انتساب است و x را برابر 10 تنظیم می کند (مقدار 10 را در متغیر x قرار می دهد). در عوض از علامت مساوی دوتایی استفاده کنید (به عنوان مثال if (x == 10)) ، که یک عملگر مقایسه ای است ، و آزمایش می کند که x برابر 10 است یا خیر. شرط if (x == 10) فقط در صورتی درست است که x برابر با 10 باشد ، اما جمله قبلی یعنی if (x = 10) همیشه درست است.
به این دلیل است که C++ عبارت if (x = 10) را به این صورت ارزیابی می کند که 10 به x اختصاص داده شده است، بنابراین x اکنون حاوی 10 است. سپس شرط “if “10 را ارزیابی می کند ، که همیشه TRUE است زیرا هر عدد غیر صفر TRUE ارزیابی می شود. در نتیجه ، اگر (x = 10) همیشه TRUE ارزیابی شود، در هنگام استفاده از جمله ‘if’ نتیجه مطلوبی نیست. همچنین، متغیر x روی 10 تنظیم خواهد شد که این نیز عملکرد مطلوبی نیست.
سلام همش این ارور رو از من می گیره زمانی که هر کاری میکنم
exit status 1
Compilation error: expected ‘}’ at end of input
سلام عزیز
در انتهای کدتون یک } باید بگذارید
گذاشتم ولی ازش ارور میگیره
هی انجمن پاک میکنه جای دیکه ای هست بفرستم مثل ایمیل
اینجا کامنت ها هست
در منو سایت روی انجمن بزنید تا وارد انجمن شوید و سپس یک موضوع ایجاد کنید و کد و ارور را قرار بدهید.
سلام و خسته نباشید
خط دستوری که بگه (اگر کلید به مدت سه ثانیه فشار داده شد led رو روشن کنه و اگه کمتر باشه روشن نشه )به چه شکلی باید نوشته بشه ممنونم از راهنماییتون
سلام عزیز
باید از تابع millis استفاده کنید و سه ثانیه اختلاف زمان را با استفاده از این تابع مشخص کنید.
اگر بخواهیم در if بگوییم که اگر این اتفاق افتاد و یک اتفاق دیگر افتاد کاری را انجام بده
مثلا
(if (t<800 and digitalread (13)=1) then digitalwrite (12,high)
لطفا سينتاكس درست دستور بالا رو بفرماييد
سلام عزیز
به این شکل هست:
if (t<800 && digitalRead(13)=1) {
digitalWrite(12,HIGH)
}
آقای رحیمی اگر خانواده ام بخوان باهاتون صحبت کنند باید چه جوری ازتون شماره بگیرن ؟ ممنون
سلام عزیز
اگر نیاز به مشاوره دارید میتوانید با پشتیبانی آنلاین قسمت دوره ها یا تلگرام ما در ارتباط باشید.
خیلی ممنون
ببخشید میشه سوال اولم رو جواب بدین:من اگر بخواهم متغیری به نام mرا در کد lcd.write(); قرار بدهم و بخواهم مفهوم مقدار آن مثلا ۱_۲_۳ و غیره را برسانم باید چگونه خط کد را بنویسم ؟
و اینکه باقی مانده تقسیم علامت درصد است یعنی اینجوری۰=۲٪۴ باقی مانده تقسیم چهار بر دو ،درسته ؟
سلام عزیز
فقط کافی هست
lcd.write(m) بنویسید.
بله علامت درصد باقی مانده هست.
سلام
سال نو مبارک
ایام به کام
ببخشید مزاحم اوقات شریف میشوم
من باید چگونه یک متغیر را مقدارش را یک عدد ثابت مثل صفر یا افزایشی قرار بدهم باید چه خط کدی بنویسم؟
آقای رحیمی من اگر بخواهم متغیری به نام mرا در کد lcd.write(); قرار بدهم و بخواهم مفهوم مقدار آن مثلا ۱_۲_۳ و غیره را برسانم باید چگونه خط کد را بنویسم ؟
و اینکه اگر من بخواهم باقی مانده تقسیم مثلا a بر y را برسانم در حلقه if باید از چه کدی استفاده کنم؟
خیلی ممنون 🌹❤️💕
سلام عزیز
گفتن روش مواردی که فرمودید مدت زمان زیادی میبرد و در یک کامنت نمیشود تمام این مراحل را راهنمایی کرد. میتوانید دوره آموزش آردوینو را مشاهده کنید تمام موارد آموزش داده شده است.
سلام اگه بخوایم فقط تا زمانی که شرط درسته دستورات داخل حلقه اجرا بشه و به محض اینکه شرط نادرست شد از حلقه خارج بشه
سلام عزیز
در این صورت باید از حلقه while آردوینو استفاه کنید.
سلام یک سوال داشتم دستور if باید داخل void loop باید یا بیرون void loop ؟
سلام عزیز
دستور if میتونه در هر حلقه ای loop, setup و … استفاده بشه
سلام ببخشید اگر بخواهیم در if بگوییم که اگر این اتفاق افتاد و یا یک اتفاق دیگر افتاد کاری را انجام بده
سلام عزیز
در پرانتز که شرط رو تعریف میکنید بین دو اتفاق مورد نظر || قرار بدید
سلام می خواستم سه تا مجهول رو با هم مقایسه کنم کد چه طوری باید باشه مثلا a و b و c
سلام دوباره ببخشید اگر بخواهیم بالا دستور if از int استفاده کنیم چگونه می توانیم int را برابر دو چیز قرار دهیم مثلاً ;int x= y = digitalRead (z)
چرا میخواهید به این شکل استفاده کنید اصلا؟
در دو خط بنویسید
اگر در دو خط بنویسم خطا می دهد
به این شکل بنویسید.
سلام اگر بخواهیم دوتا چیز را قرار بدهیم مثلا بگوییم که اولین نسبت به دومی مخالف و دومی نسبت به سومی مساوی باید چیکار کنیم؟
سلام عزیز، منظورتون رو متوجه نشدم
با عرض سلام خدمت شما
ممنون بابت مطالب بسیار خوبتون
اگر بخوام در برنامه لودسل که زحمت کشیدید در سایت قراردادید شرطی بذارم مبنی بر اینکه اگر وزن از یه مقدار مشخصی بیشتر شد مثلا یه LED روشن بشه از این دستور if (x > 120) digitalWrite(LEDpin, HIGH) در کدوم قسمت برنامه باید استفاده کنم و به جای x چه متغیری باید بذارم
متشکرم
سلام عزیز. شرط رو ایجاد کنید، در پرانتز x > 120 رو بنویسید و در بین آکولاد ها digitalWrite(LEDpin, HIGH) رو قرار بدید.