PTA程序辅助实验平台——2023年软件设计综合实践_3(分支与循环)

第一题:7-1 印第安男孩 - C/C++ 分支与循环

朵拉编程的时候也想顺便练习英语。她编程从键盘读入一个整数n,如果n值为0或者1,向屏幕输出“0 indian boy.”或“1 indian boy.”;如果n大于1,比如9,则输出“9 indian boys.”。请你也编一个这样的程序。

输入格式:

整数n

输出格式:

见题干描述

输入样例:

9

输出样例:

9 indian boys.
#include<bits/stdc++.h>
using namespace std;
int n;
int main() {cin >> n;if (n == 0) cout << "0 indian boy.";else if (n == 1) cout << "1 indian boy.";else if(n>1) cout << n << " indian boys.";return 0;
}

 

第二题7-2 3,5,7的倍数 - C/C++ 分支与循环

编程序实现功能:输入一个整数,判断其是否能同时被3、5、7整除。能被整除则输出“Yes”,否则, 输出“No”。

输入格式:

一个整数

输出格式:

Yes 或 No

输入样例:

7

输出样例:

No
#include<bits/stdc++.h>
using namespace std;
int n;
int main() {cin>>n;if (!(n % 3))if (!(n % 5))if (!(n % 7))cout << "Yes";else cout << "No";else cout << "No";else cout << "No";return 0;
}

 

7-3 超速罚款 - C/C++ 分支与循环

开车超速是要罚款的,某国相应法律如下:

情况处罚
车速 ≤ 限速程序输出:Not Speeding
超速比 ≤ 10%程序输出:Speeding Warning
10% <超速比≤ 20%程序输出:Fine 100
20% <超速比≤ 50%程序输出:Fine 500
50% <超速比≤ 100%程序输出:Fine 1000
超速比 > 100%程序输出:Fine 2000

请编写程序,程序从输入的第1行读取车速(整数),从输入的第2行读取限速值(整数),然后使用条件分支语句进行判断,输出如表所示的处罚结论。

输入格式:

车速
限速值

输出格式:

如表所示的处罚结论

输入样例:

149
100

输出样例:

Fine 500
#include<bits/stdc++.h>
using namespace std;
int v, limit;
int main() {cin >> v >> limit;if (v <= limit)cout << "Not Speeding";else if (v <= limit * 1.1)cout << "Speeding Warning";else if (v <= limit * 1.2)cout << "Fine 100";else if (v <= limit * 1.5)cout << "Fine 500";else if (v <= limit * 2)cout << "Fine 1000";elsecout << "Fine 2000";return 0;
}

 7-4 象限判定 - C/C++ 分支与循环

请编程实现下述功能:

  • 从键盘读入不为零的两个坐标值(浮点数);注意两个坐标值应使用英文逗号分隔;
  • 结合上图,判定点(x,y)所在的象限。
    说明:程序约定x和y值不为0

image.png

输入格式:

x,y

输出格式:

quadrant 1/2/3/4

输入样例:

15.2,-11.3

输出样例:

quadrant 4
#include<bits/stdc++.h>
using namespace std;
double x, y;
char a;
int main() {cin>>x>>a>>y;if (x > 0)if (y > 0)cout << "quadrant 1";elsecout << "quadrant 4";else if (y > 0)cout << "quadrant 2";elsecout << "quadrant 3";return 0;
}

 7-5 三天打渔、两天晒网 - C/C++ 分支与循环

郭、王两位大侠同上终南山习武,两人最初的战力值均为100。王大侠骨骼清奇,天赋较高,每练功一天,战力增加2‰,郭大侠比较愚笨,每练功一天,战力增加1‰。如果休假一天不练,两人的战力均减少1‰。相较于王大侠,郭大侠更加勤奋,日日练功,从不休息,而王大侠,则三天打渔,两天晒网,也就是每5天的前三天练功,后两天休假。

请编写程序,计算N天之后,郭大侠和王大侠战力分别是多少?

输入格式:

整数N

输出格式:

郭的战力值,王的战力值

说明:均保留1位小数,以英文逗号分隔

输入样例:

5

输出样例:

100.5,100.4
#include<bits/stdc++.h>
using namespace std;
int n;
double g = 100, w = 100;
int main() {cin >> n;g = g*pow(1.001, n);if (n >= 5) {int d;d = n / 5;double p;p=pow(1.002, 3) * pow(0.999, 2);w = w * pow(p, d);}if (n % 5 <= 3) {w = w * pow(1.002, n % 5);}else {w = w * pow(1.002, n % 5);w = w * 0.999;}cout << fixed << setprecision(1);cout << g << "," << w;return 0;
}

 

 7-6 "验证"哥德巴赫猜想 - C/C++ 分支与循环

数学领域著名的“哥德巴赫猜想”的大致意思是:任何一个大于2的偶数总能表示为两个素数之和。比如:24=5+19,其中5和19都是素数。请设计一个程序,验证20亿以内的偶数都可以分解成两个素数之和。

输入格式:

在一行中给出一个(2,2 000 000 000]范围内的偶数N。

输出格式:

在一行中按照格式“N = p + q”输出N的素数分解,其中p ≤ q均为素数。又因为这样的分解不唯一(例如24还可以分解为7+17),要求必须输出所有解中p最小的解。

输入样例:

18

输出样例:

18 = 5 + 13
#include<bits/stdc++.h>
using namespace std;
long long int n;
bool prime(int a) {for (int i = 2; i < sqrt(a); i++) {if (a % i==0) return 0;}return 1;
}
int main() {cin >> n;for (int i = 2; i <= n / 2; i++) {if (prime(i)&& prime(n - i)){cout << n << " = " << i << " + " << n - i;break;}}return 0;
}

7-7 考拉慈猜想 - C/C++ 分支与循环

考拉兹猜想(Collatz conjecture)又称奇偶归一猜想,是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2。
如此循环,最终都能得到1。编写一个程序,输入一个正整数,打印其考拉兹序列。

输入格式:

1个>1的正整数

输出格式:

以逗号分隔的考拉兹序列。

输入样例:

5

输出样例:

16,8,4,2,1
#include<bits/stdc++.h>
using namespace std;
int n;
int main() {cin >> n;while (n != 1) {if (n % 2 == 1) {n = n * 3 + 1;cout << n << ",";}else if (n == 2) {n = n / 2;cout << 1;}else {n = n / 2;cout << n << ",";}}return 0;
}

7-8 N个数求和 

本题的要求很简单,就是求N个数字的和。麻烦的是,这些数字是以有理数分子/分母的形式给出的,你输出的和也必须是有理数的形式。

输入格式:

输入第一行给出一个正整数N(≤100)。随后一行按格式a1/b1 a2/b2 ...给出N个有理数。题目保证所有分子和分母都在长整型范围内。另外,负数的符号一定出现在分子前面。

输出格式:

输出上述数字和的最简形式 —— 即将结果写成整数部分 分数部分,其中分数部分写成分子/分母,要求分子小于分母,且它们没有公因子。如果结果的整数部分为0,则只输出分数部分。

输入样例1:

5
2/5 4/15 1/30 -2/60 8/3

输出样例1:

3 1/3

输入样例2:

2
4/3 2/3

输出样例2:

2

输入样例3:

3
1/3 -1/6 1/8

输出样例3:

7/24

 

#include<cstdio>
#define ll long long
/*求最大公约数*/
ll gcd(ll a,ll b){if(b==0)return a;return gcd(b,a%b);
}
/*求最小公倍数*/
ll lcm(ll a,ll b){return a*b/gcd(a,b);
}
/*分子分母进行约分*/ 
void yuefen(ll &a,ll &b){ll gcdNum=gcd(a,b);if(gcdNum!=0){a=a/gcdNum;b=b/gcdNum;}
}
int main(){int n;ll a1,b1,a2,b2;scanf("%d",&n);scanf("%lld/%lld",&a1,&b1);yuefen(a1,b1);int i=1;while(i<n){scanf("%lld/%lld",&a2,&b2);ll lcmNum=lcm(b1,b2);a1=a1*lcmNum/b1+a2*lcmNum/b2;//分子进行相加b1=lcmNum;yuefen(a1,b1);//约分化简i++;}//整数为0且a1!=0 如1/2if(a1&&a1/b1==0){printf("%lld/%lld\n",a1,b1);}else if(a1%b1==0){//如2/2 printf("%lld\n",a1/b1);}else {//如3/2 printf("%lld %lld/%lld\n",a1/b1,a1%b1,b1); }return 0;
}

7-9 均是素数

在给定的区间 [m,n] 内,是否存在素数 p、q、r(p<q<r),使得 pq+r、qr+p、rp+q 均是素数?

输入格式:

输入给出区间的两个端点 0<m<n≤1000,其间以空格分隔。

输出格式:

在一行中输出满足条件的素数三元组的个数。

输入样例:

1 35

输出样例:

10

样例解读

满足条件的 10 组解为:

2, 3, 5
2, 3, 7
2, 3, 13
2, 3, 17
2, 5, 7
2, 5, 13
2, 5, 19
2, 5, 31
2, 7, 23
2, 13, 17
#include<stdio.h>
#include<math.h>
int sushu(int i)          //求素数函数       
{int flag1=0;if(i>=2){for(int j=2;j<=sqrt(i);j++){if(i%j==0){flag1=1;break;}}}elsereturn 1;return flag1;
}
int main()
{int n,m,i,j,t,a[10000],flag1=0,k=0,count=0;scanf("%d %d",&n,&m);for(i=n;i<=m;i++){flag1=sushu(i);if(flag1==0){a[k]=i;k++;}}	for(i=0;i<=k;i++){for(j=i;j<=k;j++){for(t=j;t<=k;t++){if((sushu(a[i]*a[j]+a[t])==0)&&(sushu(a[j]*a[t]+a[i])==0)&&(sushu(a[t]*a[i]+a[j])==0))count++;}}}printf("%d",count);return 0;
}

 

 7-10 机工士姆斯塔迪奥

在 MMORPG《最终幻想14》的副本“乐欲之所瓯博讷修道院”里,BOSS 机工士姆斯塔迪奥将会接受玩家的挑战。

你需要处理这个副本其中的一个机制:N×M 大小的地图被拆分为了 N×M 个 1×1 的格子,BOSS 会选择若干行或/及若干列释放技能,玩家不能站在释放技能的方格上,否则就会被击中而失败。

给定 BOSS 所有释放技能的行或列信息,请你计算出最后有多少个格子是安全的。

输入格式:

输入第一行是三个整数 N,M,Q (1≤N×M≤105,0≤Q≤1000),表示地图为 N 行 M 列大小以及选择的行/列数量。

接下来 Q 行,每行两个数 Ti​,Ci​,其中 Ti​=0 表示 BOSS 选择的是一整行,Ti​=1 表示选择的是一整列,Ci​ 为选择的行号/列号。行和列的编号均从 1 开始。

输出格式:

输出一个数,表示安全格子的数量。

输入样例:

5 5 3
0 2
0 4
1 3

输出样例:

12
#include<stdio.h>
int flagr[100001]={0},flagc[100001]={0}; 
int main(){int n,m,q,Ti,Ci,r=0,c=0;scanf("%d%d%d",&n,&m,&q);while(q--){scanf("%d%d",&Ti,&Ci);if(Ti==0&&flagr[Ci]||Ti==1&&flagc[Ci])continue;   //如果是之前被攻击的行或者列就直接跳过if(Ti==0){r++;flagr[Ci]=1;             }else{c++;       //标记已经被攻击过了flagc[Ci]=1;}}    printf("%d",m*n-r*m-c*n+r*c);
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

查看Linux系统信息的常用命令

文章目录 1. 机器配置查看2. 常用分析工具3. 常用指令解读3.1 lscpu 4. 定位僵尸进程5. 参考 1. 机器配置查看 # 总核数物理CPU个数x每颗物理CPU的核数 # 总逻辑CPU数物理CPU个数x每颗物理CPU的核数x超线程数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| w…

GaussDB数据库SQL系列-游标管理

目录 一、前言 二、概述&#xff08;GaussDB&#xff09; 1、游标概述 2、游标的使用分类 三、GaussDB中的显式游标&#xff08;示例&#xff09; 1、显式游标的使用与操作步骤 2、显式游标示例 四、GaussDB中的隐式游标&#xff08;示例&#xff09; 1、隐式游标简介…

MySQL基础进阶

文章目录 MySQL基础进阶 约束 \color{red}{约束} 约束约束的概念和分类约束的概念约束的分类 非空约束概念语法 唯一约束概念语法 主键约束概念语法 数据库设计 \color{red}{数据库设计} 数据库设计软件的研发步骤数据库设计概念数据库设计的步骤表关系一对一一对多&#xff08…

Pytest+Allure+Excel接口自动化测试框架实战

1. Allure 简介 简介 Allure 框架是一个灵活的、轻量级的、支持多语言的测试报告工具&#xff0c;它不仅以 Web 的方式展示了简介的测试结果&#xff0c;而且允许参与开发过程的每个人可以从日常执行的测试中&#xff0c;最大限度地提取有用信息。 Allure 是由 Java 语言开发的…

结构型设计模式——桥接模式

摘要 桥接模式(Bridge pattern): 使用桥接模式通过将实现和抽象放在两个不同的类层次中而使它们可以独立改变。 一、桥接模式的意图 将抽象与实现分离开来&#xff0c;使它们可以独立变化。 二、桥接模式的类图 Abstraction: 定义抽象类的接口Implementor: 定义实现类接口 …

MySQL 的 C 语言接口

1. mysql_init MYSQL *mysql_init(MYSQL *mysql); mysql_init函数的作用&#xff1a;创建一个 MYSQL 对象&#xff08;该对象用于连接数据库&#xff09;。 mysql_init函数的参数&#xff1a; ① mysql&#xff1a;MYSQL 结构体指针&#xff0c;一般设置为 NULL 。 mysql_init函…

嵌入式芯片-NE555

目录 1、比较器&#xff08;运放&#xff09; 2、相反门&#xff08;非门&#xff09; 3、或非门 4、双稳态触发器 5、NE555功能框图 1、比较器&#xff08;运放&#xff09; 2、相反门&#xff08;非门&#xff09; 3、或非门 4、双稳态触发器 5、NE555功能框图

俞敏洪:董宇辉在北京有房子了!

据媒体报道&#xff0c;9月26日&#xff0c;俞敏洪在直播中透露&#xff0c;董宇辉已经在北京拥有了自己的房子&#xff0c;并且强调这是大家共同努力的结果。 这一消息引起了广泛关注和热议。在此之前&#xff0c;董宇辉曾在公开场合表示&#xff0c;俞敏洪老师为了给他凑钱买…

数据库索引失效

索引失效是指数据库查询在执行过程中无法有效利用索引&#xff0c;导致查询性能下降或索引无法被使用的情况&#xff0c;以下是常见的导致索引失效的原因&#xff1a; 模糊查询以通配符开头&#xff0c;自己都不知道具体要查什么&#xff0c;怎么使用索引呢&#xff0c;所以会导…

输送机使用的常见误区

输送机也称流水线&#xff0c;是指在自动化生产过程中起到运输货物&#xff0c;联通各个生产设备的主要机械设备。但在使用的过程中&#xff0c;很多用户对于输送机的使用存在一定的误区&#xff0c;导致设备故障频出&#xff0c;下面就针对用户已在使用输送机过程中的常见误区…

Android Studio 创建项目不自动生成BuildConfig文件

今天在AS上新建项目发现找不到BuildConfig文件&#xff0c;怎么clear都不行。通过多方面查找发现原来gradle版本不同造成的&#xff0c;Gradle 8.0默认不生成 BuildConfig 文件。 如上图&#xff0c;8.0版本是没有source文件夹 上图是低于8.0版本有source文件夹 针对这个问题&…

基于若依框架进行二次开发优化指南

背景 若依&#xff08;RuoYi&#xff09;开源框架是一个功能强大的Java开发框架&#xff0c;专注于快速构建企业级后台管理系统。它提供了一套丰富的功能和模块&#xff0c;可以帮助开发人员快速搭建稳定、高效的管理系统。本篇博客将大家了解若依框架的基本概念和使用方法&am…

云原生Kubernetes:对外服务之 Ingress

目录 一、理论 1.Ingress 2.部署 nginx-ingress-controller(第一种方式) 3.部署 nginx-ingress-controller(第二种方式) 二、实验 1.部署 nginx-ingress-controller(第一种方式) 2.部署 nginx-ingress-controller(第二种方式) 三、问题 1.启动 nginx-ingress-controll…

Selenium Web自动化测试 —— 高级控件交互方法!

一、使用场景 使用场景对应事件复制粘贴键盘事件拖动元素到某个位置鼠标事件鼠标悬停鼠标事件滚动到某个元素滚动事件使用触控笔点击触控笔事件&#xff08;了解即可&#xff09; https://www.selenium.dev/documentation/webdriver/actions_api 二、ActionChains解析 实例…

iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程

文章目录 一、环境准备二、基础软件三、扩展&#xff1a;usb拓展插件 一、环境准备 1、下载VMware虚拟机的壳子&#xff0c;安装并注册软件(可以百度注册码)&#xff0c;最新版本&#xff1a;v17 2、下MacOS系统iOS镜像文件&#xff0c;用于vmware虚拟机安装&#xff0c;当前镜…

油猴(篡改猴)学习记录

第一个Hello World 注意点:默认只匹配了http网站,如果需要https网站,需要自己添加match https://*/*代码如下 这样子访问任意网站就可以输出Hello World // UserScript // name 第一个脚本 // namespace http://tampermonkey.net/ // version 0.1 // descri…

ElasticSearch(二)

1.DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSL&#xff08;Domain Specific Language&#xff09;来定义查询。常见的查询类型包括&#xff1a; 查询所有&#xff1a;查询出所有数据&#xff0c;…

钢轨长度及允许偏差

声明 本文是学习GB-T 2585-2021 铁路用热轧钢轨. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了铁路用钢轨的订货内容、分类、尺寸、外形、质量及允许偏差、技术要求、试验方法、检 验规则、标志及质量证明书。 本标准适用于3…

MySQL ——多表连接查询

一、&#xff08;左、右和全&#xff09;连接概念 内连接&#xff1a; 假设A和B表进行连接&#xff0c;使用内连接的话&#xff0c;凡是A表和B表能够匹配上的记录查询出来。A和B两张表没有主付之分&#xff0c;两张表是平等的。 关键字&#xff1a;inner join on 语句&#xf…

css实现Chrome标签栏

如图这是一个特殊的带有圆角的导航栏&#xff0c;实现这种效果并不难 这是我实现的效果&#xff1a; 淡一点的就是鼠标悬停的样式 以下是代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><m…