SlideShare a Scribd company logo
1 of 11
‫انواع‬ ‫و‬ ‫متغییرها‬
‫ریاضی‬ ‫عملیات‬
‫ثابت‬ ‫مقادیر‬
Declaration‫کردن‬ ‫اعالن‬ ‫یا‬:
‫نامگذاری‬
‫کردن‬ ‫مشخص‬Type
int inch;
Fundamental Types
User-defined Types
bool ‫منطقی‬
char, wchar_t ‫حروف‬‫الفبا‬
short, int, long ‫اعداد‬‫صحیح‬
float, double ‫اعشاری‬ ‫اعداد‬
void ‫بدون‬‫نوع‬
‫الفبا‬ ‫حروف‬ ‫و‬ ‫صحیح‬ ‫اعداد‬:
‫عالمت‬ ‫با‬
‫عالمت‬ ‫بدون‬
signed char
signed int
unsigned char
unsigned int
x = y ‫مقدار‬‫کردن‬ ‫دهی‬
x + y ‫جمع‬‫کردن‬
+x ‫تک‬ ‫مثبت‬‫عملوند‬
x - y ‫کردن‬ ‫تفریق‬
-x ‫عملوند‬ ‫تک‬ ‫کردن‬ ‫قرینه‬
x * y ‫کردن‬ ‫ضرب‬
x / y ‫کردن‬ ‫تقسیم‬
x % y ‫صحیح‬ ‫مانده‬ ‫باقی‬
x == y ‫برابر‬
x != y ‫مساوی‬ ‫نا‬
x < y ‫بزرگتر‬
x > y ‫کوچکتر‬
x <= y ‫مساوی‬ ‫یا‬ ‫کوچکتر‬
x >= y ‫مساوی‬ ‫یا‬ ‫بزرگتر‬
1. // Function that doesn't return a value
2. void some_function()
3. {
4. // Initialize floating-point number
5. double d = 2.2;
6. int i = 7; // initialize integer
7. d = d + i; // Assign sum to d
8. i = d * i; // Assign product to i
9. }
x += y x = x + y
++x ‫یا‬ x++ x = x + 1
x -= y x = x - y
--x ‫یا‬ x-- x = x - 1
x *= y x = x * y
x /= y x = x / y
x %= y x = x % y
Constants:
const:‫نکند‬ ‫تغییر‬ ‫دیگر‬ ‫متغییر‬ ‫مقدار‬ ‫که‬ ‫میدهد‬ ‫قول‬
constexpr:‫است‬ ‫شده‬ ‫مشخص‬ ‫کامپایل‬ ‫زمان‬ ‫در‬ ‫متغییر‬ ‫مقدار‬
const int dmv = 17;
constexpr double max1 = 1.4;
2. types, vars, arith, consts

More Related Content

More from Vahid Heidari

9. class hierarchies
9. class hierarchies9. class hierarchies
9. class hierarchiesVahid Heidari
 
7. abstraction mechanisms, containers
7. abstraction mechanisms, containers7. abstraction mechanisms, containers
7. abstraction mechanisms, containersVahid Heidari
 
6. separation, namespace, error
6. separation, namespace, error6. separation, namespace, error
6. separation, namespace, errorVahid Heidari
 
5. struct, class, enum
5. struct, class, enum5. struct, class, enum
5. struct, class, enumVahid Heidari
 
1. preface, hello world
1. preface, hello world1. preface, hello world
1. preface, hello worldVahid Heidari
 

More from Vahid Heidari (9)

10. copy and move
10. copy and move10. copy and move
10. copy and move
 
9. class hierarchies
9. class hierarchies9. class hierarchies
9. class hierarchies
 
8. abstract types
8. abstract types8. abstract types
8. abstract types
 
7. abstraction mechanisms, containers
7. abstraction mechanisms, containers7. abstraction mechanisms, containers
7. abstraction mechanisms, containers
 
6. separation, namespace, error
6. separation, namespace, error6. separation, namespace, error
6. separation, namespace, error
 
5. struct, class, enum
5. struct, class, enum5. struct, class, enum
5. struct, class, enum
 
4. pointers, arrays
4. pointers, arrays4. pointers, arrays
4. pointers, arrays
 
3. tests, loops
3. tests, loops3. tests, loops
3. tests, loops
 
1. preface, hello world
1. preface, hello world1. preface, hello world
1. preface, hello world
 

2. types, vars, arith, consts

  • 1.
  • 2. ‫انواع‬ ‫و‬ ‫متغییرها‬ ‫ریاضی‬ ‫عملیات‬ ‫ثابت‬ ‫مقادیر‬
  • 3. Declaration‫کردن‬ ‫اعالن‬ ‫یا‬: ‫نامگذاری‬ ‫کردن‬ ‫مشخص‬Type int inch; Fundamental Types User-defined Types
  • 4. bool ‫منطقی‬ char, wchar_t ‫حروف‬‫الفبا‬ short, int, long ‫اعداد‬‫صحیح‬ float, double ‫اعشاری‬ ‫اعداد‬ void ‫بدون‬‫نوع‬
  • 5. ‫الفبا‬ ‫حروف‬ ‫و‬ ‫صحیح‬ ‫اعداد‬: ‫عالمت‬ ‫با‬ ‫عالمت‬ ‫بدون‬ signed char signed int unsigned char unsigned int
  • 6. x = y ‫مقدار‬‫کردن‬ ‫دهی‬ x + y ‫جمع‬‫کردن‬ +x ‫تک‬ ‫مثبت‬‫عملوند‬ x - y ‫کردن‬ ‫تفریق‬ -x ‫عملوند‬ ‫تک‬ ‫کردن‬ ‫قرینه‬ x * y ‫کردن‬ ‫ضرب‬ x / y ‫کردن‬ ‫تقسیم‬ x % y ‫صحیح‬ ‫مانده‬ ‫باقی‬
  • 7. x == y ‫برابر‬ x != y ‫مساوی‬ ‫نا‬ x < y ‫بزرگتر‬ x > y ‫کوچکتر‬ x <= y ‫مساوی‬ ‫یا‬ ‫کوچکتر‬ x >= y ‫مساوی‬ ‫یا‬ ‫بزرگتر‬
  • 8. 1. // Function that doesn't return a value 2. void some_function() 3. { 4. // Initialize floating-point number 5. double d = 2.2; 6. int i = 7; // initialize integer 7. d = d + i; // Assign sum to d 8. i = d * i; // Assign product to i 9. }
  • 9. x += y x = x + y ++x ‫یا‬ x++ x = x + 1 x -= y x = x - y --x ‫یا‬ x-- x = x - 1 x *= y x = x * y x /= y x = x / y x %= y x = x % y
  • 10. Constants: const:‫نکند‬ ‫تغییر‬ ‫دیگر‬ ‫متغییر‬ ‫مقدار‬ ‫که‬ ‫میدهد‬ ‫قول‬ constexpr:‫است‬ ‫شده‬ ‫مشخص‬ ‫کامپایل‬ ‫زمان‬ ‫در‬ ‫متغییر‬ ‫مقدار‬ const int dmv = 17; constexpr double max1 = 1.4;

Editor's Notes

  1. در C++ برای اینکه بتونیم یک عملیات یا محاسباتی رو انجام بدیم باید متغییرهایی که قراره روی اونا کاری انجام بشه تعریف کنیم. اصطلاحا می گیم که باید متغییر رو Declare کرد. برای Declare کردن یک متغییر باید یک اسم برای اون بنویسیم؛ و نوع اون یا Type اون رو مشخص کنیم. نام متغییر به شما اجازه میده تا به اون دسترسی داشته باشید و بتونید به اون ارجاع بدید و عملیاتی رو روی اون انجام بدید. Type هم مشخص می کنه که چه مقادیری میتونید به اون اختصاص داده بشه و چه عملیاتهایی می شه روی اون انجام داد. مثلا دستور int inch; یک متغییر به نام inch رو تعریف می کنه که Type اون int هست.   در C++ دو نوع type داریم. یه سری Typeهای پایه ای یا Fundamental و ارتباط مستقیم به سخت افزار داره و typeهای تعریف شده توسط برنامه نویس که بعدا در موردش صحبت می کنیم
  2. انواع یا typeهای پایه ای رو در زبان C++ در این اسلاید می بینید. نوع void برای زمانی استفاده می شه که اطلاعاتی در مورد نوع یک متغییر نداریم و فقط برای اشاره گرها استفاده می شه. یا برای نوع خروجی تابع استفاده می شه و میگه که تابع چیزی به عنوان خروجی بر نمی گردونه.
  3. انواع صحیح و حروف الفبا دارای 2 نوع دیگه هم میشه با علامت و بدون علامت. نوع علامت دار یعنی متغییر شامل اعداد منفی و مثبت میشه. و نوع بدون علامت یعنی متغییر فقط شامل اعداد مثبت میشه. با گذاشتن signed قبل از type میشه اونو به علامت دار تبدیل کرد و با گذاشتن unsigned قبل از type اونو به نوع علامت دار تبدیل می کنیم.
  4. عملیات ریاضی که میشه روی متغییر های پایه ای انجام داد در این اسلاید می بینید. به هر کدوم از این عمل های ریاضی به اصطلاح operator یا عملگر می گن
  5. عملیاتهای منطقی در شرط ها استفاده می شن برای اینکه یک شرایط رو در برنامه بررسی کنیم و بر اساس این شرایط تصمیم بگیریم. دقت کنید که دوتا مساوی برای این که چک کنیم 2 تا متغیر با هم برابر هستند یا نه؟ اما یدونه مساوی یعنی مقدار سمت راستی رو بریز توی متغییر سمت چپی
  6. این عملیاتها می تونه با هم ترکیب بشه و به هر صورتی با هم بکار برده بشه تا یک محاسباتی انجام بشه.
  7. در C++ علاوه بر عملیاتهای ریاضی معمولی که در ریاضیات مشابه آنها را دیدید؛ یکسری عملیاتهایی خاص برای دستکاری متغییرها و انجام محاسبات هم وجود داره. مثلا: x += y یعنی x رو با y جمع کن و حاصل اون رو دوباره بریز توی x. این عبارت یه جور مختصر نویسی هست و باعث میشه که برنامه هایی که می نویسید کوتاهتر بشه و کمتر تایپ کنید. عبارت بعدی ++x یعنی یکی به مقدار x اضافه کن و حاصل رو دوباره بریز توی x. بقیه موارد هم به همین صورت هستند یعنی یه مختصر نویسی هست
  8. Constant یعنی مقدار ثابت. در C++ دو نوع مقدار ثابت داریم. وقتی که متغییری رو با const معرفی می کنیم یعنی اینکه من قول می دم که دیگه مقدار این متغییر رو تغییر نخواهم داد و بر اساس این کامپایلر میتونه یکسری قوانین رو هر جا که داریم از این متغییر استفاده می کنیم چک میکنه و مطمئن بشه که مقدار اون تغییر نمی کنه. constexpr هم به این معنیه که مقدار متغییری که با constexpr تعریف شده در زمان کامپایل مشخص می شه و بیشترین استفاده ی اون برای بالا بردن کارایی برنامه ست.   چندتا مثال رو میبینید. برای Declare کردن یک مقدار ثابت کافیه کلمه ی const یا constexpr رو قبل از type اون بنویسید. در مثال اول dmv یک مقدار ثابت هست و در دومی max1 یک مقدار ثابته که در زمان کامپایل مقدارش معلومه.
  9. در آخر مطالبی که یاد گرفتیم جمع بندی می کنیم: در این ویدیو با Declare کردن یک متغییر آشنا شدیم و چند مثال از تعریف کردن متغییر با Typeهای پایه ای C++ با هم دیدیم. عملیاتهای ریاضی و منطقی که می شه روی متغییرها انجام داد رو و عبارتهای مختصر شده ای که C++ اجازه میده تا با استفاده از اونا برنامه های کوتاهتری رو بنویسیم بحث کردیم. در آخر هم مقادیر ثابت رو توضیح دادم که شبیه تعریف متغییر بودند ولی بر خلاف متغییرها مقدار اونا در طول اجرای برنامه تغییر نمی کنه.   امید وارم که مطالب مطرح شده مفید بوده باشه و آموزشهای بعدی رو هم دنبال کنید.