ar
Feedback
الگوریتم و فلوچارت

الگوریتم و فلوچارت

الذهاب إلى القناة على Telegram

✅ برنامه نویسی را از اینجا شروع کنید‌؛ آموزش طراحی فلوچارت و الگوریتم | مثال‌های عملی + دانلود رایگان | مناسب برای برنامه‌نویسان مبتدی #flowgorithm گروه چت حل تمرین https://t.me/flowchart_algorithmGp جهت ارتباط با ادمین و تبلیغات @Programer24h 💻

إظهار المزيد
Buy Ad
1 365
المشتركون
لا توجد بيانات24 ساعات
لا توجد بيانات7 أيام
-1630 أيام
أرشيف المشاركات
🚀 ۱۰ تا از بهترین منابع یوتیوب برای یادگیری برنامه‌نویسی (از صفر تا حرفه‌ای)
اگه دنبال اینی که برنامه‌نویسی رو اصولی و درست یاد بگیری، این ۱۰ تا کانال یوتیوب واقعاً جزو بهترین‌ها هستن! 🎯 (هم برای مبتدی‌ها، هم حرفه‌ای‌ها 💻✨) --- 🥇 1. freeCodeCamp.org آموزش‌های کامل و پروژه‌محور برای همه زبان‌ها 📌 مناسب برای: Python, JS, Web, AI 🔗 https://www.youtube.com/@freecodecamp --- 🔥 2. Traversy Media یکی از بهترین کانال‌ها برای طراحی سایت و برنامه‌نویسی وب 📌 مناسب برای: HTML, CSS, JS, React, Node 🔗 https://www.youtube.com/@TraversyMedia --- 💡 3. Programming with Mosh آموزش‌های خیلی روان و حرفه‌ای، مخصوصاً برای مبتدی‌ها 📌 مناسب برای: Python, Java, C#, Web 🔗 https://www.youtube.com/@programmingwithmosh --- 🧠 4. The Net Ninja ویدیوهای کوتاه و دقیق با آموزش مرحله به مرحله 📌 مناسب برای: JavaScript, React, Vue, Firebase 🔗 https://www.youtube.com/@NetNinja --- 🐍 5. Corey Schafer بهشتِ آموزش پایتون 😄 فوق‌العاده تمیز و کاربردی 📌 مناسب برای: Python, Django, Automation 🔗 https://www.youtube.com/@coreyms --- ⚡ 6. Fireship آموزش‌های سریع، جذاب و خیلی خفن با سبک متفاوت 🔥 📌 مناسب برای: Web, JS, Tech Concepts 🔗 https://www.youtube.com/@Fireship --- 📚 7. CS50 (Harvard University) یکی از بهترین دوره‌های دانشگاهی دنیا، کاملاً رایگان 📌 مناسب برای: مبانی برنامه‌نویسی و علوم کامپیوتر 🔗 https://www.youtube.com/@cs50 --- 👨‍💻 8. Kevin Powell پادشاه CSS 👑 اگه طراحی سایت می‌خوای این کانال عالیه 📌 مناسب برای: CSS, Responsive Design 🔗 https://www.youtube.com/@KevinPowell --- 🌍 9. Academind آموزش‌های کامل و سطح بالا برای برنامه‌نویسی مدرن 📌 مناسب برای: React, Angular, Node, Web Dev 🔗 https://www.youtube.com/@academind --- 🤖 10. Tech With Tim عالی برای پایتون و پروژه‌های جذاب و کاربردی 📌 مناسب برای: Python, AI, Projects 🔗 https://www.youtube.com/@TechWithTim --- ✨ اگر دوست داری برنامه‌نویسی رو جدی شروع کنی، همین ۱۰ تا کانال برای چند سالِ آینده‌ت کافیه! 📌 کدومشون رو می‌شناختی؟ تو کامنت‌ها بگو 😄👇 #برنامه_نویسی #یوتیوب #آموزش_رایگان #Python #WebDevelopment 🚀💻 برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

📚 بهترین منابع یاد گیری برنامه‌نویسی و توسعه وب [1] 10 کتاب برنامه نویسی که حتما باید آن‌ها را بخوانید - سون لرن (7learn.com) [2] معرفی منابع آموزشی مناسب برای یادگیری و شروع برنامه نویسی - چطور (chetor.com) [3] 6 تا از بهترین منابع یادگیری برنامه نویسی - راست چین آکادمی (academy.rtl-theme.com) [4] معرفی 5 مورد از بهترین منابع طراحی وب در دنیا - ادمین سایت (adminesite.com) [5] بهترین وب‌سایت‌ها برای یادگیری زبان برنامه نویسی - IranTalent (irantalent.com) [6] ۲۴ کتاب آموزش برنامه نویسی کامپیوتر که لازم است بخوانید (blog.faradars.org) [7] معرفی بهترین منابع یادگیری برنامه نویسی از مبتدی تا پیشرفته (youtube.com) [8] چگونه برنامه نویس وب شوم؟ - کدیاد (codeyad.com) [9] 8 منبع خوب برای طراحان و برنامه نویسی وب - صعود (soud.ir) [10] معرفی بهترین سایت های آموزش برنامه نویسی رایگان 2023 (konkurcomputer.ir) #معرفی_منابع_آموزشی @flowchart_algorithm

📚 منابع بسیار عالی برای کسب درآمد از طریق ایمیل مارکتینگ [1] بازاریابی ایمیلی و هر آنچه برای کسب درآمد از طریق آن باید بدانید (amazontele.com) [2] ۱۳ نکته کاربردی برای ایمیل مارکتینگ یا بازاریابی ایمیلی - کارلنسر (karlancer.com) [3] 30 راهکار طلایی برای کمپین ایمیل مارکتینگ موفق و موثر [1402] (avadis.net) [4] کسب درآمد آنلاین از ایمیل مارکتینگ - افیلی (affili.ir) [5] ۷ راه کسب درآمد با لیست ایمیل خود در سال ۱۴۰۳ - MailerEver (mailerever.com) [6] 11 نکته مهم در بازاریابی ایمیلی - سلکتک (selectak.com) [7] 10 راه برای کسب درآمد با ایمیل مارکتینگ [2024] (blog.sabavision.com) [8] کمپین ایمیل مارکتینگ و نکات کلیدی آن (lavan.agency) [9] چطور با ارسال ایمیل کسب درآمد کنیم؟ - موسسه آموزشی کامکار (modirekamkar.ir) [10] آموزش ایمیل مارکتینگ: 37 نکته برای تبلیغات بهتر | نوین (novin.com) [11] نکات مهم ایمیل مارکتینگ برای بهبود کسب‌وکار - مگ هاست ایران (mag.hostiran.net) [12] ایمیل مارکتینگ چیست؟ چطور با بازاریابی ایمیلی به درآمد برسیم؟ (aloohimi.com) @flowchart_algorithm

🚨 دوره جامع علم داده (Data Science) 🧠 از مفاهیم پایه تا پروژه‌های واقعی 🐍 به همراه آموزش Python و SQL Server 👥 دوره آنلای
🚨 دوره جامع علم داده (Data Science) 🧠 از مفاهیم پایه تا پروژه‌های واقعی 🐍 به همراه آموزش Python و SQL Server 👥 دوره آنلاین #علم_داده مناسب برای: ✅ دانشجوها ✅تحلیلگران داده ✅کارکنان واحدهای تخصصی و ⭐️ افرادی که دنبال تغییر مسیر شغلی به دنیای تحلیلگری داده و دیتاساینس هستن 📎 مشاوره رایگان + مشاهده جزئیات دوره: 🌐 httb.ir/RwuLj 💯 گواهینامه معتبر مؤسسه توسعه --- 📈 جمع‌بندی سریع: 🟣 دوره آنلاین 🟣 شروع با مفاهیم پایه 🟣 یادگیری ماشین Python، (ML) و شبکه‌های عصبی 🟣 آموزش با Case Study ها و تحلیل‌ها از صنایع و حوزه‌های متعدد

🚨 دوره جامع علم داده (Data Science) 🧠 از مفاهیم پایه تا پروژه‌های واقعی 🐍 به همراه آموزش Python و SQL Server 👥 دوره آنلای
🚨 دوره جامع علم داده (Data Science) 🧠 از مفاهیم پایه تا پروژه‌های واقعی 🐍 به همراه آموزش Python و SQL Server 👥 دوره آنلاین #علم_داده مناسب برای: ✅ دانشجوها ✅تحلیلگران داده ✅کارکنان واحدهای تخصصی و ⭐️ افرادی که دنبال تغییر مسیر شغلی به دنیای تحلیلگری داده و دیتاساینس هستن 📎 مشاوره رایگان + مشاهده جزئیات دوره: 🌐 httb.ir/RwuLj 💯 گواهینامه معتبر مؤسسه توسعه --- 📈 جمع‌بندی سریع: 🟣 دوره آنلاین 🟣 شروع با مفاهیم پایه 🟣 یادگیری ماشین Python، (ML) و شبکه‌های عصبی 🟣 آموزش با Case Study ها و تحلیل‌ها از صنایع و حوزه‌های متعدد

دانستنی های برنامه نویسی دیجی‌کالا یک پلتفرم بسیار بزرگ و پیچیده است، بنابراین تنها با یک زبان نوشته نشده است. این شرکت از مجموعه‌ای از تکنولوژی‌ها (Tech Stack) استفاده می‌کند که بسته به بخش‌های مختلف (سایت، اپلیکیشن، هوش مصنوعی و سرور) متفاوت هستند. در اینجا تفکیک زبان‌های برنامه‌نویسی دیجی‌کالا آورده شده است: 📚 ۱. سمت سرور (Backend) این بخش "مغز" دیجی‌کالا است که پردازش سفارش‌ها و داده‌ها را انجام می‌دهد. دیجی‌کالا در ابتدا یک سیستم یکپارچه (Monolith) مبتنی بر PHP بود، اما اکنون به معماری میکروسرویس (Microservices) مهاجرت کرده است: ⦁ PHP: همچنان بخش‌های زیادی از هسته سیستم و سرویس‌های قدیمی‌تر با فریم‌ورک‌هایی مثل Laravel یا Symfony کار می‌کنند. ⦁ Go (Golang): برای سرویس‌هایی که نیاز به سرعت بسیار بالا و مدیریت ترافیک سنگین دارند (مثل سیستم لاگین یا جستجو)، از زبان Go استفاده می‌شود. ⦁ Python: برای بخش‌های مربوط به هوش مصنوعی، تحلیل داده (Big Data)، سیستم پیشنهاد دهنده کالا و یادگیری ماشین استفاده می‌شود. ⦁ ASP.NET Core: در برخی از زیرمجموعه‌ها یا سرویس‌های خاص (مانند بخش لجستیک یا مالی) ممکن است استفاده شود. ———————— 📚 ۲. سمت کاربر وب‌سایت (Frontend) آنچه شما در مرورگر خود می‌بینید: ⦁ JavaScript: زبان اصلی. ⦁ React.js: دیجی‌کالا از فریم‌ورک React (و فریم‌ورک Next.js برای سئو و رندر سمت سرور) استفاده می‌کند تا تجربه‌ای سریع و شبیه به اپلیکیشن در وب ارائه دهد. آن‌ها پلتفرمی به نام «پیشران» توسعه داده‌اند که بر پایه همین تکنولوژی‌هاست. ———————— 📚 ۳. اپلیکیشن‌های موبایلنسخه اندروید (Android): به صورت Native نوشته شده است، که عمدتاً از زبان‌های Java و Kotlin استفاده می‌کند. ⦁ نسخه آیفون (iOS): نسخه اصلی نیتیو با زبان Swift نوشته شده بود. اما به دلیل تحریم‌های اپل و حذف اپلیکیشن‌های ایرانی، دیجی‌کالا اکنون بیشتر روی نسخه PWA (وب‌اپلیکیشن پیش‌رونده) تمرکز دارد که در واقع همان نسخه وب (React) است که شبیه اپلیکیشن رفتار می‌کند. ———————— 📚 ۴. پایگاه داده‌ها (Databases) برای ذخیره‌سازی حجم عظیم اطلاعات، آن‌ها از ترکیبی از موارد زیر استفاده می‌کنند: ⦁ MySQL / MariaDB: برای داده‌های رابطه‌ای (مثل اطلاعات کاربران و سفارش‌ها). ⦁ MongoDB: برای داده‌های غیر ساختار‌یافته (مثل لاگ‌ها). ⦁ Redis: برای کش کردن اطلاعات و افزایش سرعت. ⦁ ElasticSearch: موتور قدرتمندی که برای جستجوی سریع کالاها در سایت استفاده می‌شود. برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

    getline(cin, str);
    
    cout << "Length of the string is: " << str.length() << endl;
    return 0;
}
این برنامه از متد length برای شمارش حروف رشته استفاده می‌کند. --- ▎سوال 9: سوال: کلاس Student ایجاد کنید که نام و نمره دانش‌آموز را ذخیره کند و متدی برای نمایش اطلاعات آن داشته باشد. پاسخ:
#include <iostream>
using namespace std;

class Student {
public:
    string name;
    float score;

    Student(string n, float s) : name(n), score(s) {}

    void displayInfo() {
        cout << "Name: " << name << ", Score: " << score << endl;
    }
};

int main() {
    Student student("Alice", 90.5);
    student.displayInfo();
    return 0;
}
این کلاس اطلاعات دانش‌آموز را ذخیره و نمایش می‌دهد. --- ▎سوال 10: سوال: برنامه‌ای بنویسید که اعداد فیبوناچی را تا N تولید کند. پاسخ:
#include <iostream>
using namespace std;

void fibonacci(int N) {
    int a = 0, b = 1, nextTerm;
    
    for (int i = 1; i <= N; ++i) {
        cout << a << " ";
        nextTerm = a + b;
        a = b;
        b = nextTerm;
    }
}

int main() {
    int N;
    cout << "Enter the number of terms: ";
    cin >> N;
    
    fibonacci(N);
    
    return 0;
}
این برنامه با استفاده از یک حلقه، اعداد فیبوناچی را تولید و چاپ می‌کند.

✅ 10 نمونه سوال پایان ترم مبانی برنامه‌نویسی با زبان C++ از کتاب جعفرنژاد قمی به همراه پاسخ‌های تشریحی کوتاه ارائه شده است: ▎سوال 1: سوال: برنامه‌ای بنویسید که مجموع اعداد صحیح از 1 تا N را محاسبه کند. پاسخ:
#include <iostream>
using namespace std;

int main() {
    int N, sum = 0;
    cout << "Enter a number: ";
    cin >> N;
    for (int i = 1; i <= N; ++i) {
        sum += i;
    }
    cout << "Sum is: " << sum << endl;
    return 0;
}
این برنامه با استفاده از یک حلقه for مجموع اعداد از 1 تا N را محاسبه می‌کند. --- ▎سوال 2: سوال: تابعی بنویسید که یک عدد صحیح را گرفته و بررسی کند که آیا این عدد اول است یا نه. پاسخ:
#include <iostream>
using namespace std;

bool isPrime(int n) {
    if (n <= 1) return false;
    for (int i = 2; i <= n / 2; ++i) {
        if (n % i == 0) return false;
    }
    return true;
}

int main() {
    int number;
    cout << "Enter a number: ";
    cin >> number;
    if (isPrime(number))
        cout << number << " is prime." << endl;
    else
        cout << number << " is not prime." << endl;
    return 0;
}
این تابع با بررسی تقسیم‌پذیری عدد، تعیین می‌کند که آیا عدد اول است یا خیر. --- ▎سوال 3: سوال: یک کلاس به نام Rectangle ایجاد کنید که طول و عرض را به عنوان ویژگی‌های خود داشته باشد و متدهایی برای محاسبه مساحت و محیط مستطیل داشته باشد. پاسخ:
#include <iostream>
using namespace std;

class Rectangle {
public:
    float length, width;

    Rectangle(float l, float w) : length(l), width(w) {}

    float area() {
        return length * width;
    }

    float perimeter() {
        return 2 * (length + width);
    }
};

int main() {
    Rectangle rect(5.0, 3.0);
    cout << "Area: " << rect.area() << endl;
    cout << "Perimeter: " << rect.perimeter() << endl;
    return 0;
}
کلاس Rectangle دارای متدهایی برای محاسبه مساحت و محیط است. --- ▎سوال 4: سوال: برنامه‌ای بنویسید که عناصر یک آرایه را معکوس کند. پاسخ:
#include <iostream>
using namespace std;

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);
    
    for (int i = 0; i < n / 2; ++i) {
        swap(arr[i], arr[n - i - 1]);
    }
    
    cout << "Reversed array: ";
    for (int i = 0; i < n; ++i) {
        cout << arr[i] << " ";
    }
    cout << endl;
    return 0;
}
این برنامه با استفاده از تابع swap عناصر آرایه را معکوس می‌کند. --- ▎سوال 5: سوال: یک برنامه بنویسید که اعداد فرد و زوج را از 1 تا N جدا کند. پاسخ:
#include <iostream>
using namespace std;

int main() {
    int N;
    cout << "Enter a number: ";
    cin >> N;

    cout << "Odd numbers: ";
    for (int i = 1; i <= N; i += 2) {
        cout << i << " ";
    }
    
    cout << "\nEven numbers: ";
    for (int i = 2; i <= N; i += 2) {
        cout << i << " ";
    }
    
    cout << endl;
    return 0;
}
برنامه اعداد فرد و زوج را با استفاده از دو حلقه جداگانه چاپ می‌کند. --- ▎سوال 6: سوال: تابعی بنویسید که بزرگترین عدد را از میان سه عدد ورودی پیدا کند. پاسخ:
#include <iostream>
using namespace std;

int maxOfThree(int a, int b, int c) {
    return max(max(a, b), c);
}

int main() {
    int x, y, z;
    cout << "Enter three numbers: ";
    cin >> x >> y >> z;
    cout << "Maximum is: " << maxOfThree(x, y, z) << endl;
    return 0;
}
این تابع با استفاده از تابع max بزرگترین عدد را پیدا می‌کند. --- ▎سوال 7: سوال: برنامه‌ای بنویسید که فاکتوریل یک عدد را محاسبه کند. پاسخ:
#include <iostream>
using namespace std;

int factorial(int n) {
    if (n == 0) return 1;
    return n * factorial(n - 1);
}

int main() {
    int num;
    cout << "Enter a number: ";
    cin >> num;
    cout << "Factorial is: " << factorial(num) << endl;
    return 0;
}
این برنامه از یک تابع بازگشتی برای محاسبه فاکتوریل استفاده می‌کند. --- ▎سوال 8: سوال: یک برنامه بنویسید که رشته‌ای را دریافت کرده و تعداد حروف آن را شمارش کند. پاسخ:
#include <iostream>
#include <string>
using namespace std;

int main() {
    string str;
    cout << "Enter a string: ";
برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

✅ ۱۰ نمونه سؤال کمی پیشرفته‌تر از مبانی برنامه‌نویسی، الگوریتم و فلوچارت همراه با پاسخ کوتاه: ۱. مرتبه زمانی (Time Complexity) الگوریتم زیر چیست؟ for i = 1 to n for j = 1 to n print(i, j) پاسخ کوتاه: O(n²) ۲. خروجی الگوریتم زیر چیست؟ sum = 0 for i = 1 to 4 sum = sum + i print(sum) پاسخ کوتاه: 10 ۳. الگوریتمی برای یافتن بزرگ‌ترین عدد در آرایه‌ای با n عضو بنویسید. پاسخ کوتاه: max = اولین عضو پیمایش از عضو دوم تا آخر اگر عنصر فعلی > max → به‌روزرسانی max چاپ max ۴. تفاوت الگوریتم بازگشتی (Recursive) و تکراری (Iterative) چیست؟ پاسخ کوتاه: در بازگشتی تابع خودش را فراخوانی می‌کند؛ در تکراری از حلقه استفاده می‌شود. ۵. شرط خاتمه در الگوریتم بازگشتی چه اهمیتی دارد؟ پاسخ کوتاه: برای جلوگیری از اجرای بی‌نهایت و ایجاد خطای Stack Overflow. ۶. مقدار خروجی تابع بازگشتی زیر چیست؟ function f(n): if n == 1: return 1 else: return n * f(n-1) print(f(4)) پاسخ کوتاه: 24 (فاکتوریل 4) ۷. الگوریتمی برای تشخیص اول بودن یک عدد n بنویسید. پاسخ کوتاه: اگر n ≤ 1 → اول نیست از i=2 تا √n اگر n mod i = 0 → اول نیست در غیر این صورت → اول است ۸. پیچیدگی زمانی جستجوی دودویی (Binary Search) چیست؟ پاسخ کوتاه: O(log n) ۹. خروجی الگوریتم زیر چیست؟ i = 1 while i <= 5: print(i) i = i + 2 پاسخ کوتاه: 1 3 5 ۱۰. تفاوت آرایه و لیست پیوندی چیست؟ پاسخ کوتاه: آرایه حافظه پیوسته دارد و دسترسی مستقیم سریع دارد؛ لیست پیوندی حافظه غیرپیوسته دارد و درج/حذف آسان‌تر است. اگر بخواهی می‌توانم یک نمونه آزمون کامل سخت با سطح پایان‌ترم (حل مسئله ترکیبی + تحلیل مرتبه زمانی) هم طراحی کنم. برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

✅ ۱۰ نمونه سؤال از مبانی برنامه‌نویسی، الگوریتم و فلوچارت (در سطح ترم اول دانشگاه) همراه با پاسخ کوتاه آورده شده است: ۱. الگوریتم چیست؟ پاسخ کوتاه: مجموعه‌ای از مراحل مرتب و مشخص برای حل یک مسئله که ورودی را گرفته و خروجی تولید می‌کند. ۲. سه ویژگی اصلی یک الگوریتم خوب را نام ببرید. پاسخ کوتاه: خاتمه‌پذیری داشتن ورودی و خروجی مشخص واضح و بدون ابهام بودن مراحل ۳. فلوچارت چیست؟ پاسخ کوتاه: نمایش گرافیکی الگوریتم با استفاده از اشکال استاندارد مانند بیضی، مستطیل و لوزی. ۴. کاربرد شکل لوزی در فلوچارت چیست؟ پاسخ کوتاه: برای نمایش شرط و تصمیم‌گیری (مانند if). ۵. الگوریتمی بنویسید که عددی را گرفته و زوج یا فرد بودن آن را مشخص کند. پاسخ کوتاه: شروع دریافت عدد n اگر n mod 2 = 0 → چاپ "زوج" در غیر این صورت → چاپ "فرد" پایان ۶. تفاوت حلقه for و while چیست؟ پاسخ کوتاه: در for معمولاً تعداد تکرار مشخص است؛ در while تکرار وابسته به برقرار بودن شرط است. ۷. متغیر چیست؟ پاسخ کوتاه: محلی در حافظه برای ذخیره داده که مقدار آن می‌تواند تغییر کند. ۸. خروجی الگوریتم زیر چیست؟ x = 3 y = 2 z = x * y + 1 print(z) پاسخ کوتاه: 7 ۹. الگوریتمی برای محاسبه مجموع اعداد 1 تا n بنویسید. پاسخ کوتاه: شروع دریافت n sum = 0 از i=1 تا n → sum = sum + i چاپ sum پایان ۱۰. تفاوت کامپایلر و مفسر چیست؟ پاسخ کوتاه: کامپایلر کل برنامه را یک‌جا ترجمه می‌کند؛ مفسر خط به خط اجرا و ترجمه می‌کند. برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

مرتب‌سازی حبابی (Bubble Sort) یک الگوریتم ساده برای مرتب کردن آرایه است. 🔹 ایدهٔ اصلی: در هر مرحله، دو عنصرِ کنار هم با هم مقایسه می‌شوند و اگر ترتیبشان اشتباه باشد، جابه‌جا می‌شوند. این کار آن‌قدر تکرار می‌شود تا آرایه کاملاً مرتب شود. 🔹 چرا «حبابی»؟ چون در هر دور، بزرگ‌ترین عنصر مثل حباب به انتهای آرایه می‌رود. 🔹 ویژگی‌ها: ساده و قابل فهم مناسب برای آموزش مفاهیم اولیه کارایی پایین برای داده‌های بزرگ 🔹 پیچیدگی زمانی: حالت معمول و بدترین حالت: O(n²) اگر آرایه تقریباً مرتب باشد: بهتر عمل می‌کند 🔹 مثال کوتاه: [7, 2, 5] → [2, 7, 5] → [2, 5, 7] برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

✅ قابل توجه دانشجویان عزیز، نمونه سوالات آمادگی آزمون پایان ترم، فقط تا امشب
👈هزینه این پکیج با تخفیف ویژه فقط 120 هزار تومان جهت هماهنگی با ادمین کانال و دریافت پکیج 👇 @Programer24h

A) حلقه B) مدیریت منابع (file, lock) C) مدیریت استثناء D) شرط ✅ پاسخ: B برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

✅ ۳۰ سؤال تستی (چهارگزینه‌ای) زبان برنامه‌نویسی پایتون در سطح متوسط تا پیشرفته به‌همراه پاسخ صحیح آورده شده است. سؤالات مفهومی، کدنویسی و رفتاری (behavior) پایتون را پوشش می‌دهند. --- 🟦 بخش اول: سطح متوسط (۱–۱۵) 1. خروجی کد زیر چیست؟ x = [1, 2, 3] y = x y.append(4) print(x) A) [1, 2, 3] B) [4] C) [1, 2, 3, 4] D) Error ✅ پاسخ: C --- 2. کدام ساختار داده در پایتون غیرقابل تغییر (immutable) است؟ A) list B) dict C) set D) tuple ✅ پاسخ: D --- 3. خروجی کد زیر چیست؟ print(type(lambda x: x)) A) <class 'function'> B) <class 'lambda'> C) <class 'generator'> D) Error ✅ پاسخ: A --- 4. تفاوت اصلی append() و extend() در لیست چیست؟ A) هر دو یکسان‌اند B) append چند عضو اضافه می‌کند C) extend لیست را به‌صورت عضو اضافه می‌کند D) extend عناصر iterable را جداگانه اضافه می‌کند ✅ پاسخ: D --- 5. خروجی کد زیر؟ print(0.1 + 0.2 == 0.3) A) True B) False C) Error D) None ✅ پاسخ: B --- 6. کدام یک برای مدیریت استثناء استفاده می‌شود؟ A) if / else B) try / except C) for / while D) assert ✅ پاسخ: B --- 7. خروجی کد زیر چیست؟ a = [1, 2, 3] b = a[:] print(a is b) A) True B) False C) Error D) None ✅ پاسخ: B --- 8. کدام گزینه باعث ایجاد generator می‌شود؟ A) {x for x in range(5)} B) [x for x in range(5)] C) (x for x in range(5)) D) range(5) ✅ پاسخ: C --- 9. خروجی کد زیر؟ print(bool([]), bool({}), bool("")) A) True True True B) False False False C) False True False D) True False True ✅ پاسخ: B --- 10. هدف اصلی init در کلاس چیست؟ A) حذف شی B) مقداردهی اولیه شی C) تعریف متد خصوصی D) ایجاد کلاس ✅ پاسخ: B --- 11. کدام گزینه یک decorator معتبر است؟ A) @my_func def f(): pass B) @decorator def f(): pass C) decorator f(): pass D) #decorator ✅ پاسخ: B --- 12. خروجی کد زیر؟ print("5" * 3) A) 15 B) "555" C) Error D) None ✅ پاسخ: B --- 13. کدام عملگر برای مقایسه هویت استفاده می‌شود؟ A) == B) = C) is D) in ✅ پاسخ: C --- 14. خروجی کد زیر؟ x = None print(x is None) A) True B) False C) Error D) 0 ✅ پاسخ: A --- 15. کدام گزینه برای خواندن فایل متنی مناسب است؟ A) open("a.txt", "w") B) open("a.txt", "r") C) open("a.txt", "a") D) open("a.txt", "x") ✅ پاسخ: B --- 🟪 بخش دوم: سطح پیشرفته (۱۶–۳۰) 16. خروجی کد زیر چیست؟ def f(x, l=[]): l.append(x) return l print(f(1)) print(f(2)) A) [1] و [2] B) [1] و [1,2] C) Error D) [2] و [1] ✅ پاسخ: B --- 17. مفهوم GIL در پایتون چیست؟ A) مدیریت حافظه B) جلوگیری از اجرای همزمان threadها C) افزایش سرعت CPU D) مدیریت I/O ✅ پاسخ: B --- 18. کدام گزینه باعث lazy evaluation می‌شود؟ A) list comprehension B) tuple C) generator D) set ✅ پاسخ: C --- 19. خروجی؟ print({i:i*i for i in range(3)}) A) {0,1,4} B) {0:0,1:1,2:4} C) [0,1,4] D) Error ✅ پاسخ: B --- 20. کدام ماژول برای برنامه‌نویسی async استفاده می‌شود؟ A) threading B) multiprocessing C) asyncio D) concurrent ✅ پاسخ: C --- 21. تفاوت اصلی @staticmethod و @classmethod چیست؟ A) staticmethod به کلاس دسترسی ندارد B) classmethod به self دسترسی دارد C) staticmethod کندتر است D) تفاوتی ندارند ✅ پاسخ: A --- 22. خروجی کد زیر؟ print([i for i in range(5) if i % 2]) A) [0,2,4] B) [1,3] C) [1,2,3,4] D) [] ✅ پاسخ: B --- 23. کدام ساختار برای ارتباط بین threadها امن‌تر است؟ A) list B) dict C) queue.Queue D) tuple ✅ پاسخ: C --- 24. مفهوم duck typing یعنی؟ A) بررسی نوع متغیر B) بررسی ارث‌بری C) تمرکز بر رفتار به‌جای نوع D) استفاده از isinstance ✅ پاسخ: C --- 25. خروجی؟ print(all([True, 1, "a"])) A) False B) True C) Error D) None ✅ پاسخ: B --- 26. کدام دستور حافظه اشغال‌شده توسط نام را آزاد می‌کند؟ A) free B) del C) clear D) remove ✅ پاسخ: B --- 27. تفاوت deep copy و shallow copy چیست؟ A) deep copy فقط مرجع را کپی می‌کند B) shallow copy داده‌ها را جداگانه کپی می‌کند C) deep copy تمام ساختارهای تو در تو را کپی می‌کند D) تفاوتی ندارند ✅ پاسخ: C --- 28. خروجی؟ print(type(iter([]))) A) list B) iterator C) <class 'list_iterator'> D) generator ✅ پاسخ: C --- 29. کدام ابزار برای تست واحد (Unit Test) استاندارد است؟ A) pytest B) unittest C) nose D) doctest ✅ پاسخ: B --- 30. کدام گزینه بهترین کاربرد with است؟

📱هوش مصنوعی های طراحی سایت #هوش_مصنوعی 🆔 @shabake_karan
📱هوش مصنوعی های طراحی سایت #هوش_مصنوعی 🆔 @shabake_karan

۲۰ سؤال دام‌دار و پرتکرار اساتید درس مبانی برنامه‌نویسی ++C همراه با پاسخ دقیق و نکته امتحانی آورده شده است. این‌ها دقیقاً همان جاهایی هستند که بیشترین اشتباه دانشجوها اتفاق می‌افتد. 🔥 ۲۰ سؤال دام‌دار ++C (با پاسخ) --- 1️⃣ خروجی کد زیر چیست؟ int i = 5; cout << i++ + ++i; پاسخ: 12 📌 توضیح: i++ → 5 ++i → 7 --- 2️⃣ خروجی چیست؟ int x = 1; cout << x++ << ++x; پاسخ: 13 --- 3️⃣ خروجی؟ int a = 10; if(a = 5) cout << "Yes"; else cout << "No"; پاسخ: Yes 📌 دام: استفاده از = به‌جای == --- 4️⃣ خروجی؟ int i = 0; while(i < 3) cout << i++; پاسخ: 012 --- 5️⃣ خروجی؟ for(int i=0; i<5; i++); cout << i; پاسخ: خطای کامپایل 📌 دام: سمی‌کالن اضافه بعد از for --- 6️⃣ خروجی؟ int a[3] = {1,2,3}; cout << a[3]; پاسخ: مقدار نامشخص (Garbage) 📌 دام: خروج از محدوده آرایه --- 7️⃣ خروجی؟ int x = 0; if(x) cout << "True"; else cout << "False"; پاسخ: False --- 8️⃣ خروجی؟ int i = 1; do { cout << i; i++; } while(i < 1); پاسخ: 1 --- 9️⃣ خروجی؟ int x = 5; cout << (x > 3 ? x : 3); پاسخ: 5 --- 🔟 خروجی؟ int i = 0; for(; i<3; ) cout << ++i; پاسخ: 123 --- 1️⃣1️⃣ خروجی؟ int a = 5; int &b = a; b = 10; cout << a; پاسخ: 10 --- 12 خروجی؟ int i = 1; while(i <= 3); { cout << i; i++; } پاسخ: حلقه بی‌نهایت 📌 دام: سمی‌کالن بعد از while --- 13 خروجی؟ int x = 10; cout << x / 4; پاسخ: 2 📌 دام: تقسیم صحیح (integer division) --- 14 خروجی؟ int x = 5; cout << sizeof(x); پاسخ: معمولاً 4 --- 15 خروجی؟ char c = 'A'; cout << c + 1; پاسخ: 66 📌 دام: تبدیل خودکار char به int (کد ASCII) --- 16 خروجی؟ int i = 5; cout << i-- << --i; پاسخ: 53 --- 17 خروجی؟ int a = 3, b = 4; cout << (a > b && b > 2); پاسخ: 0 (false) --- 18 خروجی؟ int i = 0; cout << i && i++; پاسخ: 0 📌 دام: short-circuit → i++ اجرا نمی‌شود --- 19 خروجی؟ int x = 2; switch(x) { case 1: cout << "A"; case 2: cout << "B"; case 3: cout << "C"; } پاسخ: BC 📌 دام: نبودن break --- 20 خروجی؟ int a = 0; cout << !a; پاسخ: 1 --- 🎯 نکات طلایی استادها ❌ سمی‌کالن بعد از for و while ❌ استفاده از = به‌جای == ❌ خروج از محدوده آرایه ❌ تقسیم صحیح ❌ فراموشی break در switch برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

📌 جزوه خلاصه شب امتحان مبانی برنامه‌نویسی با ++C 🔹 1. ساختار کلی برنامه در ++C #include <iostream> using namespace std; int main() { // دستورات return 0; } 🔹 2. انواع داده‌های مهم نوع دادهحجم تقریبیint4 بایتfloat4 بایتdouble8 بایتchar1 بایت 🔹 3. عملگرها ریاضی: + - * / % مقایسه‌ای: == != < > <= >= منطقی: && || ! افزایش/کاهش: ++ -- 📌 تفاوت مهم: i++; // بعد از استفاده افزایش ++i; // قبل از استفاده افزایش 🔹 4. شرط‌ها (if / else) if (x > 0) cout << "Positive"; else cout << "Negative"; 🔹 5. حلقه‌ها (بسیار مهم) 🔸 for for(int i=0; i<5; i++) cout << i; 🔸 while while(x > 0) { x--; } 🔸 do while do { cin >> x; } while(x < 0); 📌 تفاوت مهم: do while حداقل یک‌بار اجرا می‌شود. 🔹 6. دستورات کنترلی break → خروج از حلقه continue → رفتن به تکرار بعدی return → خروج از تابع 🔹 7. آرایه‌ها (پرتکرار) int a[5] = {1,2,3,4,5}; 📌 نکات مهم: اندیس از 0 شروع می‌شود آخرین اندیس = size - 1 🔹 8. رشته‌ها (string) string name; cin >> name; cout << name; 🔹 9. توابع int sum(int a, int b) { return a + b; } 📌 مزایا: کاهش تکرار خوانایی بیشتر استفاده مجدد 🔹 10. متغیرها 🔸 محلی داخل تابع مقدار اولیه نامشخص 🔸 سراسری خارج از تابع مقدار اولیه صفر 🔹 11. ارسال پارامتر 🔸 مقدار (Value) void f(int x) { x++; } 🔸 مرجع (Reference) void f(int &x) { x++; } 🔹 12. ورودی و خروجی cin >> x; cout << x; 🔹 13. برنامه‌های خیلی پرتکرار ✔ عدد اول bool prime(int n) { if(n < 2) return false; for(int i=2; i<n; i++) if(n % i == 0) return false; return true; } ✔ فاکتوریل int fact(int n) { int f = 1; for(int i=1; i<=n; i++) f *= i; return f; } ✔ بزرگ‌ترین عضو آرایه int max = a[0]; for(int i=1; i<n; i++) if(a[i] > max) max = a[i]; 🔹 14. اشکالات رایج امتحانی ❌ استفاده از = به‌جای == خروج از محدوده آرایه فراموش‌کردن return 0; استفاده از متغیر محلی بدون مقداردهی 🎯 جمع‌بندی طلایی شب امتحان
اگر این‌ها را بلد باشی:
✔ حلقه‌ها ✔ آرایه ✔ تابع ✔ شرط‌ها برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

سوالات پرتکرار درس مبانی برنامه‌نویسی با زبان ++C همراه با پاسخ تشریحی و خلاصه آورده شده است؛ این‌ها جزو رایج‌ترین سؤالات امتحانی هستند. 🔹 ۱. تفاوت while و do while چیست؟ پاسخ: در while ابتدا شرط بررسی می‌شود، سپس بدنه اجرا می‌شود. در do while ابتدا بدنه اجرا می‌شود و سپس شرط بررسی می‌شود، بنابراین حداقل یک‌بار اجرا می‌شود. while(condition) { // ممکن است اجرا نشود } do { // حداقل یک بار اجرا می‌شود } while(condition); 🔹 ۲. تفاوت ++i و i++ چیست؟ پاسخ: ++i (پیش‌افزایش): ابتدا مقدار افزایش می‌یابد سپس استفاده می‌شود. i++ (پس‌افزایش): ابتدا استفاده می‌شود سپس مقدار افزایش می‌یابد. int i = 5; cout << ++i; // 6 cout << i++; // 6 (بعداً 7 می‌شود) 🔹 ۳. متغیر محلی و سراسری چیست؟ پاسخ: محلی (Local): داخل تابع تعریف می‌شود و فقط در همان تابع قابل استفاده است. سراسری (Global): خارج از توابع تعریف می‌شود و در کل برنامه قابل دسترسی است. 🔹 ۴. آرایه چیست؟ پاسخ: آرایه مجموعه‌ای از چند متغیر هم‌نوع است که با یک نام مشترک و اندیس استفاده می‌شوند. int a[5] = {1,2,3,4,5}; اندیس آرایه‌ها از ۰ شروع می‌شود. 🔹 ۵. تابع چیست و چرا استفاده می‌شود؟ پاسخ: تابع مجموعه‌ای از دستورات است که یک کار مشخص انجام می‌دهد. مزایا: کاهش تکرار کد افزایش خوانایی اشکال‌یابی ساده‌تر int sum(int a, int b) { return a + b; } 🔹 ۶. تفاوت break و continue چیست؟ پاسخ: break → خروج کامل از حلقه continue → پرش به تکرار بعدی حلقه 🔹 ۷. مقداردهی پیش‌فرض متغیرها چگونه است؟ پاسخ: متغیرهای سراسری → صفر (0) متغیرهای محلی → مقدار نامشخص (garbage) 🔹 ۸. اشکال کد زیر چیست؟ int a[5]; for(int i=1; i<=5; i++) cin >> a[i]; پاسخ: اندیس آرایه از 0 تا 4 است ولی در این کد از 1 تا 5 استفاده شده. ✅ کد صحیح: for(int i=0; i<5; i++) cin >> a[i]; 🔹 ۹. برنامه تشخیص عدد اول int n, c = 0; cin >> n; for(int i=1; i<=n; i++) if(n % i == 0) c++; if(c == 2) cout << "Prime"; else cout << "Not Prime"; 🔹 ۱۰. تفاوت = و == چیست؟ پاسخ: = → انتساب مقدار == → مقایسه دو مقدار if(x == 5) // درست x = 5; // انتساب 🔹 ۱۱. فاکتوریل یک عدد با تابع int fact(int n) { int f = 1; for(int i=1; i<=n; i++) f *= i; return f; } 🔹 ۱۲. ورودی و خروجی در ++C int x; cin >> x; cout << x; 📌 نکته امتحانی مهم
بیشترین نمره معمولاً از حلقه‌ها + آرایه + تابع + شرط می‌آید.
برنامه‌نویسی را از اینجا شروع کنید👇 @flowchart_algorithm

در زیر ۵ نمونه سوال و جواب با زبان پایتون در مورد جمع سری‌های خطی و کسری ارائه شده است: ▎سوال ۱: جمع سری خطی سوال: جمع سری خطی Sₙ = 1 + 2 + 3 + ... + n را برای n = 10 محاسبه کنید. پاسخ:
n = 10
S_n = sum(range(1, n + 1))
print(S_n)  # خروجی: 55
سوال ۲: جمع سری کسری سوال: جمع سری کسری Sₙ = 1 / 1 + 1 / 2 + 1 / 3 + ... + 1 / n را برای n = 5 محاسبه کنید. پاسخ:
n = 5
S_n = sum(1/i for i in range(1, n + 1))
print(S_n)  # خروجی: 2.283333333333333
سوال ۳: جمع سری خطی با فرمول سوال: از فرمول Sₙ = n(n + 1) / 2 برای محاسبه جمع سری خطی n = 100 استفاده کنید. پاسخ:
n = 100
S_n = n * (n + 1) // 2
print(S_n)  # خروجی: 5050
سوال ۴: جمع سری کسری با دقت مشخص سوال: جمع سری کسری Sₙ = ∑ᵢ₌₁ⁿ 1 / i را برای n = 10 محاسبه کنید و نتیجه را با دقت دو رقم اعشار نمایش دهید. پاسخ:
n = 10
S_n = sum(1/i for i in range(1, n + 1))
print(f"{S_n:.2f}")  # خروجی: 2.93
سوال ۵: جمع سری کسری تا حد خاص سوال: مجموع سری کسری S را تا زمانی که مقدار آن بیشتر از 2 شود محاسبه کنید و تعداد جملات را نمایش دهید. پاسخ:
S = 0
n = 0

while S <= 2:
    n += 1
    S += 1/n

print(n)  # خروجی: تعداد جملات تا زمانی که S بزرگتر از 2 شود
با استفاده از این مثال‌ها می‌توانید نحوه محاسبه جمع سری‌های خطی و کسری را در زبان پایتون تمرین کنید.

در زیر ۱۰ نمونه سوال و جواب با زبان پایتون در مورد حلقه‌های for و while ارائه شده است: ▎سوال ۱: استفاده از حلقه for برای چاپ اعداد سوال: با استفاده از حلقه for اعداد ۱ تا ۵ را چاپ کنید. پاسخ:
for i in range(1, 6):
    print(i)
سوال ۲: جمع اعداد با حلقه for سوال: مجموع اعداد ۱ تا ۱۰ را با استفاده از حلقه for محاسبه کنید. پاسخ:
sum = 0
for i in range(1, 11):
    sum += i
print(sum)  # خروجی: 55
سوال ۳: استفاده از حلقه while برای شمارش معکوس سوال: با استفاده از حلقه while اعداد ۵ تا ۱ را چاپ کنید. پاسخ:
i = 5
while i > 0:
    print(i)
    i -= 1
سوال ۴: شمارش تکرار در حلقه for سوال: تعداد عناصر لیست زیر را با استفاده از حلقه for محاسبه کنید.
my_list = [10, 20, 30, 40]
پاسخ:
count = 0
for item in my_list:
    count += 1
print(count)  # خروجی: 4
سوال ۵: استفاده از break در حلقه while سوال: با استفاده از حلقه while اعداد را چاپ کنید تا به عدد ۳ برسید و سپس حلقه را متوقف کنید. پاسخ:
i = 1
while True:
    if i == 3:
        break
    print(i)
    i += 1
سوال ۶: استفاده از continue در حلقه for سوال: با استفاده از حلقه for اعداد ۱ تا ۵ را چاپ کنید، اما عدد ۳ را نادیده بگیرید. پاسخ:
for i in range(1, 6):
    if i == 3:
        continue
    print(i)
سوال ۷: محاسبه فاکتوریل با حلقه while سوال: فاکتوریل عدد ۵ را با استفاده از حلقه while محاسبه کنید. پاسخ:
n = 5
factorial = 1
i = 1
while i <= n:
    factorial *= i
    i += 1
print(factorial)  # خروجی: 120
سوال ۸: استفاده از enumerate در حلقه for سوال: با استفاده از enumerate، ایندکس و مقدار هر عنصر لیست زیر را چاپ کنید.
my_list = ['a', 'b', 'c']
پاسخ:
for index, value in enumerate(my_list):
    print(index, value)
سوال ۹: جمع اعداد زوج با حلقه for سوال: مجموع اعداد زوج بین ۱ تا ۲۰ را با استفاده از حلقه for محاسبه کنید. پاسخ:
sum_even = 0
for i in range(1, 21):
    if i % 2 == 0:
        sum_even += i
print(sum_even)  # خروجی: 110
سوال ۱۰: پیدا کردن بزرگترین عدد با حلقه while سوال: بزرگترین عدد را از لیست زیر با استفاده از حلقه while پیدا کنید.
my_list = [3, 5, 2, 8, 6]
پاسخ:
max_num = my_list[0]
i = 1
while i < len(my_list):
    if my_list[i] > max_num:
        max_num = my_list[i]
    i += 1
print(max_num)  # خروجی: 8
با استفاده از این مثال‌ها می‌توانید نحوه کار با حلقه‌های for و while در زبان پایتون را تمرین کنید.