「PAT乙级真题解析」Basic Level 1086 就不告诉你 (问题分析+完整步骤+伪代码描述+提交通过代码)
创始人
2024-02-06 22:53:55

乙级的题目训练主要用来熟悉编程语言的语法和形成良好的编码习惯和编码规范。从小白开始逐步掌握用编程解决问题。

PAT (Basic Level) Practice 1086 就不告诉你

问题分析

题设要求, 计算给定两个数的乘积, 然后将乘积的各个数字颠倒后输出对应的数值。
要求很明确,算乘积,然后逆转顺序,最后输出,给定的数值在整型范围内,可以直接存储为整型。

完整描述步骤

  1. 获取输入: 正整数A和B
  2. 计算乘积product = A * B
  3. 将乘积逆转后输出
    • 可以使用取余的方式得到顺序逆转后的数值
    • 也可以转为字符串后从末尾开始输出

伪代码描述

  1. get input: A, B
  2. calculate product = A * B;
  3. init flag:
    • found_first_non_zero_digit = False
  4. while product != 0:
    • remainder = product % 10;
    • if remainder != 0:
      • found_first_non_zero_digit = True
    • if found_first_non_zero_digit:
      • print(remainder)

注意事项

  1. 乘积倒序会存在以0开头的情况;

完整提交代码

/*
# 问题分析
题设要求, 计算给定两个数的乘积, 然后将乘积的各个数字颠倒后输出对应的数值。
要求很明确,算乘积,然后逆转顺序,最后输出,给定的数值在整型范围内,可以直接存储为整型。# 完整描述步骤
1. 获取输入: 正整数A和B
2. 计算乘积product = A * B
3. 将乘积逆转后输出- 可以使用取余的方式得到顺序逆转后的数值- 也可以转为字符串后从末尾开始输出# 伪代码描述
1. get input: A, B
2. calculate product = A * B;
3. init flag:- found_first_non_zero_digit = False
4. while product != 0:- remainder = product % 10;- if remainder != 0:- found_first_non_zero_digit = True- if found_first_non_zero_digit:- print(remainder)# 注意事项
1. 乘积倒序会存在以0开头的情况;*/# includeint main(){int number_1, number_2;scanf("%d %d", &number_1, &number_2);int sum = number_1 * number_2;int should_output = 0;while (sum != 0){int remainder = sum % 10;sum /= 10;if (remainder != 0){should_output = 1;}if (should_output == 1){printf("%d", remainder);}}return 0;
}

相关内容

热门资讯

金风科技股价涨5.68%,新疆... 12月23日,金风科技涨5.68%,截至发稿,报17.85元/股,成交15.64亿元,换手率2.67...
三维天地跌2.09%,成交额2... 12月23日,三维天地盘中下跌2.09%,截至10:16,报34.61元/股,成交2920.46万元...
易方达纳斯达克100ETF(Q... 数据显示,12月22日,易方达纳斯达克100ETF(QDII)(159696)获净申购354.86万...
金风科技股价涨5.68%,万家... 12月23日,金风科技涨5.68%,截至发稿,报17.85元/股,成交15.70亿元,换手率2.68...
金风科技股价涨5.68%,民生... 12月23日,金风科技涨5.68%,截至发稿,报17.85元/股,成交15.72亿元,换手率2.68...