C++作业

1390 - 四位数的和
题目描述
请从键盘读入一个四位整数,求这个四位整数各个位的和是多少?
输入
一个四位整数n
输出
这个四位数各个位的和
样例
输入复制
3456
输出复制
18
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int g = n/1%10;
    int s = n/10%10;
    int b = n/100%10;
   int q = n/1000%10;
   int z = g+s+b+q;
    cout<<z<<endl;
   
   return 0;
}
1605 - 求一个两位数的个位和十位的和
题目描述
从键盘读入一个两位的整数n,请求出这个两位整数个位和十位的和是多少?
输入
一个两位的整数n。
输出
一个整数,代表n个位和十位的和。
样例
输入复制
24
输出复制
6
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int a = n%10;
    int s = n/10%10;
    cout<<a+s<<endl;
   
   return 0;
}

1606 - 求一个两位数倒序的结果
题目描述
请输出一个两位的整数n,倒过来的数,也就是输出这个两位数个位和十位颠倒的结果。
比如:整数23倒过来是32,整数18倒过来是81,整数20倒过来是2。
输入
两位整数n。
输出
n倒过来的整数。
样例
输入复制
16
输出复制
61
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int b = n%10;
    int c = n/10%10;
    int a = b*10+c*1;
    cout<<a<<endl;
   
   return 0;
}
1027 - 求任意三位数各个数位上数字的和
题目描述
对于一个任意的三位自然数X,编程计算其各个数位上的数字之和S。
输入
输入一行,只有一个整数x(100<=x<=999)
输出
输出只有一行,包括1个整数
样例
输入复制
123
输出复制
6
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int g = n%10;
    int s = n/10%10;
    int b = n/100%10;
    cout<<g+s+b<<endl;
   
   return 0;
}

1028 - 输入一个三位数,把个位和百位对调后输出
题目描述
输入一个三位自然数,然后把这个数的百位数与个位数对调,输出对调后的数
输入
输入一行,只有一个整数x(100<=x<=999)。
输出
输出只有一行,包括1个整数。
样例
输入复制
123
输出复制
321
输入复制
120
输出复制
21
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int g = n%10;
    int s = n/10%10;
    int b = n/100%10;
    int z = g*100+s*10+b*1;
    cout<<z<<endl;
   
   return 0;
}
1607 - 两位数运算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个两位整数的十位和个位了,她想知道这个整
数的十位/个位的结果是多少,请编程帮她实现?(请注意,计算结果要保留1位小数)
输入
输入一个两位的正整数n,且n的个位一定不为0。
输出
输出这个两位正整数十位除以个位的计算结果,结果保留1位小数。
样例
输入复制
72
输出复制
3.5
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    int n;
    float z;
    cin>>n;
    int g = n%10;
    int s = n/10%10;
     z = s/g*1.0;
    cout<<fixed<<setprecision(1)<<z<<endl;
   
   return 0;
}
1418 - 求一个5位数的各个位之和
题目描述
从键盘读入一个5位的正整数,请求出这个5位数的各个位之和;
输入
一个5位的正整数n
输出
这个5位数的各个位之和
样例
输入复制
12345
输出复制
15
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int g = n/1%10;
    int s = n/10%10;
    int b = n/100%10;
    int q = n/1000%10;
    int c = n/10000%10;
    int a = g+c+b+q+s;
    cout<<a<<endl;
   
   return 0;
}
1608 - 三位数运算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个三位整数的百位、十位和个位了,她想知道
这个整数的(百位+十位)/(十位+个位)的结果是多少,请编程帮她实现?(请注意,计算结果
要保留2位小数)
比如:整数135的(百位+十位)/(十位+个位)的计算结果 = (1+3)/(3+5) = 4 / 8 = 0.50。
输入
读入一个三位的正整数n(n的各个位中都不含数字0)
输出
输出这个三位正整数(百位+十位)除以(十位+个位)的计算结果,保留2位小数。
样例
输入复制
135
输出复制
0.50
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    int n;
    float z;
    cin>>n;
    int g = n%10;
    int s = n/10%10;
    int b = n/100%10;
     z = (b+s)/(s+g)*1.00;
    cout<<fixed<<setprecision(2)<<z<<endl;
   
   return 0;
}
 
1610 - 买水果
题目描述
小丽所在的小区水果店搞店庆活动,小丽去看了一下,她最喜欢的三种水果的价格分别为:苹果
8.5元/斤,鸭梨5.6元/斤,橙子6.2元/斤,三种水果小丽各买了若干斤,请编程帮助小丽计算一
下,她应该付多少钱?
输入
读入三个小数x、y、z,分别代表小丽购买的苹果、鸭梨和橙子的斤数。
输出
输出小丽应付的金额,结果保留1位小数。
样例
输入复制
1.2 5.5 3.9
输出复制
65.
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
   float x,y,z;
   cin>>x>>y>>z;
   float a = 8.5*x+5.6*y+6.2*z;
    cout<<fixed<<setprecision(1)<<a<<endl;
   
   return 0;
}
1609 - 四位数的计算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个四位整数的千位、百位、十位和个位了,她
想知道这个整数的前两位和后两位如果分别组成两个新的整数x和y的,那么x+y和x/y的计算结果
分别是多少,请编程帮她实现?(请注意,除法运算的计算结果要保留1位小数)
比如:整数1208如果将前两位和后两位分别组成两个新数,那么这两个新数分别是x = 12和y =
8,计算结果分别为
x + y = 12 + 8 = 20
x / y = 12 / 8 = 1.5
输入
读入一个四位整数n(n的十位和个位不可能同时为0,也就是,读入的整数不可能是类似1200这
样的整数)
输出
按题意要求输出计算结果,分两行输出
第1行输出前两位和后两位组成新数的和
第2行输出前两位和后两位组成新数相除的结果,计算结果保留1位小数
样例
输入复制
1208
输出复制
20
1.5
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int g = n%10;
    int s = n/10%10;
    int b = n/100%10;
    int q = n/1000%10;
    int x = b*1+q*10;
    int y = s*10+g*1;
    int a = x+y;
    float j = x/y*1.0;
    cout<<a<<endl;
    cout<<fixed<<setprecision(1)<<j<<endl;
   
   return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用提供的信息,可以得知该算法使用C++实现。以下是该算法的主要步骤和代码框架: 1. 初始化种群 2. 计算适应度函数 3. 选择操作 4. 交叉操作 5. 变异操作 6. 更新种群 7. 判断是否满足终止条件 以下是该算法C++代码框架: ``` // 定义染色体结构体 struct Chromosome { // ... }; // 初始化种群 void initPopulation(vector<Chromosome>& population) { // ... } // 计算适应度函数 void calculateFitness(vector<Chromosome>& population) { // ... } // 选择操作 void selection(vector<Chromosome>& population) { // ... } // 交叉操作 void crossover(vector<Chromosome>& population) { // ... } // 变异操作 void mutation(vector<Chromosome>& population) { // ... } // 更新种群 void updatePopulation(vector<Chromosome>& population) { // ... } // 判断是否满足终止条件 bool isTerminated(int generation) { // ... } // 遗传算法主函数 void geneticAlgorithm() { // 初始化种群 vector<Chromosome> population; initPopulation(population); // 迭代直到满足终止条件 int generation = 0; while (!isTerminated(generation)) { // 计算适应度函数 calculateFitness(population); // 选择操作 selection(population); // 交叉操作 crossover(population); // 变异操作 mutation(population); // 更新种群 updatePopulation(population); // 更新迭代次数 generation++; } } ``` 需要注意的是,以上代码框架只是一个简单的示例,实际的代码实现可能会更加复杂。如果您需要更详细的代码实现,请参考引用中提供的C++代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值