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

相关内容

热门资讯

华商新常态混合A净值上涨2.2... 华商新常态灵活配置混合型证券投资基金(简称:华商新常态混合A,代码001457)公布6月12日最新净...
兴银丰盈灵活配置A净值上涨3.... 兴银丰盈灵活配置混合型证券投资基金(简称:兴银丰盈灵活配置A,代码001474)公布6月12日最新净...
南方利众灵活配置混合C净值上涨... 南方利众灵活配置混合型证券投资基金(简称:南方利众灵活配置混合C,代码001505)公布6月12日最...
博时新策略混合C净值上涨0.8... 博时新策略灵活配置混合型证券投资基金(简称:博时新策略混合C,代码001523)公布6月12日最新净...
嘉实中证金融地产ETF联接A净... 嘉实中证金融地产交易型开放式指数证券投资基金联接基金(简称:嘉实中证金融地产ETF联接A,代码001...