الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

How Can I Convert From Decimal To Ocal

مغلق
بدأه راهندا في 21 فبراير 2008 · 3 رد · 1,466 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمه الله وبركاته

لو سمحتوا يا جماعه يا ريت حد يفدني ازاي احول من

decimal الي octal و hexdecimal

وجزاكم الله كل خير

#2

أنظر هنا :

http://en.wikipedia.org/wiki/Binary_numera...numeral_systems

/index.ph...;اد

/index.ph...;اد

http://ar.wikipedia.org/wiki/%D8%A3%D9%86%...%84%D8%B9%D8%AF

والكثير ، فقط أستخدم خاصيه البحث هنا .

وهذه دوال لعمليه التحويل ، كنت كاتبها بسي++ ، يمكنك تغييرها الى جافا ،

void decimalToBinary (int dec ) 
{ 
	 if ( dec > 1) 
		decimalToBinary(dec/2); 

	 cout << dec%2; 
} 

void decimalToHex	(int dec )  
{ 
	 char hexChar[] = {'0','1','2','3','4','5','6','7','8','9', 
					   'A','B','C','D','E','F'};  
	 if ( dec > 15 ) 
		decimalToHex(dec/16); 

	 cout << hexChar[dec%16]; 
} 

void decimalToOctal (int dec ) 
{ 
	 char octalChar[] = {'0','1','2','3','4','5','6','7'}; 

	 if ( dec > 7 ) 
		decimalToOctal(dec/8); 

	 cout << octalChar[dec%8]; 
} 

int binaryToDecimal (char bin[] )  
{ 
	 int tmp = 0; 
	 int sum = 0; 

	 for (int i=0 , j=strlen(bin)-1; i<strlen(bin); i++ ) 
	 { 
		 tmp = ( bin=='1' ) ? 1 : 0; 
		 tmp = tmp * power(2,j--); 
		 sum += tmp; 
	 } 

	 return sum; 
} 

int hexToDecimal	(char hex[]	)  
{ 
	 int tmp = 0; 
	 int sum = 0; 
	 int  hexNum[]  = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; 
	 char hexChar[] = {'0','1','2','3','4','5','6','7','8','9', 
					   'A','B','C','D','E','F'}; 

	 for (int i=0 , j=strlen(hex)-1; i<strlen(hex); i++ ) 
	 { 
		 for (int k=0; k<16; k++) 
		 { 
			 if (hex == hexChar[k]) 
			 { 
				tmp = hexNum[k]; 
				break; 
			 } 
		 } 

		 tmp = tmp * power(16,j--); 
		 sum += tmp; 
	 } 


	 return sum; 
} 

int octalToDecimal	(char octal[]	)  
{ 
	 int tmp = 0; 
	 int sum = 0; 
	 int  octalNum[]  = {0,1,2,3,4,5,6,7}; 
	 char octalChar[] = {'0','1','2','3','4','5','6','7'}; 

	 for (int i=0 , j=strlen(octal)-1; i<strlen(octal); i++ ) 
	 { 
		 for (int k=0; k<16; k++) 
		 { 
			 if (octal == octalChar[k]) 
			 { 
				tmp = octalNum[k]; 
				break; 
			 } 
		 } 

		 tmp = tmp * power(8,j--); 
		 sum += tmp; 
	 } 

	 return sum; 
} 

int power (int x , int y) 
{ 
	int p=1; 

	for (int i=0; i<y; i++) 
		p *= x; 

	 return p; 
} 


void binaryToHex (char binary[] ) 
{ 
	 int dec = binaryToDecimal(binary); 
	 decimalToHex(dec); 
} 

void binaryToOctal (char binary[] ) 
{ 
	 int dec = binaryToDecimal(binary); 
	 decimalToOctal(dec); 
} 

void hexToBinary (char hex[] ) 
{ 
	 int dec = hexToDecimal(hex); 
	 decimalToBinary(dec); 
} 

void hexToOctal (char hex[] ) 
{ 
	 int dec = hexToDecimal(hex); 
	 decimalToOctal(dec); 
} 

void octalToHex (char o[] ) 
{ 
	 int dec = octalToDecimal(o); 
	 decimalToHex(dec); 
} 

void octalToBinary (char o[] ) 
{ 
	 int dec = octalToDecimal(o); 
	 decimalToBinary(dec); 
}

تم تعديل هذه المشاركة بواسطة romansy في 21 فبراير 2008 في 20:46

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#3

شكرا جزاك الله كل خير

#4
System.out.format("octal : %o", decnum);

تم تعديل هذه المشاركة بواسطة alaadiaa في 22 فبراير 2008 في 01:01

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

هذا الموضوع مغلق.

مواضيع مشابهة