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

相关内容

热门资讯

全国房屋新开工面积已低于200... 来源:不止是钢货全国房屋新开工面积已低于2004年,较历史高点已回落74%不止是钢货5月8日代友招聘...
缤趣财报发布后股价异动 盘中一... 经济观察网 缤趣发布财报后股价出现波动,利好带动股价短期大幅上涨,年内累计仍有下跌。 受此推动,财报...
浪潮信息将于5月12日举办20... 中访网数据  浪潮电子信息产业股份有限公司(证券代码:000977,证券简称:浪潮信息)发布公告,公...
今夜!彻底涨疯了 【导读】科技股涨疯了中国基金报记者 泰勒大家好,上一个交易日,美股科技股存储芯片板块集体回调,但今晚...
【闲读随笔】 丁宝桢:在自立自...   □田守勇  在晚清政坛中,丁宝桢或许不像曾国藩、李鸿章、左宗棠等重臣那样耀眼,但他能在“同光中兴...