مفاهیم اولیه برنامه نویسی - یادداشت دوم (انواع داده، کلمات کلیدی، عملگرها و حلقهها)
انواع داده (Data Types)
انواع داده در C
در جدول زیر انواع داده در زبان برنامه نویسی c را میبینیم :
| type | Keyword | Value range which can be represented by this data type | |||
|---|---|---|---|---|---|
| Character | char | -128 to 127 or 0 to 255 | |||
| Number | int | -32768 to 32767 or -2147483648 to 2147483647 | Small Number | short | -32768 to 32767 |
| Long Number | long | -2147483648 to 2147483647 | |||
| Decimal Number | float | 1.2E-38 to3.4E+38 till 6 decimal places |
این داده ها به عنوان داده های اصلی شناخته میشوند و میتوانند برای ایجاد دادههای پیچیدهتر استفاده شوند که دادههای تعریف شده توسط کاربر میباشند.
انواع داده در پایتون
پایتون دارای 5 نوع داده استاندارد میباشد اما این زبان برنامه نویسی از کلمه کلیدی برای مشخص کردن داده خاصی استفاده نمیکند بلکه به طور هوشمند نوع داده را خودکار تشخیص میدهد.
Numbers
String
List
Tuple
Dictionary
Numbers تمامی داده های عددی اعم از اعداد اعشاری را مشخص میکنند، String توالی کاراکترها با طول یک یا بیشتر را نشان میدهد. این دو نوع داده در اکثر موارد کفایت میکند .
متغیرها Variables
متغیرها نام هایی هستند که به مکانهای حافظه برای ذخیره مقادیر در برنامه ارجاع میشوند.
ایجاد متغیرها Creating variables
ایجاد متغیرها در زبان c تحت عنوان declaring variables نیز شناخته میشود. زبان های برنامه نویسی مختلف، روشهای متفاوتی را برای ایجاد متغیرهادر درون برنامه دارند. به عنوان مثال در زبان C روش ساده زیر برای تعریف متغییر بکار میرود:
#include<stdio.h>
main()
{
int a;
int b;
}
برنامه بالا دو متغییر را که دو فضای حافظه را با نامهای a و b ذخیره میکنند نشان میدهد. این دو متغییر با کلمه کلیدی
int که نوع خاصی از داده میباشد ایجاد شده اند که به معنای این است که میخواهیم داده ها با مقدار عدد صحیح در این دو متغییر ذخیره شوند. میتوانید داده های مشابه را در یک خط با جداسازی توسط کاما قرار دهید، مانند مثال زیر :
#include<stdio.h>
main()
{
int a, b;
long c;
float e,f;
}
در زیر به چند نکته مهم در خصوص متغیرها اشاره میکنیم :
نام متغیر میتواند تنها یک نوع مقدار را ذخیره کند.
زبان c نیازمند تعریف متغیر پیش از استفاده در برنامه میباشد. شما نمیتوانید نام متغیر را در برنامه بدون تعریف آن استفاده کنید، در حالیکه زبانهای برنامه نویسی همانند پایتون به شما امکان استفاده از نام متغیر بدون تعریف آن را میدهند.
نام متغیر تنها یکبار در برنامه میشود. به عنوان مثال اگر متغیر a برای ذخیره سازی مقدار عدد صحیح در برنامه تعریف شد، نمی توان مجدد برای ذخیره سازی سایر انواع داده بکار گرفته شود.
زبان های برنامه نویسی همانند پایتون، php، perl، … وجود دارند که نیازی به تعریف نوع داده در هنگام ایجاد متغیر ندارند. بنابراین میتوانید int، float ، long را بدون تعریف نوع داده در آنها استفاده کنید.
زبان های برنامه نویسی استانداردها و محدودیتهایی برای نامگذاری متغیرها دارند که لازم است از انها مطلع شویم. اکثر زبان های برنامه نویسی اجازه شروع نام متغییر با عدد را نمیدهند.
ذخیره مقادیر در متغیرها Store values in variables
پیش از این به نحوه تعریف متغییرها پرداختیم، حال در مورد ذخیره کردن مقادیر در متغیرها صحبت میکنیم :
#include<stdio.h>
main()
{
int a, b;
a = 20
b = 53
}
برنامه فوق، دو دستور اضافه دارد که عدد 20 را در متغیر a و عدد 53 را در متغیر b ذخیره میکند. اکثر زبانهای برنامه نویسی روش مشابهی برای ذخیره مقادیر در نظر میگیرند که مشابه کد بالاست.
دسترسی به مقادیر ذخیره شده متغیرها Access stored values in variables
اگر فرآیند استفاده از مقادیر ذخیره شده در متغیرها را ایجاد نکنیم، هیچ لزومی برای ذخیره مقادیر در آنها وجود ندارد. میدانیم که در برنامه فوق، دو متغیر a و b وجود دارند که مقادیر 20 , 53 در انها ذخیره شده است. حال میخواهیم این دو مقدار ذخیره شده را چاپ کنیم. در زیر یک کد به زبان c را مشاهده میکنید که مقادیر این دو متغییر را چاپ میکند :
#include<stdio.h>
main()
{
int a, b;
a = 20
b = 53
printf("Value of a = %d\n",a");
printf("Value of a = %d\n",b");
}
و پس از اجرای کد، خروجی به این شکل خواهد بود :
ٰValue of a = 20
ٰValue of b = 53
متغیرها در پایتون Variables in python
در زیر نمونه برنامه نوشته شده به زبان پایتون ارایه شده است، این برنامه دو متغییر a و b را ایجاد میکند و مقادیر 20 و 53 را به انها اختصاص میدهد. در پایتون نیازی به تعریف نوع داده در هنگام تعریف متغیر نداریم و همچنین نیازی به پیش مقداردهی نیز وجود ندارد.
a = 20
b = 53
print "Value of a =",a
print "Value of b =",b
print "Value of a =",a "and Value of b =",b
keyword کلمات کلیدی
یکی از مهمترین و متداولترین قانونهای تمامی زبانهای برنامه نویسی این است که نمی توان یک کلمه کلیدی رزرو شده را به عنوان نام متغیر بکار برد، این بدان معنا است که نمی توان متغییر خود را int یا float نامگذاری کرد.
کلمات کلیدی رزرو شده در زبان C
-
auto else long switch break enum register typedef case extern return union char float short unsigned const for signed void continue goto sizeof volatile default if static while do int struct _Packed double
کلمات کلیدی رزرو شده در زبان پایتون
-
False def if raise None del import return True elif in try and else is while as except lambda with assert finally nonlocal yield break for not class from or continue global pass
عملگرها Operators
یک عملگر در زبان برنامه نویسی سمبلی است که به کامپایلر یا مفسر برای اجرای یک عملیات ریاضی، مقایسهای، منطقی، و تولید نتایج نهایی اشاره میکند.
عملگرهای ریاضی Arithmetic Operators
برنامه های کامپیوتری به طور گسترده برای محاسبات ریاضی بکار میروند. میتوانیم یک برنامه کامپیوتری بنویسیم که دو عدد ساده را با یکدیگر جمع کند و همچنین برنامهای میتوان نوشت که یک معادله پیچیده را حل کند.
| Operator | Descriotion |
|---|---|
| + | Adds two operands. |
| - | Subtracts second operand from the first. |
| * | Multiplies both operands. |
| / | Divides numerator by de-nimerator. |
| % | This gives remainder of an integer division. |
عملگرهای مقایسهای Relational Operators
همانگونه که از نمشان پیداست برای مقایسه بین متغییرها بکار میروند
| Operator | Descriotion |
|---|---|
| == | Equal to |
| != | Not equal to |
| > | Greater than |
| < | Less than |
| >= | Greater than or equal to |
| <= | Less than or equal to |
عملگرهای منطقی Logical Operators
عملگرهای منطقی در تمامی زبانهای برنامه نویسی بسیار مهم هستند و براساس آنها ما در تصمیمگیری یک شرط معین را مشخص میکنیم.
| Operator | Descriotion |
|---|---|
| && | and |
| || | or |
| ! | not |
عملگر ها در پایتون
تمامی عملگر های پیشتر گفته شده برای زبان c در پایتون نیز وجود دارند و به همان شرح عمل میکنند.
حلقه ها Loops
در مثالی که پیش از این بررسی کردیم، تصور کنید بخواهیم 1000 مرتبه دستور printf را تکرار کنیم. آیا باید هزار مرتبه این دستور را بنویسیم؟ مطمئنا خیر. اکثر زبان های برنامه نویسی مفهومی با نام loop یا حلقه را ایجاد میکنند که امکان اجرای یک یا بیشتر تعداد دستور را چندین بار فراهم میکند. در زیر با یک مثال به حلقه while در زبان c میپردازیم:
#include<stdio.h>
main()
{
int = 0;
while (i < 5)
{
printf("Hello, world!\n");
i = i + 1;
}
}
نتیجه برنامه پس از اجرا به شرح زیر است:
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
برنامه بالا از حلقه while استفاده میکند که برای اجرای دستورات موجود در {…} بکار میرود.
یک دستور loop به ما امکان اجرای گروهی از دستورات را به شکل مکرر می دهد، در دیاگرام زیر شکل عمومی دستور loop در اکثر زبان های برنامه نویسی را میبینید.

حلقه while
گرامر حلقه while در زبان c به شکل زیر است :
while (condition)
{
/* ... while loop body ...*/
}
کد بالا را میتوان به صورت دیاگرام پایین شرح داد :

نکات قابل توجه در مورد حلقه while به شرح زیر است :
یک حلقه while با کلمه کلیدی آغاز میشود و توسط شرطی که داخل () قرار دارد پیگیری میشود.
در ادامه دستور while() یک بدنه حلقه داخل {…} خواهید داشت.
حلقه while میتواند یک یا بیشتر خط از کد برنامه برای اجرای مکرر باشد.
اگر حلقه while تنها یک خط باشد استفاده از {…} اختیاری میباشد.
حلقه while دستورات بدنه را تا وقتی که شرط صحیح باشد اجرا نمیکند. شرط معمولا یک عبارت مقایسهای است، که مقدار true و false را بررسی میکند. مقدار صفر معادل false و مقدار غیر صفر معادل true در نظر گرفته میشود.
حلقه do … while
اگر به حلقه while دقت کرده باشید، شرط را پیش از اجرا بررسی میکند و در صورت صحیح بودن شرط، دستورات داخل بدنه را اجرا میکند. زبان c شکل دیگری از حلقه را مهیا میکند که حلقه do … while نام دارد و امکان میدهد که یک بدنه حلقه یکبار پیش از بررسی شرط اجرا شود، گرامر آن به شکل زیر است :
do
{
/* ... loop body ...*/
} while (condition);
کد بالا را میتوان به صورت دیاگرام پایین شرح داد :

دستور شکست the break statement
هنگامی که دستور شکست در داخل یک حلقه قرار میگیرد، حلققه بلافاصله اتمام میپذیرد و کنترل برنامه به دستور بعد از حلقه ارجاع میشود. گرامر این دستور به شکل زیر میباشد:
break;
دستور شکست به شکل دیاگرام زیر ارایه میشود :

### دستور ادامه the continue statement دستور ادامه در زبان c همانند دستور شکست عمل میکند. اما به جای اجبار پایان برنامه، اجبار به ادامه تکرار بعدی حلقه را در پی خواهد داشت. گرامر این دستور به شکل زیر است.
continue;
دستور ادامه به شکل دیاگرام زیر تحلیل میشود :

حلقه در پایتون Loops in Python
مثال زیر یک حلقه while در زبان برنامه نویسی پایتون میباشد :
i =0
while(i<5)
print"Hello, World!"
i = i+1
print "Loop ends"
در نتیجه اجرای برنامه خطوط زیر چاپ خواهد شد :
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Loop ends
دستورات break و continue در پایتون نیز کاملا شبیه این دستورات در زبان c میباشند.