پرسش و پاسخ در زبانهای برنامه نویسی C

efhc

عضو
با سلام
دوستان به یک برنامه برای جداسازی زیر کلمات یک متن نیاز دارم . مثلا کلمه " مدرسه " دارای سه زیر کلمه مد ، ر ، سه است می خواهم برنامه ای باشد که این زیر کلمات را در یک متن جدا کند

با تشکر از کمک شما
لطفا کمکم کنید بلد نیستم:cry::crying2:


سلام ;);););););)

بهتر نيست منظورت رو واضح تر برامون بگي؟؟؟؟؟ ;);););)
 

ITDeveloper

عضو جدید
کاربر ممتاز
فکر نکنم منظور دوستمون این باشه !
ایشون میخواد کلمه ای مثل "مینا" رو تبدیل کنه به "مین" + "ا" !
که به این سادگی ها نیست !

سلام
دوست عزیز اگر اشتباه نکم این الگوریتمتون برای مثلا کلمه ای مثل تلوزیون کار نمی کنه یا داربست کار نکنه!
اگر اشتباه نکنم
 

A.S.Roma

عضو جدید
کاربر ممتاز
سلام
دوست عزیز اگر اشتباه نکم این الگوریتمتون برای مثلا کلمه ای مثل تلوزیون کار نمی کنه یا داربست کار نکنه!
اگر اشتباه نکنم
من الگوریتمی ارائه ندادم !
Starter کلمه مدرسه رو مثال زدن که دقیقا" مثل " بخش کردن " در دوران دبستان تجزیه شده بود !
 

Arash_Sn

عضو جدید
ممنون دوست عزيز
اما سئوال؟
1. سرعت برنامه در چه حد هست؟ منظورم اينه که وقتی از dll استفاده ميکنی در کارهای با پردازش بالا سرعت خوبی دارد؟

در این مورد مقایسه ای ندارم، اما بطور کلی کدی که توسط MATLAB ساخته می شه از کدی که توسط کامپایلر C ایجاد می شود در محاسبات ریاضی سریعتر میباشد. علت این موضوع هم بهینه سازی کد های برنامه برای اجرای سریع هستش.

البته بحث راجع به ایجاد کدهای سریع بحث مفصلی است که از حوصله این تاپیک خارجه ولی بطور خلاصه اگر برای شما سرعت اجرای برنامه بسیار مهم هستش بهتره که از کدهای مدیریت نشده Unmanaged Code استفاده کنید و بدلیلی که خود شما بهتر از بنده به آن واقفید برنامه هایی که بر روی لایه Virtual Machine اجرا میشوند ( مانند #C و Java) از برنامه هائی که مستقیما بر روی سیستم اجرا میشوند حدوداً 40 تا 70 درصد (بسته به نوع کد تولید شده) کندتر خواهند بود.


راه حل شما اگه درست متوجه شده باشم بايد پروژه ای ساخته بشه و بعد از dll آن استفاده شه؟! چگونه میشه کل توابع و امکانات مثلا بخش پردازش تصوير را در سی شارپ استفاده کرد و پروژه رو کاملا اونجا نوشت؟
پاسخ سوال شما در قسمت اول سوال شما قرار داشت یعنی شما باید ابتدا یک پروژه جدید در MATLAB بسازید و در آن توابع مورد نظر خود بطور مثال پردازش تصویر و یا دریافت تصویر را صدا کنید و در انتها لایه ارتباطی با برنامه C را ایجاد کنید (این قسمت بسیار مهم است) و پس از آن با کمک کامپایلر خروجی dll برنامه خود را بگیرید.

امیدوارم کمک کرده باشه



//
 

monrose

عضو جدید
کاربر ممتاز
میشه یکم واضحتر توضیح بدی... توی چه محیطی باشه... فارسی باشه؟!
در ضمن یه سواله دیگه... فقط میخوای بخش هاشو جدا کنه؟ یا تک تکه حروف رو...
 

Arash_Sn

عضو جدید
بخش کردن لغات

بخش کردن لغات

جدا سازی صدایی یا به اصطلاح بخش کردن لغات در نوشتار فارسی ممکن نیست یعنی نمیتوان الگوریتمی نوشت که بتواند وقفه های صدایی را در لغتی که با حروف فارسی نوشته شده اند تشخیص دهد. علت این موضوع اینه که وقتی شما با حروف فارسی مینویسید موقعیت صدا با علامت و یا حروفی مشخص نمیشوند ( مانند عربی و یا انگلیسی) و به همین دلیل میتوان لغات فارسی را با تلفظهای گوناگون خواند. اما اگر از علائم صدائی ( ً ٌ ٍ َ ُ ّ ) در نوشتن لغت استفاده کنید (مانند عربی) آنگاه میتوانید الگوریتمی داشته باشید که این تجزیه را انجام دهد. و در روش دیگر شما میتوانید با ساختن یک دیکشنری این کار را برای نوشتار فارسی نیز انجام دهید، که احتمالاً این مد نظر نیست.



//
 

kasra7447

عضو جدید
درخواست کمک

درخواست کمک

برای تبهر تو برنامه نویسیcچه کار کنم لازم بدونید که هیچ زمینه قبلی ندارم ولی این ترم میخوام ازش نمره عالی بگیرم خیلی ممنون
 

Erfan_K

عضو جدید
کاربر ممتاز
برای تبهر تو برنامه نویسیcچه کار کنم لازم بدونید که هیچ زمینه قبلی ندارم ولی این ترم میخوام ازش نمره عالی بگیرم خیلی ممنون
هرروز حداقل چهار ساعت پای کامپیوتر بشین و کد بزن .
از ساده ترین مسائل مثل جمع دو تا عدد تا به بالا.
ولی مهم نشستن هرروز پشت کامپیوتر و کامپایلر هستش.
اول باید مثال های حل شده رو عینا تایپ کنی تا رسم کد زدن رو یاد بگیری و بعد از اون رو یه سوال آسون تر فکر کنی و حلش کنی و بنویسیش و اررور هاش رو بگیری . نکته مهم حوصله داشتن هستش.
شاید توی یه روز یا بیشتر حتی نتونی یه برنامه درست بنویسی که حتی اجرا نشه. بعدش شاید جواب درست نده . ولی یادت باشه که باید حوصله داشته باشی و شونه خالی نکنی.
بارها شده من پشت کامپیوتر یه ریز عرق میریختم و لی بلند نمی شدم. فقط واسه اینکه تا جایی که میشه یعنی اولین موفقیت اونو درستش کنم .
خیلی و شدیدا فراره و باید هررزوز حداقل چهارساعت وقت بذاری.
زمانی هم که دوره ی مبانی تموم شد باید تو پیشرفته تو نت هم سرچ کنی. ببینی که آموزشاهی دیگه چه جوریه . و ایده های برنامه نویسی نو رو یاد بگیری. و حتی خیلی از مباحث رو از نت یاد بگیری. اضافه برچیزایی که تو کلاس یاد میگری. بهتر اینه که این کار رو تو دوره ی مبانی اجرا نکنی. تو مبانی بهتره تو مسیر یه استاد خوب حرکت کنی
در آخر هم باید در هر ترم مخصوصا پیشرفته با یه پروژه جدی chalenge داشته باشی. خیلی مهمه که با یه پروژه دست و پنجه نرم کنی. دقیقا عین یه میدان مبارزه میمونه که همه ی توانایی هایی رو که بدست آوردی توش به امتحان میذاری و محک میزنی.
از تجربه ی من این رو داشته باش که این کار رو روی زبونی پیاده کن که عاقبت کاری یا حرفه ای داشته باشه. اگه بتونی از اول با سی شارپ کار کنی راه برات بازتره. حداقل تو ایران.
وگرنه زبون سی پلاس پلاس هم خیلی بزرگ و خوبه اگه شدید بتونی خودتو پیشرفت بدی و با ادیشن های جدیدش کار کنی و آشنا بشی. وگرنه با توربو برلند کار کردن شما رو به جایی نمی رسونه
موفق باشی
 

imannasa2000

عضو جدید
کاربر ممتاز
برای تبهر تو برنامه نویسیcچه کار کنم لازم بدونید که هیچ زمینه قبلی ندارم ولی این ترم میخوام ازش نمره عالی بگیرم خیلی ممنون
درست مثل زبان انگلیسی باید فقط تمرین تمرین تمرین کنی دوست گرامی...از برنامه های ساده هم شروع کن مثا جمع 2 عدد یا تفریق و....
بنده یک کتاب به زبان اصلی که در دانشگاه آکسفورد هم تدریس میشه برایتان می گزارم بسیار مفید هست...
بنده از این کتاب استفاده میکنم
البته لازم میدونم این رو هم عرض کنم که زبان c دیگر مرده و باید شما حتما ++C رو هم برای یک برنامه نویس حرفه ای شدن یاد بگیرید
 

noirgalaxy

عضو جدید
فکر نکنم منظور دوستمون این باشه !
ایشون میخواد کلمه ای مثل "مینا" رو تبدیل کنه به "مین" + "ا" !
که به این سادگی ها نیست !
شاید درست متوجه نشدم اما برای جدا کردن زیر کلمه ها فکر کنم این روش مفید باشه که یکی از قسمت های برنامه رو اینجا نوشتم البته خیلی مختصر و فقط برای رسوندن منظورم
int a;
char c;
string b;
for(;;)
{
cin >> c;
a=c;
for(i=1;i<10;i++)
{
if(a==d)
cout<< " ";
}
}
و البته برای جدا کردن بخش های یک کلمه هم یه کارهایی رو میشه کرد مثلا" اول کلمه هارو به دو مجموعه صامت و مصوت تقسیم کرد و هر حرف صامت هم اعراب مناسب رو گذاشت که برای اعراب هم باید یه منبع مرجع برای لغات(رفرنس) داشته باشیم و بعد از تهیه اینها با نوشتن توابعی به بخش ها رسید (مثلا" اگه آخرش به ه برسه سه تیکه آخر یه بخشه)
 

diba_52

عضو جدید
سلام

خسته نباشید . در اکسل 2033 کارنامه ای طراحی کردم در قسمتی بچه ها بر اساس معدل رتبه بندی می شوند مثلامن توی 40نفر رتبه ی اول شدم در قسمت رتبه بندی اسم من و معدلم بطور خودکار بالا می آید .سوالم اینه که چه طوری عکس خودم هم بالا بیاد. توی عکس مندم کمک کنید .من مبتدی هستم. لطفا طریق برنامه نویشو بگین یه کمک اساسی بشه دوستان دارم خواهش می کنم.
سلام اینکه کاری نداره بهتره برای سلول مورد نظر یک لینک درست کنی!
موفق باشی:gol:
 

delaram pari

عضو جدید
لطفا سریع کمکم کنید

لطفا سریع کمکم کنید

سلام
برنامه ماکزیمم n عدد بدون استفاده از حلقه ها رو می خواستم .
لطفا سریع کمکم کنید
فقط امروز رو مهلت دارم
 

MJmoonwalk

عضو جدید
یک متغیر به نام max و با مقدار 0 تعریف کن.
و با هر با دریافت عدد از ورودی مقدار max رو با عدد ورودی مقایسه کن اگه بزرگتر بود بذارش تو max...
 

m00nlight

عضو جدید
یک متغیر به نام max و با مقدار 0 تعریف کن.
و با هر با دریافت عدد از ورودی مقدار max رو با عدد ورودی مقایسه کن اگه بزرگتر بود بذارش تو max...

میشه بگی چجوری؟ اینکه بازم حلقه میخاد... for رو میگی حتما دیگه...مگه نه؟!!!

int max
int n , i
max=0
for (i=1 to n)

if n>max then
max=n
else
i=i+1

این حلقه داره جیگگر....ایشون بدون حلقشو میخاستن​

 

m00nlight

عضو جدید
میگم نمیشه sort بکنی بعد براساس نوع سورتت ماکزیممو پیدا کنی؟؟؟؟؟؟
 

A.S.Roma

عضو جدید
کاربر ممتاز
این یک نمونه برنامه :
کد:
#include <stdio.h>
#include <conio.h>


void FindMax(int x[],int len,int &max);

void main()
{
    int x[] = {30,5,10,3,4,25};
    int max = 0;
    clrscr();
    FindMax(x,6,max);
    printf("Max = %d",max);
    getch();
}



void FindMax(int x[],int len,int &max)
{
    if(len > 0)
    {
        if(x[len-1] > max)
            max = x[len-1];
        FindMax(x,len-1,max);
    }
    else
        return;
}
 

delaram pari

عضو جدید
a.s.roma عزیز از شما بسیار سپاس گذارم .
منم از این روش برنامه نویسی استفاده کردم اما قبول نکردند
باید از یک فرمول ریاضی استفاد کنیم
 

mandarari

عضو جدید
سوال در مورد زبان سی

سوال در مورد زبان سی

1-برنامه ای بنویسید که یک عدد بخواند و اولین زوج دو قلوی بزرگتر از ان را چاپ کند؟؟
 

A.S.Roma

عضو جدید
کاربر ممتاز
شما که برنامه حاضری می خواهید حداقل یکم توضیح بدید برنامتون باید چکار کنه !؟
زوج دوقلو !؟
 

sabahat

عضو جدید
کاربر ممتاز
1-برنامه ای بنویسید که یک عدد بخواند و اولین زوج دو قلوی بزرگتر از ان را چاپ کند؟؟


سلام دوست عزیز..

اینجا برنامه نمی نویسند شما باید شروع کنی بعد سوالاتو بپرسی...

لطف کن بیشتر توضیح بده..

موفق باشی:gol:
 

123شسی

عضو جدید
جمع در ++c

جمع در ++c

سلام
میخوام یه برنامه با ++c بنویسم که با عملگر جمع دو رشته رو یه هم الصاق کنه
با سربار گذاری
 
کمک

کمک

من یک پروژه برای برنامه نویسی پیشرفته میخوام آماده کنم لطفا اگر کسی میتونه منو کمک کنه ممنون:confused:
پروژه اینه:
با استفاده از مفاهیم کلاس و شیئ گرایی برنامه ای بنویسید که تعداد گره های یک درخت دودویی و فرزندان آن را دریافت کرده و درخت را بسازد .:)
 

ITDeveloper

عضو جدید
کاربر ممتاز
سلام
هم می تونی از کلاس های خود .net استفاده کنی و هم می تونی از تعریف کلاس لیست پیوندی رو پیاده سازی کنی

بعدش با یک الگوریتم ساده بازگشتی می تونی پیدا کنیش
در ضمن سعی نکن دنبال اصل برنامه باشی
موفق باشی
 

A.S.Roma

عضو جدید
کاربر ممتاز
زبان برنامه نویسیتون هم ذکر کنید .
برنامه نویسی پیشرفته بهتون چی یاد میدن !؟ C++ یا C# !؟
 

A.S.Roma

عضو جدید
کاربر ممتاز
سلام
میخوام یه برنامه با ++c بنویسم که با عملگر جمع دو رشته رو یه هم الصاق کنه
با سربار گذاری
دقیقا" با کدوم قسمتش مشکل دارید !؟
یک کلاس به شکل زیر تعریف کنید :
کد:
class String
{
    char * ch;
int length;
};
بعد به سراغ نوشتن Method الحاق دو رشته بروید.
سپس عملگر + را OverLoad کنید.
 
بالا