N与C中最大的奇数位数的乘积

n与c中最大的奇数位数的乘积

Given a number N with we have to product the number with its largest odd digit. If there is no odd digit then print -1.

Like we have initialized N with “153” and the largest odd digit in this number is 5 so the result would be the product of 153 with 5 i.e. 153 * 5 = 765 and if the number has no odd digit like 246 then the output must be -1.

Input − N = 198

Output − 1782

Explanation − 198 * 9 = 1782

Input − N = 15382

Output − 76910

Explanation − 15382 * 5 = 76910

Approach used below is as follows to solve the problem −

Take the input N.

Traverse every digit and look for odd digits

Find the largest odd element.

Product the largest off element with the original number N.

If there is no odd element update result with -1.

Return the result.

Algorithm

StartIn function int largestodd(int n)   Step 1→ Declare and Initialize large as -1   Step 2→ Loop While n > 0      Set digit as n % 10      If digit % 2 == 1 && digit > large then,         Set large as digit      Set n as n / 10   Step 3→ Return largeIn function int findproduct(int n)   Step 1→ Declare and Initialize large set largestodd(n)   Step 2→ If large == -1 then,      Return -1   Step 3→ Return (n * large)In function int main()   Step 1→ Initialize n as 15637   Print the results from calling findproduct(n)Stop

登录后复制

Example

 演示

#include int largestodd(int n){   // If all digits are even then   // we wil return -1   int large = -1;   while (n > 0) {      // checking from the last digit      int digit = n % 10;      // If the current digit is odd and      // is greater than the large      if (digit % 2 == 1 && digit > large)         large = digit;      n = n / 10;   }   // To return the maximum   // odd digit of n   return large;}int findproduct(int n){   int large = largestodd(n);   // If there are no odd digits in n   if (large == -1)      return -1;   // Product of n with its largest odd digit   return (n * large);}int main(){   int n = 15637;   printf("%d

", findproduct(n));   return 0;}

登录后复制

输出

如果运行上述代码,将会生成以下输出−

109459

登录后复制

以上就是N与C中最大的奇数位数乘积的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2585282.html

(0)
上一篇 2025年3月6日 15:00:35
下一篇 2025年2月23日 01:31:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论