الگوریتم و فلوچارت
الذهاب إلى القناة على Telegram
✅ برنامه نویسی را از اینجا شروع کنید؛ آموزش طراحی فلوچارت و الگوریتم | مثالهای عملی + دانلود رایگان | مناسب برای برنامهنویسان مبتدی #flowgorithm گروه چت حل تمرین https://t.me/flowchart_algorithmGp جهت ارتباط با ادمین و تبلیغات @Programer24h 💻
إظهار المزيد1 487
المشتركون
-124 ساعات
-27 أيام
-91230 أيام
أرشيف المشاركات
1 487
فاکتوریل یک عدد صحیح غیر منفی n (نشان داده شده با n! ) حاصلضرب تمامی عددهای صحیح مثبت از 1 تا n است. به عبارت دیگر:
n! = n × (n-1) × (n-2) × … × 2 × 1
▎مثالها:
1. فاکتوریل 5:
5! = 5 × 4 × 3 × 2 × 1 = 120
2. فاکتوریل 0:
با توجه به تعریف ریاضی، فاکتوریل صفر برابر با 1 است:
0! = 1
3. فاکتوریل 3:
3! = 3 × 2 × 1 = 6
▎ویژگیها:
• فاکتوریل فقط برای اعداد صحیح غیر منفی تعریف شده است.
• فاکتوریل اعداد بزرگ به سرعت افزایش مییابد و میتواند به اعداد بسیار بزرگ منجر شود. به عنوان مثال:
• 10! = 3,628,800
• 20! = 2,432,902,008,176,640,000
▎کاربردها:
فاکتوریل در ریاضیات و علوم کامپیوتر کاربردهای زیادی دارد، از جمله:
• محاسبه تعداد حالات ممکن در ترکیبها و ترتیبها.
• در آمار برای محاسبه توزیعهای احتمالی.
• در الگوریتمهای مختلف و تحلیل زمان اجرای الگوریتمها.
▎محاسبه فاکتوریل در C++:
در زیر یک برنامه ساده به زبان C++ برای محاسبه فاکتوریل یک عدد آورده شده است:
#include <iostream>
using namespace std;
long long factorial(int n) {
if (n == 0) {
return 1; // فاکتوریل صفر
}
long long result = 1;
for (int i = 1; i <= n; ++i) {
result *= i; // محاسبه فاکتوریل
}
return result;
}
int main() {
int number;
cout << "لطفا یک عدد غیر منفی وارد کنید: ";
cin >> number;
if (number < 0) {
cout << "فاکتوریل برای اعداد منفی تعریف نشده است." << endl;
} else {
cout << "فاکتوریل " << number << " برابر است با: " << factorial(number) << endl;
}
return 0;
}
این برنامه از کاربر یک عدد غیر منفی دریافت میکند و سپس فاکتوریل آن عدد را محاسبه و چاپ میکند.
💻@flowchart_algorithm🖥1 487
در زیر یک برنامه ساده به زبان C++ برای محاسبه و چاپ n جمله از سری فیبوناچی آورده شده است. این برنامه ابتدا عدد n را از کاربر دریافت میکند و سپس n جمله اول سری فیبوناچی را محاسبه و چاپ میکند.
#include <iostream>
using namespace std;
int main() {
int n;
cout << "لطفا تعداد جملات فیبوناچی را وارد کنید: ";
cin >> n;
if (n <= 0) {
cout << "لطفا یک عدد مثبت وارد کنید." << endl;
return 1;
}
long long a = 0, b = 1; // دو عدد ابتدایی سری فیبوناچی
cout << "جملات سری فیبوناچی: ";
for (int i = 0; i < n; ++i) {
if (i == 0) {
cout << a; // چاپ F(0)
} else if (i == 1) {
cout << ", " << b; // چاپ F(1)
} else {
long long next = a + b; // محاسبه عدد بعدی
cout << ", " << next; // چاپ عدد بعدی
a = b; // بروزرسانی a
b = next; // بروزرسانی b
}
}
cout << endl;
return 0;
}
▎توضیحات:
• برنامه با استفاده از cin عدد n را از کاربر دریافت میکند.
• اگر n کمتر یا مساوی صفر باشد، پیغامی به کاربر نمایش داده میشود که از او میخواهد عددی مثبت وارد کند.
• سپس با استفاده از یک حلقه for, برنامه به ترتیب جملات سری فیبوناچی را محاسبه کرده و چاپ میکند.
• متغیرهای a و b برای نگهداری دو عدد قبلی در سری فیبوناچی استفاده میشوند.
💻@flowchart_algorithm🖥1 487
برنامه ای به زبان c++ بنویسید که یک عدد n را از ورودی بگیرد و تعداد n جمله از سری فیبوناچی را در خروجی چاپ کند.
1 487
تعریف یری فیبوناچی :
سری فیبوناچی یک دنباله عددی است که در آن هر عدد برابر با مجموع دو عدد قبلی خود است. این دنباله با دو عدد ابتدایی ۰ و ۱ شروع میشود. به طور کلی، nامین عدد در سری فیبوناچی به صورت زیر تعریف میشود:
• F(0) = 0
• F(1) = 1
• F(n) = F(n-1) + F(n-2) برای n ≥ 2
به عنوان مثال، اولین چند عدد از سری فیبوناچی به صورت زیر است:
1. F(0) = 0
2. F(1) = 1
3. F(2) = F(1) + F(0) = 1 + 0 = 1
4. F(3) = F(2) + F(1) = 1 + 1 = 2
5. F(4) = F(3) + F(2) = 2 + 1 = 3
6. F(5) = F(4) + F(3) = 3 + 2 = 5
7. F(6) = F(5) + F(4) = 5 + 3 = 8
8. F(7) = F(6) + F(5) = 8 + 5 = 13
بنابراین، چند عدد اول سری فیبوناچی به این شکل است:
0, 1, 1, 2, 3, 5, 8, 13, ...
این سری در ریاضیات و علوم کامپیوتر کاربردهای زیادی دارد و همچنین در طبیعت نیز به وفور دیده میشود، مانند رشد گیاهان، توزیع برگها و الگوهای موجود در صدفها.
💻@flowchart_algorithm🖥
1 487
در زیر یک برنامه ساده به زبان C++ نوشته شده است که یک عدد را از ورودی دریافت میکند و بررسی میکند که آیا آن عدد تام است یا خیر. اگر عدد تام باشد، "yes" و در غیر این صورت "no" را چاپ میکند.
#include <iostream>
using namespace std;
bool isPerfectNumber(int num) {
int sum = 0;
// جمع کردن مقسومعلیههای عدد به جز خود عدد
for (int i = 1; i <= num / 2; ++i) {
if (num % i == 0) {
sum += i;
}
}
return sum == num; // بررسی اینکه آیا مجموع برابر با خود عدد است
}
int main() {
int number;
cout << "لطفاً یک عدد وارد کنید: ";
cin >> number;
if (isPerfectNumber(number)) {
cout << "yes" << endl; // عدد تام است
} else {
cout << "no" << endl; // عدد تام نیست
}
return 0;
}
▎توضیحات:
1. تابع isPerfectNumber برای بررسی اینکه آیا عدد ورودی تام است یا خیر طراحی شده است.
2. در این تابع، ما مقسومعلیههای عدد را از 1 تا نصف آن جمع میکنیم.
3. در تابع main، عددی از کاربر دریافت میشود و سپس با استفاده از تابع isPerfectNumber بررسی میشود که آیا عدد تام است یا خیر.
4. نتیجه به کاربر نمایش داده میشود.
💻@flowchart_algorithm🖥1 487
برنامه ای با زبان c++ بنویسید که یک عدد را از ورودی دریافت کند و اگر آن عدد تام بود در خروجی yes و در غیر این صورت در خروجی no چاپ کند.
💻@flowchart_algorithm🖥
1 487
عدد تام (یا عدد کامل) :
Perfect Number:
به عددی گفته میشود که برابر با مجموع تمام مقسومعلیههای صحیح مثبت خود، به جز خود عدد باشد. به عبارت دیگر، اگر عدد n را در نظر بگیریم، عدد تام آن عددی است که مجموع مقسومعلیههای آن برابر با خود عدد n باشد.
به عنوان مثال، عدد 6 یک عدد تام است. مقسومعلیههای 6 عبارتند از 1، 2 و 3. حالا اگر این مقسومعلیهها را جمع کنیم:
1 + 2 + 3 = 6
بنابراین، 6 یک عدد تام است.
مثال دیگر، عدد 28 است. مقسومعلیههای 28 عبارتند از 1، 2، 4، 7 و 14. اگر این مقسومعلیهها را جمع کنیم:
1 + 2 + 4 + 7 + 14 = 28
پس، 28 نیز یک عدد تام است.
1 487
💻@flowchart_algorithm🖥
سوال 5 :
برنامه و فلوچارتی ترسیم نمایید که عددی مثبت را از ورودی بگیرد و اعداد زوج کوچکتر از آن را چاپ نماید.
1 487
💻@flowchart_algorithm🖥
سوال 4 :
برنامه و فلوچارتی ترسیم نمایید که عددی مثبت را از ورودی بگیرد و اعداد فرد کوچکتر از آن را چاپ نماید.
1 487
#تمرین
سوال 3 :
برنامه و فلوچارتی ترسیم نمایید که 3 عدد صحیح ( شامل اعداد مثبت و منفی) را از ورودی بگیرد و بزرگترین آنها را در خروجی چاپ کند .
💻@flowchart_algorithm🖥
