第26473题 程序题
编写C++程序判断正整数是否为幸运数并按要求输出结果

问题描述

  1. 对正整数的各个奇数位(从右到左计数,个位为第1位)进行变换:将该位数字乘以7,若结果大于9则反复将各位数字相加,直到结果不大于9;若结果不大于9则直接作为变换后的结果。偶数位数字保持不变。完成所有奇数位变换后,将变换后的新数的各位数字相加,若总和为8的整数倍,则该数为幸运数。
  2. 示例:16347的个位(第1位,奇数位)7×7=49,反复相加得4;百位(第3位,奇数位)3×7=21→3;万位(第5位,奇数位)1×7=7。变换后得到76344,各位和为7+6+3+4+4=24,是8的倍数,因此为幸运数。
  3. 程序要求:首先输入正整数N,随后输入N行正整数,输出N行结果,每行对应一个输入数,是幸运数则输出T,否则输出F

输入描述

  1. 首先输入正整数N,随后输入N行正整数,无需处理非法输入(如负数、非数字字符串等)。
  2. 注意:考试环境中输入时不可带有提示信息,不得在输入函数中添加提示文本。

输出描述

  1. 输出N行结果,每行对应一个输入正整数的判定结果,幸运数输出大写T,否则输出大写F
  2. 注意:输出必须为英文大写字母,小写或其他格式将被判为错误。

样例输入

2
16347
76344

样例输出

T
F
编辑模式