PDA

View Full Version : سوال: تبديل رشته به عدد



karim orooji
جمعه 13 آذر 1388, 22:39 عصر
با سلام
چطوري ميشه يه عدد اعشاري رو كه به صورت رشته ذخيره شده حالا به عدد تبديلش كنيم
البته پارامترها از طريق فراخواني با ارجاع به تابع ارسال شود
ممنون ميشم كمكم كنين

lidaline
جمعه 13 آذر 1388, 23:07 عصر
من خودم مبتدی هستم وحتی سطر دوم رو متوجه نشدم ولی میتونید بگید محتوی آخرین خانه از آرایه رو داخل یه متغیر دیگه بذاره یه خونه به جلوبره محتوی رو ضربدر 10 کنه با محتوی داخل متغیر جدید جمع کنه دوباره این روند رو ادامه بده ودر هر قسمت یه ضربدر 10 اضافه میشه تا رسیدن به . ادامه بده بعد از . دوباره از اول کارو شروع کنه مثلا اگه آرایه اینطور بود 123.12 اول 2 رو بذاره تو متغیر جدید بعد 1 رو ضربدر10 کنه با محتوای متغیر جدید جمع کنه بشه 12 حالا که رسید به . تا حالا فقط یکبار ضربدر 10 شده پس عدد رو تقسیم بر 100 میکنیم میشه 0.12 حالا با 3 جمع میکنیم میشه 3.12 و2رو ضربدر 10 میکنیم وجمع میکنیم که بشه 23.12 حالا 1 رو ضربدر 100 میکنیم و با عدد داخل متغیر جمع میکنیم میشه 123.12
امیدوارم منظورتون همینطوری بوده باشه

karim orooji
شنبه 14 آذر 1388, 16:39 عصر
ممنون از توضيح دوستم اما كسي نيست به صورت جامعتر به صورت يه كد كوچيك توضيح بده

farshad_pickup
شنبه 14 آذر 1388, 20:45 عصر
راه راحت تر اینه که از atof() استفاده کنی :دی

http://www.cplusplus.com/reference/clibrary/cstdlib/atof/

mehdi1359a
چهارشنبه 02 دی 1388, 16:30 عصر
دوست عزیز اگه هدف تبدیل رشته به عدد باشه
(متغییر)convert.todecimal

mortezamsp
پنج شنبه 03 دی 1388, 00:13 صبح
یه امتحانی بفرماییدشان !

int convert::toint(char* string,int startofset,int endofset,int *reternedofset)
{
int num=0;

if(endofset==WHILEISNUM)
{
while(string[startofset]>=48 && string[startofset]<=57)
{
num=(num*10)+(string[startofset]-48);
startofset++;
}
*retendofset=startofset;
}
else
{
while(startofset<=endofset)
{
num=(num*10)+(string[startofset]-48);
startofset++;
}
*retendofset=endofset;
}
return(num);
}
البته اون آرگومان آخری رو میتونی یه int تعریف کنی بریزی توش.
مهم همینیه که این کد رو بفهمی . کد میگه اول تا عدد میبینی ، ارقام رو به عدد تبدیل کن و وقتی به نقطه رسیدی اونها رو به اعشار تبدیل کنی و آخرسر با هم جمع کنی . این کد برای یه برنامه درهم و برهمه بهمین خاطر ظاهرش زشته .