「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;
}

相关内容

热门资讯

智慧健康科技(01715.HK... 格隆汇3月31日丨智慧健康科技(01715.HK)公布年度业绩,2025年度,收益由截至2024年1...
联合利华160亿美元大动作,揭...   核心要点联合利华将食品业务与香料巨头味好美合并的计划,正值快消行业奋力维持市场地位之际。支撑大型...
中欧瑞丰灵活配置混合(LOF)... 核心财务数据:净利润增长显著 净资产与份额双降主要会计数据与财务指标2025年,中欧瑞丰灵活配置混合...
佰泽医疗(02609.HK)2... 格隆汇3月31日|佰泽医疗(02609.HK)公布年度业绩,2025年度,集团实现营收约人民币11....
振江股份(603507.SH)... 振江股份(603507.SH)披露2025年年度报告,报告期公司实现营收39.71亿元,同比增长0....