#include <iostream>
using namespace std;
int main() {
int n;
cout << "Enter the number of Fibonacci numbers: ";
cin >> n;
int a = 0, b = 1, c;
cout << "Fibonacci series: ";
cout << a << ", " << b << ", ";
int i = 3;
while (i <= n) {
c = a + b;
cout << c << ", ";
a = b;
b = c;
i++;
}
cout << endl;
return 0;
}
زبان برنامه نویسی :#cpp
#include <iostream>
using namespace std;
int main() {
int num, reversed = 0;
cout << "Enter a number: ";
cin >> num;
while (num != 0) {
int remainder = num % 10;
reversed = reversed * 10 + remainder;
num /= 10;
}
cout << "Reversed number: " << reversed << endl;
return 0;
}
زبان برنامه نویسی :#cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "Enter a number: ";
cin >> n;
int m = 1;
while (m < n) {
m *= 2;
}
m -= 1;
bool isMersennePrime = true;
int i = 2;
while (i * i <= m) {
if (m % i == 0) {
isMersennePrime = false;
break;
}
i++;
}
if (isMersennePrime) {
cout << m << " is a Mersenne prime number.";
} else {
cout << m << " is not a Mersenne prime number.";
}
return 0;
}
زبان برنامه نویسی :#cpp
#include <iostream>
#include <cmath>
using namespace std;
int main() {
float a, b, c;
cout << "Please enter the length of the first side: ";
cin >> a;
cout << "Please enter the length of the second side: ";
cin >> b;
cout << "Please enter the length of the third side: ";
cin >> c;
// Check the triangle formation condition
if (a <= 0 || b <= 0 || c <= 0 || a + b <= c || a + c <= b || b + c <= a) {
cout << "These three numbers cannot form the sides of a triangle.";
} else {
// Calculate the triangle area using the Heron's formula
float s = (a + b + c) / 2; // Semi-perimeter of the triangle
float area = sqrt(s * (s - a) * (s - b) * (s - c)); // Triangle area
cout << "The area of the triangle with the given sides is: " << area;
}
return 0;
}
زبان برنامه نویسی :#cpp
سلام و درود
خواستم چند مورد رو بگم که احتمالا کمک کننده باشه.
-اگر به برنامه نویس علاقه دارید یا مبانی برنامه نویسی دانشگاه دارید مطالب میتونه برای شما مناسب باشه.
-در کانال آنچه که مربوط به مبانی برنامه نویسی دانشگاه ها و چیزهایی که اصولا تدریس میشه قرار میگیره.
- اگر کانالی ایجاد شد که مربوط به برنامه نویسی باشه مثلا برنامه نویسی پیشرفته یا حل سوالات الگوریتمی یا مباحث کامپیوتری (فرانت و بکند و دواپس و ...) در کانال اطلاع رسانی میشه.
- زبان های c وcpp و python در کانال گذاشته خواهد شد و اگر زبانی درخواست بالایی داشته باشه و امکانش باشه اضافه میشه
- با استفاده از #کد و #cpp و #c و #python و #آموزش و #کوییز و #ابزار و #متفرقه میتونید بخش مربوطه رو مطالعه کنید.
-قرار مطالب در مورد سه زبان python , cpp,c باشه لذا هر کسی متناسب با زبان مورد نظر میتونه مطالب رو دنبال کنه.
- اگر فکر می کنید کدی مشکل داشت یا در مورد کد سوالی بود یا هر چیز دیگه میتونید با @mohammadf111 در ارتباط باشید.
- سعی میشه زود به زود مطلب جدید گذاشته بشه اما بطوریکه بشه مطالب رو دنبال کرد.
- امتحان و تکلیف انجام نمی شود اما در مورد تکلیف اگه سوال داشتید میتونم کمک کنم.
- یه نکته ای که هست بچه هایی که میخوان مبانی رو تازه یاد بگیرن اصولا متغیر ها رو a , b , ... میزارن اما در اینجا از متغیر با نام های با مفهوم استفاده شده که کد قابل درک تر باشه و در پرینت ها و گرفتن از ورودی هم جملات با مفهوم استفاده شده. به هرحال خواستم بگم که تفاوتی نداره و فقط نام ها بلند تر است وگرنه تفاوتی نیست.
علت ایجاد کانال هم این است که هر ترم تعدادی بچه ها سوال می پرسیدند بخاطر همین بنا داشتم که سوالات رو در کنال بزارم و بقیه هم استفاده کنند و اینکه خودم هم اضافه تر مطالبی بزارم.
اگر شما هم سوالی داشتید که فکر میکنید میتونه در کانال قرار بگیره که بقیه هم استفاده کنند خوشحال میشم بهم بگید.
و در آخر هم به افرادی که تمایل دارن و حس می کنید نیاز دارند کانالو معرفی کنید.
سپاس🙏
خواستم چند مورد رو بگم که احتمالا کمک کننده باشه.
-اگر به برنامه نویس علاقه دارید یا مبانی برنامه نویسی دانشگاه دارید مطالب میتونه برای شما مناسب باشه.
-در کانال آنچه که مربوط به مبانی برنامه نویسی دانشگاه ها و چیزهایی که اصولا تدریس میشه قرار میگیره.
- اگر کانالی ایجاد شد که مربوط به برنامه نویسی باشه مثلا برنامه نویسی پیشرفته یا حل سوالات الگوریتمی یا مباحث کامپیوتری (فرانت و بکند و دواپس و ...) در کانال اطلاع رسانی میشه.
- زبان های c وcpp و python در کانال گذاشته خواهد شد و اگر زبانی درخواست بالایی داشته باشه و امکانش باشه اضافه میشه
- با استفاده از #کد و #cpp و #c و #python و #آموزش و #کوییز و #ابزار و #متفرقه میتونید بخش مربوطه رو مطالعه کنید.
-قرار مطالب در مورد سه زبان python , cpp,c باشه لذا هر کسی متناسب با زبان مورد نظر میتونه مطالب رو دنبال کنه.
- اگر فکر می کنید کدی مشکل داشت یا در مورد کد سوالی بود یا هر چیز دیگه میتونید با @mohammadf111 در ارتباط باشید.
- سعی میشه زود به زود مطلب جدید گذاشته بشه اما بطوریکه بشه مطالب رو دنبال کرد.
- امتحان و تکلیف انجام نمی شود اما در مورد تکلیف اگه سوال داشتید میتونم کمک کنم.
- یه نکته ای که هست بچه هایی که میخوان مبانی رو تازه یاد بگیرن اصولا متغیر ها رو a , b , ... میزارن اما در اینجا از متغیر با نام های با مفهوم استفاده شده که کد قابل درک تر باشه و در پرینت ها و گرفتن از ورودی هم جملات با مفهوم استفاده شده. به هرحال خواستم بگم که تفاوتی نداره و فقط نام ها بلند تر است وگرنه تفاوتی نیست.
علت ایجاد کانال هم این است که هر ترم تعدادی بچه ها سوال می پرسیدند بخاطر همین بنا داشتم که سوالات رو در کنال بزارم و بقیه هم استفاده کنند و اینکه خودم هم اضافه تر مطالبی بزارم.
اگر شما هم سوالی داشتید که فکر میکنید میتونه در کانال قرار بگیره که بقیه هم استفاده کنند خوشحال میشم بهم بگید.
و در آخر هم به افرادی که تمایل دارن و حس می کنید نیاز دارند کانالو معرفی کنید.
سپاس🙏
👍3
در زبان #cpp :
در زبان برنامهنویسی C++، دادهها (Data Types) برای تعریف نوع مقادیر استفاده میشوند. زبان C++ دارای دادههای اصلی و ترکیبی است که در ادامه به تمامی آنها میپردازیم:
دادههای اصلی:
1. اعداد صحیح (Integer): استفاده میشود برای نمایش اعداد صحیح، مانند 1، 2، -10 و غیره. در C++، اعداد صحیح با استفاده از نوع داده
2. اعداد اعشاری (Floating-Point): استفاده میشود برای نمایش اعداد اعشاری، مانند 3.14، 2.5، -0.01 و غیره. در C++، اعداد اعشاری با استفاده از نوع داده
3. حروف (Character): استفاده میشود برای نمایش یک کاراکتر، مانند حروف الفبا، اعداد و نمادها. در C++، کاراکترها با استفاده از نوع داده
4. بولین (Boolean): استفاده میشود برای نمایش مقادیر درست (true) و غلط (false). در C++، بولین با استفاده از نوع داده
دادههای ترکیبی:
5. رشتهها (Strings): استفاده میشود برای نمایش مجموعهای از کاراکترها، مانند "Hello World!" و "C++ Programming". در C++، رشتهها به صورت آرایهای از کاراکترها تعریف میشوند.
6. آرایهها (Arrays): استفاده میشود برای نگهداری مجموعهای از عناصر همان نوع داده. در C++، آرایهها با استفاده از نوع داده مورد نظر و تعداد عناصر آرایه تعریف میشوند.
7. ساختارها (Structures): استفاده میشود برای ترکیب چندین نوع داده مختلف در یک متغیر. در C++، ساختارها با استفاده از کلیدواژه
شارهگرها (Pointers): استفاده میشود برای نشان دادن آدرس حافظه یک متغیر. در C++، اشارهگرها با استفاده از عملگر
9. نوع خالص (Void): استفاده میشود برای نشان دادن عدم وجود نوع خاصی. در C++،
1. اعداد صحیح (Integer): استفاده میشود برای نمایش اعداد صحیح، مانند 1، 2، -10 و غیره. مثال:
2. اعداد اعشاری (Floating-Point): استفاده میشود برای نمایش اعداد اعشاری، مانند 3.14، 2.5، -0.01 و غیره. مثال:
3. حروف (Character): استفاده میشود برای نمایش یک کاراکتر، مانند حروف الفبا، اعداد و نمادها. مثال:
4. بولین (Boolean): استفاده میشود برای نمایش مقادیر درست (true) و غلط (false). مثال:
دادههای ترکیبی:
5. رشتهها (Strings): استفاده میشود برای نمایش مجموعهای از کاراکترها، مانند "Hello World!" و "C++ Programming". مثال:
6. آرایهها (Arrays): استفاده میشود برای نگهداری مجموعهای از عناصر همان نوع داده. مثال:
7. ساختارها (Structures): استفاده میشود برای ترکیب چندین نوع داده مختلف در یک متغیر. مثال:
8. اشارهگرها (Pointers): استفاده میشود برای نشان دادن آدرس حافظه یک متغیر. مثال:
9. نوع خالص (Void): استفاده میشود برای نمایش عدم وجود نوع خاصی. مثال:
در زبان برنامهنویسی C++، دادهها (Data Types) برای تعریف نوع مقادیر استفاده میشوند. زبان C++ دارای دادههای اصلی و ترکیبی است که در ادامه به تمامی آنها میپردازیم:
دادههای اصلی:
1. اعداد صحیح (Integer): استفاده میشود برای نمایش اعداد صحیح، مانند 1، 2، -10 و غیره. در C++، اعداد صحیح با استفاده از نوع داده
int تعریف میشوند. همچنین، میتوان از نوعهای داده مختلفی مانند short, long, و long long برای نمایش اعداد صحیح با اندازههای مختلف استفاده کرد.2. اعداد اعشاری (Floating-Point): استفاده میشود برای نمایش اعداد اعشاری، مانند 3.14، 2.5، -0.01 و غیره. در C++، اعداد اعشاری با استفاده از نوع داده
float و double تعریف میشوند. نوع داده float برای اعداد اعشاری با دقت کمتر و نوع داده double برای اعداد اعشاری با دقت بیشتر استفاده میشود.3. حروف (Character): استفاده میشود برای نمایش یک کاراکتر، مانند حروف الفبا، اعداد و نمادها. در C++، کاراکترها با استفاده از نوع داده
char تعریف میشوند.4. بولین (Boolean): استفاده میشود برای نمایش مقادیر درست (true) و غلط (false). در C++، بولین با استفاده از نوع داده
bool تعریف میشوند، که مقادیر آن میتوانند true یا false باشند.دادههای ترکیبی:
5. رشتهها (Strings): استفاده میشود برای نمایش مجموعهای از کاراکترها، مانند "Hello World!" و "C++ Programming". در C++، رشتهها به صورت آرایهای از کاراکترها تعریف میشوند.
6. آرایهها (Arrays): استفاده میشود برای نگهداری مجموعهای از عناصر همان نوع داده. در C++، آرایهها با استفاده از نوع داده مورد نظر و تعداد عناصر آرایه تعریف میشوند.
7. ساختارها (Structures): استفاده میشود برای ترکیب چندین نوع داده مختلف در یک متغیر. در C++، ساختارها با استفاده از کلیدواژه
struct تعریف میشوند.شارهگرها (Pointers): استفاده میشود برای نشان دادن آدرس حافظه یک متغیر. در C++، اشارهگرها با استفاده از عملگر
* تعریف میشوند. میتوان از اشارهگرها برای دسترسی به آدرس حافظه و مقدار یک متغیر، انتقال آدرس متغیر به یک تابع، ایجاد آرایههای پویا و غیره استفاده کرد.9. نوع خالص (Void): استفاده میشود برای نشان دادن عدم وجود نوع خاصی. در C++،
void معمولاً به عنوان بازگشتی توابع بدون بازگشت (بدون مقدار بازگشت) استفاده میشود.1. اعداد صحیح (Integer): استفاده میشود برای نمایش اعداد صحیح، مانند 1، 2، -10 و غیره. مثال:
int num = 10;
2. اعداد اعشاری (Floating-Point): استفاده میشود برای نمایش اعداد اعشاری، مانند 3.14، 2.5، -0.01 و غیره. مثال:
float pi = 3.1415;
double gravity = 9.8;
3. حروف (Character): استفاده میشود برای نمایش یک کاراکتر، مانند حروف الفبا، اعداد و نمادها. مثال:
char grade = 'A';
4. بولین (Boolean): استفاده میشود برای نمایش مقادیر درست (true) و غلط (false). مثال:
bool isActive = true;
دادههای ترکیبی:
5. رشتهها (Strings): استفاده میشود برای نمایش مجموعهای از کاراکترها، مانند "Hello World!" و "C++ Programming". مثال:
std::string name = "John Doe";
6. آرایهها (Arrays): استفاده میشود برای نگهداری مجموعهای از عناصر همان نوع داده. مثال:
int numbers[5] = {1, 2, 3, 4, 5};
7. ساختارها (Structures): استفاده میشود برای ترکیب چندین نوع داده مختلف در یک متغیر. مثال:
struct Person {
std::string name;
int age;
};
Person person1;
person1.name = "John Doe";
person1.age = 25;
8. اشارهگرها (Pointers): استفاده میشود برای نشان دادن آدرس حافظه یک متغیر. مثال:
int* ptr;
int num = 10;
ptr = #
9. نوع خالص (Void): استفاده میشود برای نمایش عدم وجود نوع خاصی. مثال:
void printHello() {
std::cout << "Hello!" << std::endl;
}❤1
در زبان #cpp :
در زبان برنامهنویسی C++، ورودی و خروجی از طریق توابع استانداردی مانند
برای دریافت ورودی از کاربر در C++، از شیء
مثال:
برای نمایش خروجی در C++، از شیء
مثال:
در این مثال، عدد 10 به
در اینجا فقط چند نمونه از توابع ورودی و خروجی در زبان C++ آورده شده است. در واقع، ورودی و خروجی در C++ بسیار گسترده است و میتوان از توابع دیگری نیز مانند
در زبان برنامهنویسی C++، ورودی و خروجی از طریق توابع استانداردی مانند
cin و cout انجام میشود. برای دریافت ورودی از کاربر در C++، از شیء
cin استفاده میشود. با استفاده از عملگر استخراج (>>)، مقادیر ورودی را به متغیرها اختصاص میدهیم. مثال:
int num;
cout << "Enter a number: ";
cin >> num;
برای نمایش خروجی در C++، از شیء
cout استفاده میشود. با استفاده از عملگر ورودی (<<)، مقادیر را به cout ارسال میکنیم.مثال:
int num = 10;
cout << "The number is: " << num;
در این مثال، عدد 10 به
cout ارسال میشود و خروجی به صورت "The number is: 10" نمایش داده میشود.در اینجا فقط چند نمونه از توابع ورودی و خروجی در زبان C++ آورده شده است. در واقع، ورودی و خروجی در C++ بسیار گسترده است و میتوان از توابع دیگری نیز مانند
getline, get, getline, put, puts و غیره استفاده کرد. همچنین، با استفاده از کتابخانههای دیگری مانند <iomanip> و <sstream> نیز میتوانید قالببندی و تبدیلهای پیچیدهتری را انجام دهید.#include <iostream>
#include <cmath>
using namespace std;
int main() {
float a, b, c;
float delta, root1, root2;
// دریافت ضرایب از کاربر
cout << "Enter the coefficient a: ";
cin >> a;
cout << "Enter the coefficient b: ";
cin >> b;
cout << "Enter the coefficient c: ";
cin >> c;
// محاسبه دلتا
delta = b * b - 4 * a * c;
// بررسی وجود جواب
if (delta >= 0) {
// محاسبه ریشهها
root1 = (-b + sqrt(delta)) / (2 * a);
root2 = (-b - sqrt(delta)) / (2 * a);
// چاپ نتیجه
cout << "Root 1: " << root1 << endl;
cout << "Root 2: " << root2 << endl;
} else {
cout << "No real roots exist." << endl;
}
return 0;
}
زبان
زبان برنامه نویسی :#cpp
در زبان #cpp :
1. اپراتور جمع (
2. اپراتور تفریق (
3. اپراتور ضرب (
4. اپراتور تقسیم (
5. اپراتور باقیمانده (
6. اپراتور انتساب (
7. اپراتور افزایش (
8. اپراتورهای رابطهای:
9. اپراتورهای منطقی:
10. اپراتورهای بیتی:
11. اپراتورهای اندازهگیری:
12. اپراتورهای برداری:
13. اپراتورهای شرطی:
14. اپراتورهای پویا:
این فقط برخی از اپراتورهای رایج در زبان C++ بودند. هر زبان برنامهنویسی ممکن است اپراتورهای خاص خود را داشته باشد و استفاده از اپراتورها نیز بستگی به نیاز و منطق برنامه دارد.
1. اپراتور جمع (
+):int a = 5;
int b = 3;
int c = a + b; // c = 8
2. اپراتور تفریق (
-):int a = 7;
int b = 4;
int c = a - b; // c = 3
3. اپراتور ضرب (
*):int a = 6;
int b = 2;
int c = a * b; // c = 12
4. اپراتور تقسیم (
/):int a = 10;
int b = 2;
int c = a / b; // c = 5
5. اپراتور باقیمانده (
%):int a = 13;
int b = 5;
int c = a % b; // c = 3
6. اپراتور انتساب (
=):int a = 3;
int b;
b = a; // b = 3
7. اپراتور افزایش (
++) و کاهش (--):int a = 5;
a++; // a = 6
int b = 8;
b--; // b = 7
8. اپراتورهای رابطهای:
int a = 5;
int b = 3;
bool c = (a == b); // c = false
bool d = (a > b); // d = true
bool e = (a != b); // e = true
9. اپراتورهای منطقی:
bool a = true;
bool b = false;
bool c = (a && b); // c = false
bool d = (a || b); // d = true
bool e = !a; // e = false
10. اپراتورهای بیتی:
unsigned int a = 5; // 0000 0101
unsigned int b = 3; // 0000 0011
unsigned int c = a & b; // c = 1 (0000 0001)
unsigned int d = a | b; // d = 7 (0000 0111)
unsigned int e = a ^ b; // e = 6 (0000 0110)
unsigned int f = ~a; // f = 250 (1111 1001)
unsigned int g = a << 2; // g = 20 (0001 0100)
unsigned int h = b >> 1; // h = 1 (0000 0001)
11. اپراتورهای اندازهگیری:
int a = 5;
int b = sizeof(a); // b = 4 (بایت)
12. اپراتورهای برداری:
int a[] = {1, 2, 3, 4, 5};
int b = a[2]; // b = 3
13. اپراتورهای شرطی:
int a = 5;
int b = 3;
int max = (a > b) ? a : b; // max = 5
14. اپراتورهای پویا:
int* ptr = new int; // تخصیص حافظه پویا
delete ptr; // آزادسازی حافظه پویا
این فقط برخی از اپراتورهای رایج در زبان C++ بودند. هر زبان برنامهنویسی ممکن است اپراتورهای خاص خود را داشته باشد و استفاده از اپراتورها نیز بستگی به نیاز و منطق برنامه دارد.
#include <iostream>
using namespace std;
int main() {
int num;
cout << "Enter a number: ";
cin >> num;
int i = 0;
int j;
bool found = false;
while (i * i <= num) {
j = 0;
while (j * j <= num) {
if (i * i + j * j == num) {
found = true;
break;
}
j++;
}
if (found) {
break;
}
i++;
}
if (found) {
cout << "The number can be expressed as the sum of two perfect squares." << endl;
} else {
cout << "The number cannot be expressed as the sum of two perfect squares." << endl;
}
return 0;
}
زبان برنامه نویسی : #cpp
در زبان #c و #cpp :
در زبان برنامهنویسی cو cpp نیز از ساختار if-else if-else برای بررسی شرایط مختلف استفاده میشود. این ساختار به شما امکان میدهد تا چندین شرط را بررسی کرده و برنامه را بر اساس برقراری یا عدم برقراری شرایط مختلف اجرا کنید.
ساختار کلی یک بلوک if-else if-else در زبان c و cpp به صورت زیر است:
در این ساختار، ابتدا شرط 1 بررسی میشود. اگر شرط 1 برقرار باشد، بلوک کد داخل if اجرا میشود و برنامه از بلاک if-else خارج میشود. در صورتی که شرط 1 برقرار نباشد، شرط 2 بررسی میشود. اگر شرط 2 نیز برقرار باشد، بلوک کد داخل else if اجرا میشود و برنامه از بلاک if-else خارج میشود. در غیر این صورت، بلوک کد داخل else اجرا میشود.
استفاده از این ساختار در زبان c و cpp به شما امکان میدهد تا چندین شرط را بررسی کرده و برنامه را بر اساس برقراری یا عدم برقراری شرایط مشخص اجرا کنید.
در زبان برنامهنویسی cو cpp نیز از ساختار if-else if-else برای بررسی شرایط مختلف استفاده میشود. این ساختار به شما امکان میدهد تا چندین شرط را بررسی کرده و برنامه را بر اساس برقراری یا عدم برقراری شرایط مختلف اجرا کنید.
ساختار کلی یک بلوک if-else if-else در زبان c و cpp به صورت زیر است:
if (condition1) {
// کدی که در صورت برقراری شرط 1 اجرا میشود
} else if (condition2) {
// کدی که در صورت عدم برقراری شرط 1 و برقراری شرط 2 اجرا میشود
} else {
// کدی که در صورت عدم برقراری هیچ یک از شرایط بالا اجرا میشود
}در این ساختار، ابتدا شرط 1 بررسی میشود. اگر شرط 1 برقرار باشد، بلوک کد داخل if اجرا میشود و برنامه از بلاک if-else خارج میشود. در صورتی که شرط 1 برقرار نباشد، شرط 2 بررسی میشود. اگر شرط 2 نیز برقرار باشد، بلوک کد داخل else if اجرا میشود و برنامه از بلاک if-else خارج میشود. در غیر این صورت، بلوک کد داخل else اجرا میشود.
استفاده از این ساختار در زبان c و cpp به شما امکان میدهد تا چندین شرط را بررسی کرده و برنامه را بر اساس برقراری یا عدم برقراری شرایط مشخص اجرا کنید.
❤2
در زبان #c و #cpp :
در زبانهای برنامهنویسی C و C++ نیز مانند زبانهای دیگر، حلقه While به صورت زیر استفاده میشود:
در این حالت، دستورات داخل حلقه تا زمانی که شرط برقرار باشد تکرار میشوند. قبل از هر تکرار، شرط بررسی میشود و اگر شرط برقرار باشد، دستورات داخل حلقه اجرا میشوند. پس از اتمام اجرای دستورات، برنامه به ابتدای حلقه بازمیگردد و شرط مجدداً بررسی میشود. اگر شرط دیگر برقرار نباشد، حلقه متوقف میشود و کنترل برنامه به دستورات بعد از حلقه منتقل میشود.
از حلقه While در زبانهای C و C++ نیز استفاده میشود زمانی که نیاز به تکرار یک بلاک کد داریم. به عنوان مثال، محاسبهی مقدار تکرارها، پردازش دادهها، تکرار عملیات بر روی لیستها و غیره.
بطور مثال، در زبان C یا C++ میتوانید یک حلقه While برای چاپ اعداد از ۱ تا ۵ بنویسید:
در این مثال، متغیر
خروجی این برنامه به ترتیب اعداد ۱ تا ۵ را در خروجی نشان میدهد.
در زبانهای برنامهنویسی C و C++ نیز مانند زبانهای دیگر، حلقه While به صورت زیر استفاده میشود:
while (شرط) {
// دستورات
}
در این حالت، دستورات داخل حلقه تا زمانی که شرط برقرار باشد تکرار میشوند. قبل از هر تکرار، شرط بررسی میشود و اگر شرط برقرار باشد، دستورات داخل حلقه اجرا میشوند. پس از اتمام اجرای دستورات، برنامه به ابتدای حلقه بازمیگردد و شرط مجدداً بررسی میشود. اگر شرط دیگر برقرار نباشد، حلقه متوقف میشود و کنترل برنامه به دستورات بعد از حلقه منتقل میشود.
از حلقه While در زبانهای C و C++ نیز استفاده میشود زمانی که نیاز به تکرار یک بلاک کد داریم. به عنوان مثال، محاسبهی مقدار تکرارها، پردازش دادهها، تکرار عملیات بر روی لیستها و غیره.
بطور مثال، در زبان C یا C++ میتوانید یک حلقه While برای چاپ اعداد از ۱ تا ۵ بنویسید:
#include <stdio.h>
int main() {
int i = 1;
while (i <= 5) {
printf("%dn", i);
i++;
}
return 0;
}
در این مثال، متغیر
i را ابتدا به ۱ مقداردهی میکنیم. سپس در حلقه While، تا زمانی که i کوچکتر یا مساوی ۵ باشد، دستور printf اعداد را چاپ میکند و سپس i را یک واحد افزایش میدهیم. این عملیات تا وقتی ادامه پیدا میکند که i برابر ۶ شود و شرط حلقه برقرار نباشد.خروجی این برنامه به ترتیب اعداد ۱ تا ۵ را در خروجی نشان میدهد.
❤3
در زبان #c و #cpp :
حلقه
-
-
-
به عنوان مثال، اگر بخواهیم اعداد از 1 تا 10 را چاپ کنیم، میتوانیم از حلقه
خروجی این برنامه به صورت زیر خواهد بود:
در این مثال، متغیر
حلقه
for در زبان برنامهنویسی C , CPP یک ساختار کنترلی است که به شما امکان میدهد یک بلوک کد را تکرار کنید تا یک شرط مشخص برآورده شود. ساختار کلی حلقه for به صورت زیر است:for (initialization; condition; increment/decrement) {
// statements
}
-
initialization: در این بخش، متغیرها مقداردهی اولیه میشوند. این بخش قبل از شروع حلقه اولین بار اجرا میشود.-
condition: این بخش بررسی میکند که آیا حلقه باید ادامه یابد یا خاتمه یابد. اگر شرط برقرار باشد، بلوک کد داخل حلقه اجرا میشود؛ و اگر شرط برقرار نباشد، حلقه به پایان میرسد.-
increment/decrement: در این بخش، مقادیر متغیرها تغییر داده میشوند. این بخش بعد از اجرای بلوک کد داخل حلقه اجرا میشود.به عنوان مثال، اگر بخواهیم اعداد از 1 تا 10 را چاپ کنیم، میتوانیم از حلقه
for استفاده کنیم:#include <stdio.h>
int main() {
int i;
for (i = 1; i <= 10; i++) {
printf("%d ", i);
}
return 0;
}
خروجی این برنامه به صورت زیر خواهد بود:
1 2 3 4 5 6 7 8 9 10
در این مثال، متغیر
i با مقدار 1 مقداردهی اولیه میشود. سپس شرط i <= 10 بررسی میشود و در صورت برقرار بودن، بلوک کد داخل حلقه اجرا میشود و پس از هر اجرا، مقدار i افزایش مییابد. حلقه تا زمانی که شرط i <= 10 برقرار باشد ادامه مییابد و پس از آن به پایان میرسد.❤3
#include <iostream>
using namespace std;
int factorial(int n) {
if (n == 0 || n == 1)
return 1;
else
return n * factorial(n - 1);
}
int main() {
int n;
int sum = 0;
cout << "Enter a number: ";
cin >> n;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
cout << "The sum of the series is: " << sum << endl;
return 0;
}
زبان برنامه نویسی : #cpp
❤3
در زبان #c و #cpp:
در زبانهای C و C++ نیز عبارات
با استفاده از
مثال:
در این مثال، در قسمت اول از
در قسمت دوم، از
با استفاده از
در زبانهای C و C++ نیز عبارات
break و continue برای کنترل حلقهها استفاده میشوند.با استفاده از
break و continue در زبانهای C و C++، شما قادر خواهید بود جریان اجرای حلقه را به دلخواه خود تغییر داده و کنترل دقیقتری بر روی اجرای برنامه در داخل حلقه داشته باشید.مثال:
#include <iostream>
using namespace std;
int main() {
// مثال استفاده از break
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break;
}
cout << i << " ";
}
cout << endl;
// مثال استفاده از continue
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue;
}
cout << i << " ";
}
cout << endl;
return 0;
}
در این مثال، در قسمت اول از
break استفاده شده است. در حلقه for، اعداد از 1 تا 10 پیمایش میشوند. وقتی عدد 5 را میرسیم، با استفاده از break اجرای حلقه متوقف میشود و برنامه از حلقه خارج میشود.در قسمت دوم، از
continue استفاده شده است. در حلقه for، اعداد از 1 تا 10 پیمایش میشوند و وقتی عددی را بر میگردانیم که بر 2 بخشپذیر باشد، با استفاده از continue، بقیه بخشهای حلقه را رد کرده و به ابتدای حلقه برمیگردیم.با استفاده از
break و continue در زبان C و C++، میتوانید جریان اجرای حلقه را بهطور دقیق تنظیم کنید و عملیاتی خاص را در صورت برقراری شرایط مورد نظر انجام دهید👍1
در زبان #c و #cpp :
در زبانهای C و C++، آرایهها (Arrays) مجموعهای از دادهها هستند که با استفاده از یک نام و یک اندیس دسترسیپذیرند. آرایهها میتوانند به صورت یک بعدی و دوبعدی تعریف شوند.
1. آرایههای یک بعدی:
- در زبان C، آرایههای یک بعدی میتوانند با استفاده از تعریف متغیر با نوع داده موردنظر و تعیین تعداد عناصر آرایه ایجاد شوند. به عنوان مثال:
2. آرایههای دوبعدی:
- در زبان C، برای تعریف آرایههای دوبعدی، از آرایههای یک بعدی به صورت تو در تو استفاده میشود. به عنوان مثال:
در هر دو زبان C و C++، به عنوان مثال، برای دسترسی به عناصر درون آرایههای دوبعدی، میتوان از دو حلقه تو در تو (Nested Loop) استفاده کرد و با استفاده از اندیسهای مربوطه به عناصر دسترسی پیدا کرد.
در زبانهای C و C++، آرایهها (Arrays) مجموعهای از دادهها هستند که با استفاده از یک نام و یک اندیس دسترسیپذیرند. آرایهها میتوانند به صورت یک بعدی و دوبعدی تعریف شوند.
1. آرایههای یک بعدی:
- در زبان C، آرایههای یک بعدی میتوانند با استفاده از تعریف متغیر با نوع داده موردنظر و تعیین تعداد عناصر آرایه ایجاد شوند. به عنوان مثال:
int numbers[5]; // تعریف یک آرایه 5 عنصری از اعداد صحیح
float prices[10]; // تعریف یک آرایه 10 عنصری از اعداد اعشاری
char letters[26]; // تعریف یک آرایه 26 عنصری از کاراکترها
2. آرایههای دوبعدی:
- در زبان C، برای تعریف آرایههای دوبعدی، از آرایههای یک بعدی به صورت تو در تو استفاده میشود. به عنوان مثال:
int matrix[3][3]; // تعریف یک آرایه دوبعدی 3x3 از اعداد صحیح
float table[2][4]; // تعریف یک آرایه دوبعدی 2x4 از اعداد اعشاری
char grid[5][5]; // تعریف یک آرایه دوبعدی 5x5 از کاراکترها
در هر دو زبان C و C++، به عنوان مثال، برای دسترسی به عناصر درون آرایههای دوبعدی، میتوان از دو حلقه تو در تو (Nested Loop) استفاده کرد و با استفاده از اندیسهای مربوطه به عناصر دسترسی پیدا کرد.
👍1
در زبان #c و #cpp :
در زبانهای برنامهنویسی C و C++، توابع با استفاده از دستور
در این الگو،
برای مثال، یک تابع ساده در زبان C که دو عدد را جمع کند را میتوان به صورت زیر نوشت:
در این مثال، تابع
در زبان C++ نیز، میتوان توابع را به همین شکل تعریف کرد. البته، در C++ میتوان از ویژگیهای بیشتری مانند تابعهای عضو کلاس، تابعهای مبتنی بر الگو و غیره استفاده کرد.
تابع
مثالی از یک تابع
در این مثال، تابع
در زبان C++ نیز میتوان از توابع
در زبانهای برنامهنویسی C و C++، توابع با استفاده از دستور
function و نحوی مشخص دیگر تعریف میشوند. الگوی کلی تعریف تابع در این دو زبان به صورت زیر است:<نوع_برگشتی> نام_تابع(<پارامترها>) {
// بلاک کد تابع
// عملیاتها و دستورات مورد نیاز
// بازگشت مقدار در صورت نیاز
}
در این الگو،
<نوع_برگشتی> نوع دادهای است که تابع برمیگرداند. نام_تابع نام تابع است. <پارامترها> پارامترهایی هستند که به تابع پاس داده میشوند.برای مثال، یک تابع ساده در زبان C که دو عدد را جمع کند را میتوان به صورت زیر نوشت:
int sum(int a, int b) {
int result = a + b;
return result;
}
در این مثال، تابع
sum دو عدد را به عنوان ورودی میگیرد و جمع آنها را بازمیگرداند.در زبان C++ نیز، میتوان توابع را به همین شکل تعریف کرد. البته، در C++ میتوان از ویژگیهای بیشتری مانند تابعهای عضو کلاس، تابعهای مبتنی بر الگو و غیره استفاده کرد.
تابع
void یک نوع خاص از توابع است که هیچ مقداری را به عنوان خروجی برنگردانده و فقط برای انجام یک عملیات خاص به کار میرود.مثالی از یک تابع
void در زبان C برای چاپ یک پیام را میتوان به صورت زیر نوشت:#include <stdio.h>
void printMessage() {
printf("Hello, World!n");
}
int main() {
printMessage();
return 0;
}
در این مثال، تابع
printMessage از نوع void است و هیچ مقداری را به عنوان خروجی برنمیگرداند. این تابع فقط پیام "Hello, World!" را در خروجی چاپ میکند.در زبان C++ نیز میتوان از توابع
void استفاده کرد. به عنوان مثال، تابع void میتواند به عنوان یک تابع عضو یا تابع عضو استاتیک در یک کلاس تعریف شود.در زبان #cpp :
در زبان C++، مفهوم "Call by Reference" و "Call by Value" همچنان وجود دارد. با Reference، متغیرها به توابع منتقل میشوند، در حالی که با Value، مقادیر کپی از متغیرها به توابع منتقل میشوند.
### Call by Reference (با ارجاع):
در این روش، آرگومانها به تابع ارسال میشوند و از طریق آنها، میتوان به مقادیر اصلی متغیرها دسترسی داشت.
خروجی:
Before increment: 10
After increment: 11
در اینجا، تابع
### Call by Value (با مقدار):
در این روش، کپی از مقادیر متغیرها به توابع منتقل میشوند، بنابراین تغییراتی که در تابع انجام میشود، تنها در دامنه آن تابع باقی میماند و بر روی متغیر اصلی تاثیری ندارد.
خروجی:
Before increment: 10
After increment: 10
در اینجا، تغییراتی که در تابع
در زبان C++، مفهوم "Call by Reference" و "Call by Value" همچنان وجود دارد. با Reference، متغیرها به توابع منتقل میشوند، در حالی که با Value، مقادیر کپی از متغیرها به توابع منتقل میشوند.
### Call by Reference (با ارجاع):
در این روش، آرگومانها به تابع ارسال میشوند و از طریق آنها، میتوان به مقادیر اصلی متغیرها دسترسی داشت.
#include <iostream>
using namespace std;
// تابع با ارجاع
void increment(int &num) {
num++; // افزایش مقدار عددی با ارجاع
}
int main() {
int x = 10;
cout << "Before increment: " << x << endl; // چاپ مقدار x قبل از افزایش
increment(x); // فراخوانی تابع با ارجاع
cout << "After increment: " << x << endl; // چاپ مقدار x پس از افزایش
return 0;
}
خروجی:
Before increment: 10
After increment: 11
در اینجا، تابع
increment یک مقدار عددی را به عنوان ارجاع دریافت میکند و مقدار آن را یک واحد افزایش میدهد.### Call by Value (با مقدار):
در این روش، کپی از مقادیر متغیرها به توابع منتقل میشوند، بنابراین تغییراتی که در تابع انجام میشود، تنها در دامنه آن تابع باقی میماند و بر روی متغیر اصلی تاثیری ندارد.
#include <iostream>
using namespace std;
// تابع با مقدار
void increment(int num) {
num++; // افزایش مقدار عددی
}
int main() {
int x = 10;
cout << "Before increment: " << x << endl; // چاپ مقدار x قبل از افزایش
increment(x); // فراخوانی تابع با مقدار
cout << "After increment: " << x << endl; // چاپ مقدار x پس از افزایش
return 0;
}
خروجی:
Before increment: 10
After increment: 10
در اینجا، تغییراتی که در تابع
increment اعمال میشود، تنها بر روی مقدار کپی شده از متغیر x تاثیر میگذارد و متغیر اصلی x تغییر نمیکند.👍2
در زبان #cpp:
در زبان C++ نیز پوینترها همانند زبان C تعریف و استفاده میشوند. اما در زبان C++، به علاوه از قابلیتهایی مانند پوینترهای به همراه نوع (type-safe pointers) و پوینترهای هوشمند (smart pointers) نیز استفاده میشود. در زیر توضیحاتی درباره پوینترها در زبان C++ آورده شده است همراه با مثالهایی:
1. تعریف پوینتر:
برای تعریف یک پوینتر در C++، از علامت
در این مثال،
2. مقداردهی به پوینتر:
برای مقداردهی به یک پوینتر، میتوان از عملگر
در این مثال،
3. دسترسی به مقدار اشاره شده توسط پوینتر:
برای دسترسی به مقداری که پوینتر به آن اشاره میکند، از عملگر
در این مثال،
4. پوینترها و آرایهها:
در C++، آرایهها به طور ضمنی به یک پوینتر به اولین عنصر آرایه تبدیل میشوند. برای مثال:
در این مثال،
5. پوینترها و ساختارها:
در C++، میتوانید با استفاده از پوینترها به صورت مستقیم به عناصر ساختارها دسترسی پیدا کنید. برای مثال:
در این مثال،
در زبان C++ نیز پوینترها همانند زبان C تعریف و استفاده میشوند. اما در زبان C++، به علاوه از قابلیتهایی مانند پوینترهای به همراه نوع (type-safe pointers) و پوینترهای هوشمند (smart pointers) نیز استفاده میشود. در زیر توضیحاتی درباره پوینترها در زبان C++ آورده شده است همراه با مثالهایی:
1. تعریف پوینتر:
برای تعریف یک پوینتر در C++، از علامت
* استفاده میشود. برای مثال:int* ptr;
در این مثال،
ptr یک پوینتر به یک متغیر از نوع int است.2. مقداردهی به پوینتر:
برای مقداردهی به یک پوینتر، میتوان از عملگر
& برای گرفتن آدرس متغیر استفاده کرد. برای مثال:int num = 10;
int* ptr = #
در این مثال،
ptr به آدرس متغیر num اشاره میکند.3. دسترسی به مقدار اشاره شده توسط پوینتر:
برای دسترسی به مقداری که پوینتر به آن اشاره میکند، از عملگر
* استفاده میشود. برای مثال:int num = 10;
int* ptr = #
cout << "Value: " << *ptr << endl;
در این مثال،
*ptr مقداری که پوینتر ptr به آن اشاره میکند (مقدار num) را چاپ میکند.4. پوینترها و آرایهها:
در C++، آرایهها به طور ضمنی به یک پوینتر به اولین عنصر آرایه تبدیل میشوند. برای مثال:
int arr[5] = {1, 2, 3, 4, 5};
int* ptr = arr; // یا int* ptr = &arr[0];
cout << "First element: " << *ptr << endl; // چاپ عنصر اول آرایه
در این مثال،
ptr به اولین عنصر آرایه arr اشاره میکند.5. پوینترها و ساختارها:
در C++، میتوانید با استفاده از پوینترها به صورت مستقیم به عناصر ساختارها دسترسی پیدا کنید. برای مثال:
struct Person {
string name;
int age;
};
Person person;
Person* ptr = &person;
ptr->name = "John";
ptr->age = 25;
در این مثال،
ptr یک پوینتر به ساختار Person است و میتوانید با استفاده از ptr به صورت مستقیم به عناصر ساختار دسترسی پیدا کنید..👍3