نوشته شده توسط
mohamad2468
با سلام
می خواستم برنامه ای بنویسم که ضابطه تابعی(تابع ریاضی منظورم هست ) رو از کاربر بگیره و عملیاتی را بر روی تابع انجام بده (مثلا تابع رو مقدار دهی کنه )
برای اینکه ضابطه تابع رو بگیره آرایه ای از نوع char ایجاد میکنم ولی نمیدونم چطور این متغیر ها و علائم ریاضی رو از کاراکتر به متغیر ها و غیره تبدیل کنم
ممنون میشم راهنماییم کنید.
در زبان C ویا ++C چیزی به نام evaluator در زمان اجرا نداریم چیزی که در خیلی از زبانها هست! بنابراین باید آرایه ای که دارید را اکستراکت کنید و هر کدام از علامت های زیاضی را که اکستراکت شده را عملیات موثر همون علامت را انجام بدید
با چند تا شرط و یک حلقه به راحتی میشه پیاده اش کرد.
مثال...
char* tempString = const_cast<char*>("a*b");
int a=10;
int b=2;
for(unsigned int i=0 ; i <= strlen(tempString) ; i++){
if(*(tempString+i) == '*'){
std::cout << "a*b = "<< a*b <<'\n';
}
}