iT邦幫忙

2023 iThome 鐵人賽

0
自我挑戰組

C語言精讀研習系列 第 47

C語言解數字相乘暨2進制轉10進制

  • 分享至 

  • xImage
  •  

輸入1~9位數的數字,輸出每一個數字相乘的算式and結果。
完整程式碼

//502 數字相乘
#include <stdio.h>

int main(void){
	int A, B, i, gcd;
	scanf("%d %d", &A, &B);
	for(i=A; i>=1; i--){
		if(A%i == 0 && B%i ==0){
			gcd = i;
			break;
		}
	}
	printf("%d\n", gcd);
	printf("%d", A*B/gcd);
	
	return 0;
}

輸出結果
https://ithelp.ithome.com.tw/upload/images/20240702/20160744mSqUNsj1bq.png
https://ithelp.ithome.com.tw/upload/images/20240702/20160744cxUOP20ZlL.png


輸入一個10字元以內的二進位字串,以十進位輸出
完整程式碼

//702 二進位轉十進位
#include <stdio.h>

int main(void){
	int binary, decimal=0, base=1;
	
	scanf("%d", &binary);
	
	while(binary>0){
		decimal += (binary%10)*base;
		base *= 2;
		binary /= 10;
	}
	printf("%d", decimal);
	return 0;
}

輸出結果
https://ithelp.ithome.com.tw/upload/images/20240702/20160744fQfUWYmMtj.png


參考資料:TQC+ C第2版


上一篇
使用for或while迴圈or遞迴函式來求出GCD與LCM
系列文
C語言精讀研習47
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言