در زیر ۱۰ نمونه سوال و جواب با زبان پایتون در مورد ستها و تاپلها ارائه شده است:
▎سوال ۱: ایجاد یک ست
سوال: یک ست از اعداد ۱ تا ۵ ایجاد کنید.
پاسخ:
▎سوال ۲: افزودن عنصر به ست
سوال: یک عنصر جدید (۶) به ست زیر اضافه کنید.
پاسخ:
▎سوال ۳: حذف عنصر از ست
سوال: عنصر (۲) را از ست زیر حذف کنید.
پاسخ:
▎سوال ۴: بررسی وجود عنصر در ست
سوال: بررسی کنید که آیا عدد (۳) در ست زیر وجود دارد یا خیر.
پاسخ:
▎سوال ۵: عملیات اتحاد دو ست
سوال: اتحاد دو ست زیر را محاسبه کنید.
پاسخ:
▎سوال ۶: ایجاد یک تاپل
سوال: یک تاپل شامل اعداد (۱، ۲، ۳) ایجاد کنید.
پاسخ:
▎سوال ۷: دسترسی به عنصر در تاپل
سوال: به عنصر دوم تاپل زیر دسترسی پیدا کنید.
پاسخ:
▎سوال ۸: طول تاپل
سوال: طول تاپل زیر را محاسبه کنید.
پاسخ:
▎سوال ۹: تکرار عناصر در تاپل
سوال: تعداد تکرار عدد (2) در تاپل زیر را محاسبه کنید.
پاسخ:
▎سوال ۱۰: تبدیل لیست به تاپل
سوال: یک لیست از اعداد را به تاپل تبدیل کنید.
پاسخ:
با استفاده از این مثالها میتوانید نحوه کار با ستها و تاپلها در زبان پایتون را تمرین کنید.
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
▎سوال ۱: ایجاد یک ست
سوال: یک ست از اعداد ۱ تا ۵ ایجاد کنید.
پاسخ:
my_set = {1, 2, 3, 4, 5}
print(my_set)▎سوال ۲: افزودن عنصر به ست
سوال: یک عنصر جدید (۶) به ست زیر اضافه کنید.
my_set = {1, 2, 3}پاسخ:
my_set.add(6)
print(my_set)
▎سوال ۳: حذف عنصر از ست
سوال: عنصر (۲) را از ست زیر حذف کنید.
my_set = {1, 2, 3, 4, 5}پاسخ:
my_set.remove(2)
print(my_set)
▎سوال ۴: بررسی وجود عنصر در ست
سوال: بررسی کنید که آیا عدد (۳) در ست زیر وجود دارد یا خیر.
my_set = {1, 2, 3, 4}پاسخ:
exists = 3 in my_set
print(exists) # خروجی: True
▎سوال ۵: عملیات اتحاد دو ست
سوال: اتحاد دو ست زیر را محاسبه کنید.
set_a = {1, 2, 3}
set_b = {3, 4, 5}پاسخ:
union_set = set_a | set_b
print(union_set) # خروجی: {1, 2, 3, 4, 5}
▎سوال ۶: ایجاد یک تاپل
سوال: یک تاپل شامل اعداد (۱، ۲، ۳) ایجاد کنید.
پاسخ:
my_tuple = (1, 2, 3)
print(my_tuple)
▎سوال ۷: دسترسی به عنصر در تاپل
سوال: به عنصر دوم تاپل زیر دسترسی پیدا کنید.
my_tuple = (10, 20, 30, 40)
پاسخ:
second_element = my_tuple[1]
print(second_element) # خروجی: 20
▎سوال ۸: طول تاپل
سوال: طول تاپل زیر را محاسبه کنید.
my_tuple = (1, 2, 3, 4, 5)
پاسخ:
length = len(my_tuple)
print(length) # خروجی: 5
▎سوال ۹: تکرار عناصر در تاپل
سوال: تعداد تکرار عدد (2) در تاپل زیر را محاسبه کنید.
my_tuple = (1, 2, 2, 3, 4)
پاسخ:
count_of_two = my_tuple.count(2)
print(count_of_two) # خروجی: 2
▎سوال ۱۰: تبدیل لیست به تاپل
سوال: یک لیست از اعداد را به تاپل تبدیل کنید.
my_list = [1, 2, 3, 4]
پاسخ:
my_tuple = tuple(my_list)
print(my_tuple) # خروجی: (1, 2, 3, 4)
با استفاده از این مثالها میتوانید نحوه کار با ستها و تاپلها در زبان پایتون را تمرین کنید.
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
در زیر ۱۰ نمونه سوال و جواب با زبان پایتون در مورد حلقههای
▎سوال ۱: استفاده از حلقه
سوال: با استفاده از حلقه
پاسخ:
▎سوال ۲: جمع اعداد با حلقه
سوال: مجموع اعداد ۱ تا ۱۰ را با استفاده از حلقه
پاسخ:
▎سوال ۳: استفاده از حلقه
سوال: با استفاده از حلقه
پاسخ:
▎سوال ۴: شمارش تکرار در حلقه
سوال: تعداد عناصر لیست زیر را با استفاده از حلقه
پاسخ:
▎سوال ۵: استفاده از
سوال: با استفاده از حلقه
پاسخ:
▎سوال ۶: استفاده از
سوال: با استفاده از حلقه
پاسخ:
▎سوال ۷: محاسبه فاکتوریل با حلقه
سوال: فاکتوریل عدد ۵ را با استفاده از حلقه
پاسخ:
▎سوال ۸: استفاده از
سوال: با استفاده از
پاسخ:
▎سوال ۹: جمع اعداد زوج با حلقه
سوال: مجموع اعداد زوج بین ۱ تا ۲۰ را با استفاده از حلقه
پاسخ:
▎سوال ۱۰: پیدا کردن بزرگترین عدد با حلقه
سوال: بزرگترین عدد را از لیست زیر با استفاده از حلقه
پاسخ:
با استفاده از این مثالها میتوانید نحوه کار با حلقههای
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
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 در زبان پایتون را تمرین کنید.برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤1
در زیر ۵ نمونه سوال و جواب با زبان پایتون در مورد جمع سریهای خطی و کسری ارائه شده است:
▎سوال ۱: جمع سری خطی
سوال: جمع سری خطی Sₙ = 1 + 2 + 3 + ... + n را برای n = 10 محاسبه کنید.
پاسخ:
▎سوال ۲: جمع سری کسری
سوال: جمع سری کسری Sₙ = 1 / 1 + 1 / 2 + 1 / 3 + ... + 1 / n را برای n = 5 محاسبه کنید.
پاسخ:
▎سوال ۳: جمع سری خطی با فرمول
سوال: از فرمول Sₙ = n(n + 1) / 2 برای محاسبه جمع سری خطی n = 100 استفاده کنید.
پاسخ:
▎سوال ۴: جمع سری کسری با دقت مشخص
سوال: جمع سری کسری Sₙ = ∑ᵢ₌₁ⁿ 1 / i را برای n = 10 محاسبه کنید و نتیجه را با دقت دو رقم اعشار نمایش دهید.
پاسخ:
▎سوال ۵: جمع سری کسری تا حد خاص
سوال: مجموع سری کسری S را تا زمانی که مقدار آن بیشتر از 2 شود محاسبه کنید و تعداد جملات را نمایش دهید.
پاسخ:
با استفاده از این مثالها میتوانید نحوه محاسبه جمع سریهای خطی و کسری را در زبان پایتون تمرین کنید.
برنامهنویسی را از اینجا شروع کنید👇
@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 شود
با استفاده از این مثالها میتوانید نحوه محاسبه جمع سریهای خطی و کسری را در زبان پایتون تمرین کنید.
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🙏1
✅ سوالات پرتکرار درس مبانی برنامهنویسی با زبان ++C همراه با پاسخ تشریحی و خلاصه آورده شده است؛ اینها جزو رایجترین سؤالات امتحانی هستند.
🔹 ۱. تفاوت while و do while چیست؟
پاسخ:
در while ابتدا شرط بررسی میشود، سپس بدنه اجرا میشود.
در do while ابتدا بدنه اجرا میشود و سپس شرط بررسی میشود، بنابراین حداقل یکبار اجرا میشود.
🔹 ۲. تفاوت ++i و i++ چیست؟
پاسخ:
++i (پیشافزایش): ابتدا مقدار افزایش مییابد سپس استفاده میشود.
i++ (پسافزایش): ابتدا استفاده میشود سپس مقدار افزایش مییابد.
🔹 ۳. متغیر محلی و سراسری چیست؟
پاسخ:
محلی (Local): داخل تابع تعریف میشود و فقط در همان تابع قابل استفاده است.
سراسری (Global): خارج از توابع تعریف میشود و در کل برنامه قابل دسترسی است.
🔹 ۴. آرایه چیست؟
پاسخ:
آرایه مجموعهای از چند متغیر همنوع است که با یک نام مشترک و اندیس استفاده میشوند.
اندیس آرایهها از ۰ شروع میشود.
🔹 ۵. تابع چیست و چرا استفاده میشود؟
پاسخ:
تابع مجموعهای از دستورات است که یک کار مشخص انجام میدهد.
مزایا:
کاهش تکرار کد
افزایش خوانایی
اشکالیابی سادهتر
🔹 ۶. تفاوت break و continue چیست؟
پاسخ:
break → خروج کامل از حلقه
continue → پرش به تکرار بعدی حلقه
🔹 ۷. مقداردهی پیشفرض متغیرها چگونه است؟
پاسخ:
متغیرهای سراسری → صفر (0)
متغیرهای محلی → مقدار نامشخص (garbage)
🔹 ۸. اشکال کد زیر چیست؟
پاسخ:
اندیس آرایه از 0 تا 4 است ولی در این کد از 1 تا 5 استفاده شده.
✅ کد صحیح:
🔹 ۹. برنامه تشخیص عدد اول
🔹 ۱۰. تفاوت = و == چیست؟
پاسخ:
= → انتساب مقدار
== → مقایسه دو مقدار
🔹 ۱۱. فاکتوریل یک عدد با تابع
🔹 ۱۲. ورودی و خروجی در ++C
📌 نکته امتحانی مهم
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🔹 ۱. تفاوت 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
❤2
📌 جزوه خلاصه شب امتحان
مبانی برنامهنویسی با ++C
🔹 1. ساختار کلی برنامه در ++C
🔹 2. انواع دادههای مهم
نوع دادهحجم تقریبیint4 بایتfloat4 بایتdouble8 بایتchar1 بایت
🔹 3. عملگرها
ریاضی: + - * / %
مقایسهای: == != < > <= >=
منطقی: && || !
افزایش/کاهش: ++ --
📌 تفاوت مهم:
🔹 4. شرطها (if / else)
🔹 5. حلقهها (بسیار مهم)
🔸 for
🔸 while
🔸 do while
📌 تفاوت مهم: do while حداقل یکبار اجرا میشود.
🔹 6. دستورات کنترلی
break → خروج از حلقه
continue → رفتن به تکرار بعدی
return → خروج از تابع
🔹 7. آرایهها (پرتکرار)
📌 نکات مهم:
اندیس از 0 شروع میشود
آخرین اندیس = size - 1
🔹 8. رشتهها (string)
🔹 9. توابع
📌 مزایا:
کاهش تکرار
خوانایی بیشتر
استفاده مجدد
🔹 10. متغیرها
🔸 محلی
داخل تابع
مقدار اولیه نامشخص
🔸 سراسری
خارج از تابع
مقدار اولیه صفر
🔹 11. ارسال پارامتر
🔸 مقدار (Value)
🔸 مرجع (Reference)
🔹 12. ورودی و خروجی
🔹 13. برنامههای خیلی پرتکرار
✔ عدد اول
✔ فاکتوریل
✔ بزرگترین عضو آرایه
🔹 14. اشکالات رایج امتحانی ❌
استفاده از = بهجای ==
خروج از محدوده آرایه
فراموشکردن return 0;
استفاده از متغیر محلی بدون مقداردهی
🎯 جمعبندی طلایی شب امتحان
✔ حلقهها
✔ آرایه
✔ تابع
✔ شرطها
#flowgorithm
#فلوگوریتم
#الگوریتم #فلوچارت
برنامهنویسی را از اینجا شروع کنید👇
@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;
استفاده از متغیر محلی بدون مقداردهی
🎯 جمعبندی طلایی شب امتحان
اگر اینها را بلد باشی:
✔ حلقهها
✔ آرایه
✔ تابع
✔ شرطها
#flowgorithm
#فلوگوریتم
#الگوریتم #فلوچارت
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🙏1
✅ ۲۰ سؤال دامدار و پرتکرار اساتید درس مبانی برنامهنویسی++C همراه با پاسخ دقیق و نکته امتحانی آورده شده است. اینها دقیقاً همان جاهایی هستند که بیشترین اشتباه دانشجوها اتفاق میافتد.
🔥 ۲۰ سؤال دامدار ++C (با پاسخ)
---
1️⃣ خروجی کد زیر چیست؟
int i = 5;
cout << i++ + ++i;
پاسخ: 12
📌 توضیح:
i++ → 6
++i → 6
---
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
#flowgorithm
#فلوگوریتم #الگوریتم #فلوچارت
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🔥 ۲۰ سؤال دامدار ++C (با پاسخ)
---
1️⃣ خروجی کد زیر چیست؟
int i = 5;
cout << i++ + ++i;
پاسخ: 12
📌 توضیح:
i++ → 6
++i → 6
---
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
#flowgorithm
#فلوگوریتم #الگوریتم #فلوچارت
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤2🤔1
✅ ۳۰ سؤال تستی (چهارگزینهای) زبان برنامهنویسی پایتون در سطح متوسط تا پیشرفته بههمراه پاسخ صحیح آورده شده است.
سؤالات مفهومی، کدنویسی و رفتاری (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 است؟
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 است؟
A) حلقه
B) مدیریت منابع (file, lock)
C) مدیریت استثناء
D) شرط
✅ پاسخ: B
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤1🔥1
bubble_sort_highlighted.gif
64 KB
مرتبسازی حبابی (Bubble Sort) یک الگوریتم ساده برای مرتب کردن آرایه است.
🔹 ایدهٔ اصلی:
در هر مرحله، دو عنصرِ کنار هم با هم مقایسه میشوند و اگر ترتیبشان اشتباه باشد، جابهجا میشوند.
این کار آنقدر تکرار میشود تا آرایه کاملاً مرتب شود.
🔹 چرا «حبابی»؟
چون در هر دور، بزرگترین عنصر مثل حباب به انتهای آرایه میرود.
🔹 ویژگیها:
ساده و قابل فهم
مناسب برای آموزش مفاهیم اولیه
کارایی پایین برای دادههای بزرگ
🔹 پیچیدگی زمانی:
حالت معمول و بدترین حالت: O(n²)
اگر آرایه تقریباً مرتب باشد: بهتر عمل میکند
🔹 مثال کوتاه:
[7, 2, 5] → [2, 7, 5] → [2, 5, 7]
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🔹 ایدهٔ اصلی:
در هر مرحله، دو عنصرِ کنار هم با هم مقایسه میشوند و اگر ترتیبشان اشتباه باشد، جابهجا میشوند.
این کار آنقدر تکرار میشود تا آرایه کاملاً مرتب شود.
🔹 چرا «حبابی»؟
چون در هر دور، بزرگترین عنصر مثل حباب به انتهای آرایه میرود.
🔹 ویژگیها:
ساده و قابل فهم
مناسب برای آموزش مفاهیم اولیه
کارایی پایین برای دادههای بزرگ
🔹 پیچیدگی زمانی:
حالت معمول و بدترین حالت: O(n²)
اگر آرایه تقریباً مرتب باشد: بهتر عمل میکند
🔹 مثال کوتاه:
[7, 2, 5] → [2, 7, 5] → [2, 5, 7]
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤1👍1
✅ ۱۰ نمونه سؤال از مبانی برنامهنویسی، الگوریتم و فلوچارت (در سطح ترم اول دانشگاه) همراه با پاسخ کوتاه آورده شده است:
۱. الگوریتم چیست؟
پاسخ کوتاه:
مجموعهای از مراحل مرتب و مشخص برای حل یک مسئله که ورودی را گرفته و خروجی تولید میکند.
۲. سه ویژگی اصلی یک الگوریتم خوب را نام ببرید.
پاسخ کوتاه:
خاتمهپذیری
داشتن ورودی و خروجی مشخص
واضح و بدون ابهام بودن مراحل
۳. فلوچارت چیست؟
پاسخ کوتاه:
نمایش گرافیکی الگوریتم با استفاده از اشکال استاندارد مانند بیضی، مستطیل و لوزی.
۴. کاربرد شکل لوزی در فلوچارت چیست؟
پاسخ کوتاه:
برای نمایش شرط و تصمیمگیری (مانند if).
۵. الگوریتمی بنویسید که عددی را گرفته و زوج یا فرد بودن آن را مشخص کند.
پاسخ کوتاه:
شروع
دریافت عدد n
اگر n mod 2 = 0 → چاپ "زوج"
در غیر این صورت → چاپ "فرد"
پایان
۶. تفاوت حلقه for و while چیست؟
پاسخ کوتاه:
در for معمولاً تعداد تکرار مشخص است؛ در while تکرار وابسته به برقرار بودن شرط است.
۷. متغیر چیست؟
پاسخ کوتاه:
محلی در حافظه برای ذخیره داده که مقدار آن میتواند تغییر کند.
۸. خروجی الگوریتم زیر چیست؟
پاسخ کوتاه:
7
۹. الگوریتمی برای محاسبه مجموع اعداد 1 تا n بنویسید.
پاسخ کوتاه:
شروع
دریافت n
sum = 0
از i=1 تا n
sum = sum + i
چاپ sum
پایان
۱۰. تفاوت کامپایلر و مفسر چیست؟
پاسخ کوتاه:
کامپایلر کل برنامه را یکجا ترجمه میکند؛ مفسر خط به خط اجرا و ترجمه میکند.
برنامهنویسی را از اینجا شروع کنید👇
@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
❤1🔥1
✅ ۱۰ نمونه سؤال کمی پیشرفتهتر از مبانی برنامهنویسی، الگوریتم و فلوچارت همراه با پاسخ کوتاه:
۱. مرتبه زمانی (Time Complexity) الگوریتم زیر چیست؟
پاسخ کوتاه:
O(n²)
۲. خروجی الگوریتم زیر چیست؟
پاسخ کوتاه:
10
۳. الگوریتمی برای یافتن بزرگترین عدد در آرایهای با n عضو بنویسید.
پاسخ کوتاه:
max = اولین عضو
پیمایش از عضو دوم تا آخر
اگر عنصر فعلی > max → بهروزرسانی max
چاپ max
۴. تفاوت الگوریتم بازگشتی (Recursive) و تکراری (Iterative) چیست؟
پاسخ کوتاه:
در بازگشتی تابع خودش را فراخوانی میکند؛ در تکراری از حلقه استفاده میشود.
۵. شرط خاتمه در الگوریتم بازگشتی چه اهمیتی دارد؟
پاسخ کوتاه:
برای جلوگیری از اجرای بینهایت و ایجاد خطای Stack Overflow.
۶. مقدار خروجی تابع بازگشتی زیر چیست؟
پاسخ کوتاه:
24 (فاکتوریل 4)
۷. الگوریتمی برای تشخیص اول بودن یک عدد n بنویسید.
پاسخ کوتاه:
اگر n ≤ 1 → اول نیست
از i=2 تا √n
اگر n mod i = 0 → اول نیست
در غیر این صورت → اول است
۸. پیچیدگی زمانی جستجوی دودویی (Binary Search) چیست؟
پاسخ کوتاه:
O(log n)
۹. خروجی الگوریتم زیر چیست؟
پاسخ کوتاه:
1 3 5
۱۰. تفاوت آرایه و لیست پیوندی چیست؟
پاسخ کوتاه:
آرایه حافظه پیوسته دارد و دسترسی مستقیم سریع دارد؛ لیست پیوندی حافظه غیرپیوسته دارد و درج/حذف آسانتر است.
اگر بخواهی میتوانم یک نمونه آزمون کامل سخت با سطح پایانترم (حل مسئله ترکیبی + تحلیل مرتبه زمانی) هم طراحی کنم.
برنامهنویسی را از اینجا شروع کنید👇
@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
🔥2❤1
✅ 10 نمونه سوال پایان ترم مبانی برنامهنویسی با زبان C++ از کتاب جعفرنژاد قمی به همراه پاسخهای تشریحی کوتاه ارائه شده است:
▎سوال 1:
سوال: برنامهای بنویسید که مجموع اعداد صحیح از 1 تا N را محاسبه کند.
پاسخ:
این برنامه با استفاده از یک حلقه
---
▎سوال 2:
سوال: تابعی بنویسید که یک عدد صحیح را گرفته و بررسی کند که آیا این عدد اول است یا نه.
پاسخ:
این تابع با بررسی تقسیمپذیری عدد، تعیین میکند که آیا عدد اول است یا خیر.
---
▎سوال 3:
سوال: یک کلاس به نام
پاسخ:
کلاس
---
▎سوال 4:
سوال: برنامهای بنویسید که عناصر یک آرایه را معکوس کند.
پاسخ:
این برنامه با استفاده از تابع
---
▎سوال 5:
سوال: یک برنامه بنویسید که اعداد فرد و زوج را از 1 تا N جدا کند.
پاسخ:
برنامه اعداد فرد و زوج را با استفاده از دو حلقه جداگانه چاپ میکند.
---
▎سوال 6:
سوال: تابعی بنویسید که بزرگترین عدد را از میان سه عدد ورودی پیدا کند.
پاسخ:
این تابع با استفاده از تابع
---
▎سوال 7:
سوال: برنامهای بنویسید که فاکتوریل یک عدد را محاسبه کند.
پاسخ:
این برنامه از یک تابع بازگشتی برای محاسبه فاکتوریل استفاده میکند.
---
▎سوال 8:
سوال: یک برنامه بنویسید که رشتهای را دریافت کرده و تعداد حروف آن را شمارش کند.
پاسخ:
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
▎سوال 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
❤2
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;
}
این برنامه با استفاده از یک حلقه، اعداد فیبوناچی را تولید و چاپ میکند.
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤2🔥2
✅دانستنی های برنامه نویسی
دیجیکالا
یک پلتفرم بسیار بزرگ و پیچیده است، بنابراین تنها با یک زبان نوشته نشده است. این شرکت از مجموعهای از تکنولوژیها (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
دیجیکالا
یک پلتفرم بسیار بزرگ و پیچیده است، بنابراین تنها با یک زبان نوشته نشده است. این شرکت از مجموعهای از تکنولوژیها (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
🤯2
Forwarded from الگوریتم و فلوچارت
📚 منابع بسیار عالی برای کسب درآمد از طریق ایمیل مارکتینگ
[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
[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
Forwarded from الگوریتم و فلوچارت
📚 بهترین منابع یاد گیری برنامهنویسی و توسعه وب
[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] 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
🚀 ۱۰ تا از بهترین منابع یوتیوب برای یادگیری برنامهنویسی (از صفر تا حرفهای)اگه دنبال اینی که برنامهنویسی رو اصولی و درست یاد بگیری، این ۱۰ تا کانال یوتیوب واقعاً جزو بهترینها هستن! 🎯
(هم برای مبتدیها، هم حرفهایها 💻✨)
---
🥇 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👌1
✅ برای تبدیل شدن به یک برنامهنویس، مراحل زیر میتوانند به شما کمک کنند:
1. انتخاب زبان برنامهنویسی مناسب
- زبانهای مبتدی: اگر تازه شروع کردهاید، زبانهایی مانند Python، JavaScript یا Ruby گزینههای خوبی هستند.
- زبانهای تخصصی: اگر هدف خاصی دارید (مثلاً توسعه وب، اپلیکیشنهای موبایل، یا هوش مصنوعی)، زبانهای مناسب آن حوزه را انتخاب کنید. مثلاً:
- توسعه وب: HTML/CSS، JavaScript، PHP
- اپلیکیشنهای موبایل: Swift (برای iOS)، Kotlin (برای اندروید)
- هوش مصنوعی: Python، R
2. یادگیری مفاهیم پایه
- متغیرها و انواع دادهها
- ساختارهای کنترلی (شرطها، حلقهها)
- توابع و کلاسها
- الگوریتمها و ساختار دادهها (مثل لیستها، صفها، درختها)
3. تمرین و کدنویسی
- پروژههای کوچک: شروع به ساخت پروژههای ساده کنید (مثلاً ماشین حساب، لیست کارها).
- حل مسائل: از پلتفرمهایی مانند LeetCode، HackerRank یا Codewars استفاده کنید.
4. یادگیری ابزارها و فناوریها
- ویرایشگرهای کد: مانند VS Code، Sublime Text یا PyCharm.
- سیستمهای کنترل نسخه: مانند Git و GitHub.
- پایگاه داده: یادگیری مفاهیم پایهای مانند SQL و NoSQL.
5. یادگیری مستمر
- کتابها: کتابهای معروف برنامهنویسی را مطالعه کنید.
- دورههای آنلاین: از پلتفرمهایی مانند Coursera، Udemy، edX یا Khan Academy استفاده کنید.
- مقالات و وبلاگها: از منابع آنلاین مانند Medium، Stack Overflow یا Dev.to استفاده کنید.
6. ساخت پروژههای واقعی
- پورتفولیو: پروژههای خود را در GitHub یا وبسایت شخصی نمایش دهید.
- همکاری در پروژههای متنباز: مشارکت در پروژههای متنباز به شما تجربه عملی میدهد.
7. یادگیری کار تیمی و مهارتهای نرم
- همکاری با دیگران: یاد بگیرید چگونه با دیگر برنامهنویسان همکاری کنید.
- حل مسئله: مهارتهای حل مسئله و تفکر منطقی خود را تقویت کنید.
8. یافتن شغل یا فرصتهای فریلنسری
- رزومهسازی: رزومهای حرفهای بسازید و مهارتهای خود را بهطور واضح بیان کنید.
- شبکهسازی: در رویدادها و کنفرانسهای برنامهنویسی شرکت کنید.
- درخواست شغل: از پلتفرمهایی مانند LinkedIn، Indeed یا Glassdoor استفاده کنید.
9. بهروز ماندن
- فناوریهای جدید: همیشه در حال یادگیری فناوریهای جدید باشید.
- اجتماعات برنامهنویسی: در انجمنها و گروههای برنامهنویسی عضو شوید.
با پشتکار و تمرین مداوم، میتوانید به یک برنامهنویس حرفهای تبدیل شوید. موفق باشید! 🚀
@flowchart_algorithm
1. انتخاب زبان برنامهنویسی مناسب
- زبانهای مبتدی: اگر تازه شروع کردهاید، زبانهایی مانند Python، JavaScript یا Ruby گزینههای خوبی هستند.
- زبانهای تخصصی: اگر هدف خاصی دارید (مثلاً توسعه وب، اپلیکیشنهای موبایل، یا هوش مصنوعی)، زبانهای مناسب آن حوزه را انتخاب کنید. مثلاً:
- توسعه وب: HTML/CSS، JavaScript، PHP
- اپلیکیشنهای موبایل: Swift (برای iOS)، Kotlin (برای اندروید)
- هوش مصنوعی: Python، R
2. یادگیری مفاهیم پایه
- متغیرها و انواع دادهها
- ساختارهای کنترلی (شرطها، حلقهها)
- توابع و کلاسها
- الگوریتمها و ساختار دادهها (مثل لیستها، صفها، درختها)
3. تمرین و کدنویسی
- پروژههای کوچک: شروع به ساخت پروژههای ساده کنید (مثلاً ماشین حساب، لیست کارها).
- حل مسائل: از پلتفرمهایی مانند LeetCode، HackerRank یا Codewars استفاده کنید.
4. یادگیری ابزارها و فناوریها
- ویرایشگرهای کد: مانند VS Code، Sublime Text یا PyCharm.
- سیستمهای کنترل نسخه: مانند Git و GitHub.
- پایگاه داده: یادگیری مفاهیم پایهای مانند SQL و NoSQL.
5. یادگیری مستمر
- کتابها: کتابهای معروف برنامهنویسی را مطالعه کنید.
- دورههای آنلاین: از پلتفرمهایی مانند Coursera، Udemy، edX یا Khan Academy استفاده کنید.
- مقالات و وبلاگها: از منابع آنلاین مانند Medium، Stack Overflow یا Dev.to استفاده کنید.
6. ساخت پروژههای واقعی
- پورتفولیو: پروژههای خود را در GitHub یا وبسایت شخصی نمایش دهید.
- همکاری در پروژههای متنباز: مشارکت در پروژههای متنباز به شما تجربه عملی میدهد.
7. یادگیری کار تیمی و مهارتهای نرم
- همکاری با دیگران: یاد بگیرید چگونه با دیگر برنامهنویسان همکاری کنید.
- حل مسئله: مهارتهای حل مسئله و تفکر منطقی خود را تقویت کنید.
8. یافتن شغل یا فرصتهای فریلنسری
- رزومهسازی: رزومهای حرفهای بسازید و مهارتهای خود را بهطور واضح بیان کنید.
- شبکهسازی: در رویدادها و کنفرانسهای برنامهنویسی شرکت کنید.
- درخواست شغل: از پلتفرمهایی مانند LinkedIn، Indeed یا Glassdoor استفاده کنید.
9. بهروز ماندن
- فناوریهای جدید: همیشه در حال یادگیری فناوریهای جدید باشید.
- اجتماعات برنامهنویسی: در انجمنها و گروههای برنامهنویسی عضو شوید.
با پشتکار و تمرین مداوم، میتوانید به یک برنامهنویس حرفهای تبدیل شوید. موفق باشید! 🚀
@flowchart_algorithm
👍2❤1
✅ دانلود جزوه آموزشی
الگوریتم و فلوچارت
☄به همراه بیش از 200 سوال و جواب حل شده
☄آموزش زبان برنامه نویسی ++C
☄منبع بسیار عالی برای مبتدیان
☄قالب فایل : PDF
☄تعداد صفحات : 395 صفحه
☄توضیحات کامل حلقه های for, while
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
الگوریتم و فلوچارت
☄به همراه بیش از 200 سوال و جواب حل شده
☄آموزش زبان برنامه نویسی ++C
☄منبع بسیار عالی برای مبتدیان
☄قالب فایل : PDF
☄تعداد صفحات : 395 صفحه
☄توضیحات کامل حلقه های for, while
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
🔥1🙏1
آموزش مبانی کامپیوتر و الگوریتم نویسی ( فلوچارت )، دکتر چوپانی
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
برنامهنویسی را از اینجا شروع کنید👇
@flowchart_algorithm
❤2