gole.shabbu8
شنبه 15 فروردین 1394, 22:57 عصر
با سلام
دنبال یه برنامه میگشتم که معکوس یک عدد اعشاری رو توی خرووجی چاپ کنه(به قول بروبچ مقلوب یه عدد). برنامه زیر رو پیدا کردم که واسه سی نوشته شده بود که تغییرش دادم به سی پلاس پلاس چون درکش واسم راحتتره. (البته میتونم مقلوب یک عدد صحیح رو کد بزنم!)
سوالیم اینکه که دقیقا کار این long که توی پرانتز اومده چیه؟ میگه میشه % رو برای double هم به کار برد ؟ اگه قرار با long تبدیل بشه چه نوع تبدیلیه ؟ اگه به integer آیا ارقام اعشاریی عددمون حذف نمیشن ؟اصلا میشه یکی بهم توضیح بده دقیقا این برنامه چه جوری کار میکنه؟ num رو تبدیل به long کرده؟ کار این pointer چیه اینجا؟ منظورش چیه از اینکه داخل پرانتز if نوشته اگر not pointer ؟ ممنون از راهنمایی اساتید گلم.
من تا حالا فقط حلقه for رو به این صورت دیده بودم که بین ; هر کدوم چیزهایی نوشته شده بود! اینم یه توضیح بدید ممنون میشم.
#include"stdafx.h"
#include <iostream>
using namespace std;
int main()
{
double num = 0 ;
int pointer = 0 ;
cout << "enter a number :";
cin >> num ;
cout << endl ;
for( ; num -( (long)num ) > 0 ; num *= 10, pointer++ )
{ }
for( ; num>0 ; num = ( (long)num/10 ) )
{
cout << ( (long)num % 10 );
pointer--;
if(!pointer) {cout << "." ;}
}
cin.get();
cin.get();
}
دنبال یه برنامه میگشتم که معکوس یک عدد اعشاری رو توی خرووجی چاپ کنه(به قول بروبچ مقلوب یه عدد). برنامه زیر رو پیدا کردم که واسه سی نوشته شده بود که تغییرش دادم به سی پلاس پلاس چون درکش واسم راحتتره. (البته میتونم مقلوب یک عدد صحیح رو کد بزنم!)
سوالیم اینکه که دقیقا کار این long که توی پرانتز اومده چیه؟ میگه میشه % رو برای double هم به کار برد ؟ اگه قرار با long تبدیل بشه چه نوع تبدیلیه ؟ اگه به integer آیا ارقام اعشاریی عددمون حذف نمیشن ؟اصلا میشه یکی بهم توضیح بده دقیقا این برنامه چه جوری کار میکنه؟ num رو تبدیل به long کرده؟ کار این pointer چیه اینجا؟ منظورش چیه از اینکه داخل پرانتز if نوشته اگر not pointer ؟ ممنون از راهنمایی اساتید گلم.
من تا حالا فقط حلقه for رو به این صورت دیده بودم که بین ; هر کدوم چیزهایی نوشته شده بود! اینم یه توضیح بدید ممنون میشم.
#include"stdafx.h"
#include <iostream>
using namespace std;
int main()
{
double num = 0 ;
int pointer = 0 ;
cout << "enter a number :";
cin >> num ;
cout << endl ;
for( ; num -( (long)num ) > 0 ; num *= 10, pointer++ )
{ }
for( ; num>0 ; num = ( (long)num/10 ) )
{
cout << ( (long)num % 10 );
pointer--;
if(!pointer) {cout << "." ;}
}
cin.get();
cin.get();
}