Tp hunters cpp
635 subscribers
69 photos
41 videos
7 files
12 links
📌 چنل متمرکز روی زبان ++C به زبان فارسی

آموزش مفهومی همراه با چالش های جذاب و کاربردی

رفع اشکال در گروه
@Tphunterscpp_Group

ارتباط با ادمین‌ها
@h3li0p4us3_moharami
@systemchemist

زیر مجموعه تیم استارتاپی تی‌پی‌هانترز
@tphunters
Download Telegram
#چالش
برنامه‌ای بنویسید که عددی را از ورودی گرفته و جمع نهایی آن را، تا وقتی یک رقمی شود، در خروجی نمایش دهد.
(مثلاً 34 را به عنوان ورودی گرفته و 7 را در خروجی نمایش دهد)
🟥 درجه سختی: دشوار
🟢 لطفا کد، سوالات و نظرات خود را برای ما کامنت کنید.
Tp hunters cpp
#چالش برنامه‌ای بنویسید که عددی را از ورودی گرفته و جمع نهایی آن را، تا وقتی یک رقمی شود، در خروجی نمایش دهد. (مثلاً 34 را به عنوان ورودی گرفته و 7 را در خروجی نمایش دهد) 🟥 درجه سختی: دشوار 🟢 لطفا کد، سوالات و نظرات خود را برای ما کامنت کنید.
🧠 #کد_چالش
حل توسط جناب: s1n4m
#include <iostream>

int digitSum(int n) { return (n < 10) ? n : digitSum(n % 10 + n / 10); }

int main() {

int number{};
std::cin >> number;
std::cout << digitSum(number) << "\n";

return 0;
}

🟢لطفا سوالات، کد و نظرات خود را برای ما کامنت کنید
💬 #شرح_کد
توضیحات توسط : s1n4m
تابع digitSum کاری که انجام میده اینه که اگر عدد وارد شده کوچکتر از ۱۰ باشه همونو بر میگردونه ولی اگر بزرگتر باشه به صورت recursive اونقدر تکرار میشه تا حاصل نهایی یک عدد کمتر از ۱۰ بشه
سازوکارش به صورت زیر هستش:
Input: 5237

Procedure:
5237 -> 523 + 7 = 530
530 -> 53 + 0 = 53
53 -> 5+3 = 8

Output: 8
مثال بالا برای عدد ۵۲۳۷ نوشته شده و راحت میشه دنبال کرد.
این کد رو میشه به طور خطی با یک حلقه while هم نوشت
std::cin >> n;
while (n >= 10)
n = n / 10 + n % 10;
std::cout << n << "\n";
به طور کلی روشش اینه که یکان عدد رو جدا کنه و با عدد جدید جمع کنه
🟢لطفا سوالات،‌نظرات و کد های خود را برای ما کامنت کنید.
#نکته
در ریاضیات گسسته باقی مانده همنهشتی یا همان(mod) بر عدد 9 به ما مجموع ارقام را میدهد مثال =>
17 % 9
برابر میشه با 8 که مجموع ارقام 1 و 7 هست
از این نکته میتونید تو برخی سوالات خاص در برنامه نویسی استفاده کنید(مثل سوال قبل).
🟢لطفا سوالات، کد و نظرات خود را برای ما کامنت کنید.
#نکته
آرگومان هایی با مقدار پیشفرض باید از سمت راست تابع مقدار دهی شوند در غیر این طورت برنامه دارای خطا خواهد بود.
نمونه کد‌ اشتباه=>
Void draw(int a=0, int b);
نمونه کد درست=>
Void draw(int a, int b=0);
🟢لطفا سوالات، کد و نظرات خود رابرای ما کامنت کنید.
💬 #چالش

🟥 نکته : این سوال بیشتر جنبه آموزش داره تا چالشی پس لطفا دقت کنید

برنامه ای بنویسید که تعدادی عدد از کاربر دریافت کرده و به صورت
سورت شده عدد هارو چاپ کند

🟥 نکات مهم برای نوشتن این برنامه :
1- حتما برای لیست عدد ها باید از وکتور استفاده کنید
2- برای تعریف وکتور لطفا از تابع typedef برای راحتی کار استفاده کنید
3- عدد های ورودی تعداد مشخص ندارد و باید کاربر مشخص کند چندتا عدد میخواهد وارد کند

🟥درجه سختی: آسان
🟢لطفا سوالات, کد و نظرات خود را برای ما کامنت یا داخل گروه ارسال کنید
Tp hunters cpp
💬 #چالش 🟥 نکته : این سوال بیشتر جنبه آموزش داره تا چالشی پس لطفا دقت کنید برنامه ای بنویسید که تعدادی عدد از کاربر دریافت کرده و به صورت سورت شده عدد هارو چاپ کند 🟥 نکات مهم برای نوشتن این برنامه : 1- حتما برای لیست عدد ها باید از وکتور استفاده کنید…
🧠 #کد_چالش
🔴 لطفا این چالش رو تمرین کنید که بسیار مهم و کاربردی است

#include <iostream>
#include <vector>
using namespace std;
typedef vector<int> Number;
void sort(Number& sort_number){
int hold;
for(int r = 0;r < sort_number.size() - 1;r++){
for(int j = 0; j < sort_number.size() - 1;j++){
if(sort_number[j] > sort_number[j + 1]){
hold = sort_number[j];
sort_number[j] = sort_number[j + 1];
sort_number[j + 1] = hold;
}
}
}
}
Number input(int num){
cout << endl << endl;
Number number;
for(int i = 0;i < num;i++){
int tmp;
cout << "Enter number " << i + 1 << " : ";
cin >> tmp;
number.push_back(tmp);
}
return number;
}
void print(Number num){
for (int i=0; i <num.size(); i++) {
cout<<num[i]<<" ";

}
cout<<endl;
}
int main(){
int number;
cout << "Enter number : ";
cin >> number;
Number input_sort = input(number);
print(input_sort);
sort(input_sort);
print(input_sort);

}

🟢لطفا سوالات, نظرات و کدهای خود را برای ما کامنت کنید
💬 #چالش کد داده شده چه مشکلی دارد؟

_برنامه ای بنویسید که یک عدد صحیح از ورودی دریافت کند و هر رقم را ب تعداد آن رقم چاپ کند

_ورودی نمونه: 703250
_خروجی مورد نظر سوال:
7: 7777777
0:
3: 333
2: 22
5: 55555
0:

_خروجی بدست آمده:
7: 410
0: 410
3: 563
2: 663
5: 928
0: 928

(راهنمایی: int x= (int)character - 48 برای تبدیل string به int بکار میرود)
🔴درجه سختی: متوسط
🟢لطفا سوالات نظرات و کد های خود را برای ما کامنت کنید.
🎙درود خدمت دوستان عزیز
آموزش cpp مقدماتی در چنل ما به پایان رسیده که از قسمت 1 تا 12 میباشد که با سرچ کردن کلمه قسمت یا این هشتگ
#سی_پلاس_ساده_و_خوشمزه
میتوانید به فیلم ها دسترسی پیدا کنید اما در ادامه سری فیلم های آموزشی 🟢رایگان ما که از این هفته شروع خواهد شد به ادامه قسمت های قبل و شروع تخصصی STL و ساده سازی برنامه ها خواهد بود که ساخت برنامه هارا بسیار راحت میکند ، امیدوارم که نهایت استفاده رو ببرید.( در صورت حمایت بسیار پلن های آموزشی رایگان دیگر خواهیم داشت که برای اولین بار به زبان فارسی و استاندارد ارائه خواهند شد)
موفق باشید🌹
Media is too big
VIEW IN TELEGRAM
#سی_پلاس_ساده_و_خوشمزه
#پیشرفته
قسمت 13: مفاهیم پایه شی گرایی ، OOAD , UML و چند مثال مفهومی
مدرس: محمدصالح حق محمدلو
🟢لطفا سوالات، کد و نظرات خود را برای ما کامنت کنید.
🟢 #مهم 🟢
یک سری خبر های خوب دارم که داخل چنل آروم آروم براتون قرار میدم وقتی که همینطوری ممبر ها بیان بالا، یک سری پلن های درامد زایی داخل همین چنل و مسابقات و تشویق ها....
اولیش این هست که از این به بعد هر ۳ شنبه شب ساعت ۹ ویس چت داخل چنل یا گروه عمومی ما باز میشه
@tphunterscpp_group
و دوستان میتونن راجب هر موضوعی مربوط به کامپیوتر تجربه کاری یا c++ و هرچیز دیگه باهم دیگه صحبت کنن و تجربه هاشون رو به اشتراک بزارن
موفق باشید🌹
Live stream started
💬 #چالش
برنامه ای بنویسید که شیر آبی بطور اتوماتیک پس از a ثانیه یک بطری آب 2.5 لیتری، سپس در ثانیه a+b یک بطری 1 لیتری، و به همین ترتیب پس از a+b+a+... ثانیه، L تعداد بطری را پر کند.

انجام این عملیات چند ثانیه به درازا می انجامد؟
(راهنمایی: مدت زمان پر شدن هر بطری ناچیز است)

🟥درجه سختی: آسان
🟢لطفا کدها , سوالات و نظرات خود را برای ما کامنت کنید.
Tp hunters cpp
💬 #چالش برنامه ای بنویسید که شیر آبی بطور اتوماتیک پس از a ثانیه یک بطری آب 2.5 لیتری، سپس در ثانیه a+b یک بطری 1 لیتری، و به همین ترتیب پس از a+b+a+... ثانیه، L تعداد بطری را پر کند. انجام این عملیات چند ثانیه به درازا می انجامد؟ (راهنمایی: مدت زمان پر…
🧠 #کد_چالش
#include <iostream>
using namespace std;
int main(){

int a, b, l, x=0, y=0;
cin>>a>>b>>l;

for(int i=1; i<=l; i++){

if(i%2!=0){
x+=a;
}

else if(i%2==0){
y+=b;
}
}
cout<<x+y;
return 0;
}
🟢لطفا سوالات، کدها و نظرات خود را برای ما کامنت، یا داخل گروه ارسال کنید.
Tp hunters cpp
💬 #چالش برنامه ای بنویسید که شیر آبی بطور اتوماتیک پس از a ثانیه یک بطری آب 2.5 لیتری، سپس در ثانیه a+b یک بطری 1 لیتری، و به همین ترتیب پس از a+b+a+... ثانیه، L تعداد بطری را پر کند. انجام این عملیات چند ثانیه به درازا می انجامد؟ (راهنمایی: مدت زمان پر…
💬 #شرح_کد
دو متغیر a و b به ترتیب برای گرفتن مدت زمانهای اولیه و ثانویه تعریف میشن؛ ومتغیر L تعداد دفعات باز شدن شیر آب یا تعداد بطری های پر شده رو نشون میده.

سپس خودمون دو متغیر x و y رو برای ذخیره مقدار توی اونا، با پیش فرض 0 (اگه x و y رو بصورت پیشفرض 0 مقداردهی نکنیم نتیجه محاسبات ریاضی صحیح نمیشه) تعریف میکنیم.
_________________________________

از حلقه for برای انجام عملیات جمع استفاده میکنیم چراکه به تعداد L بار باید زمانهای a و b رو باهم جمع کنیم.

توی حلقه برای هر یک از زمانهای a و b یک شرط جدا تعریف میکنیم.

الزاما تو این کد شرط اولو برای a در نظر میگیریم؛ چون تو این مسئله باید باتوجه به تعداد بطری های پر شده عمل کنیم(یعنی اگه تعداد بطری های پر شده زوج باشه فرقی نمیکنه کدوم شرط برا کدوم متغیر زمانی در نظر گرفته بشه چون تعداد پیشامدهای i%2 != 0 با i%2==0 برابره اما برای حالت فرد متفاوته...)
_________________________________

در حالت فرد بودن تعداد بطری های پر شده؛ تعداد دفعات پیشامد i%2 != 0 یکی بیشتر از i%2==0 هست. پس اولویت تعریف شرط اول در این کد برای a هست؛ که تو این شرط، x=+a عملیات x=x+a را انجام میده و حاصل این عملیات تو x ذخیره میشه؛ و برای انجام دوباره این عملیات از مقدار جدید x بهره گرفته میشه.
شرط دوم نیز به همین منوال اجرا میشه.
و در نهایت مقدار نهایی حاصل از جمع دو متغیر x و y توی خروجی نمایش داده میشه.

🟢لطفا سوالات، کدها و نظرات خود را برای ما کامنت، یا داخل گروه ارسال کنید.
یک فرم ساده و زیبای ساخته شده تحت ویندوز توسط cpp
Media is too big
VIEW IN TELEGRAM
#سی_پلاس_ساده_و_خوشمزه
#پیشرفته
قسمت 14: تعریف کلاس، شی و نمونه سازی ، سطح دسترسی و access modifier ها
مدرس: محمدصالح حق محمدلو
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید
#نکته
در مهندسی نرم افزار به عنوان یه قانون عضو های داده ای (data members ) یا همون متغییر های خودمونو و صفات خودمونو بهتره به صورت private و عضو های تابعی(member functions) یا همون توابع و رفتار های خودمونو به صورت public تعریف کنیم.
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
💬 #چالش
برنامه ای بنویسید که دو عدد a و b را از کاربر دریافت کند و اعداد اول بین آنهارا بصورت نزولی چاپ کند. اعداد خروجی را با کاما از یکدیگر جدا کنید.

🟥درجه سختی: متوسط
🟢لطفا کد، سوالات و نظرات خود را برای ما کامنت یا داخل گروه ارسال کنید.