程序设计实验二

张莉 程序设计实验教程答案 实验二 张丽 程序设计实验教程 实验二1234567 1 >>> x=float(input('请输入一个浮点型的值:')) 请输入一个浮点型的值:3.6 >>> print('y=',x*x+2*x-10) y= 10.16 2 >>> x=int(input('请输入第一个整数:')) 请输入第一个整数:23 >>> y=int(input('请输入第二个整数:')) 请输入第二个整数:15 >>&gt 阅读详情
//丑数
#include <iostream>
#include <string.h>
#include <stack>
#include <queue>
#include <algorithm>
#include <cstdio>
#include <cstdlib>
#define ll long long//是ll在前面

using namespace std;

ll a[120000]={0};//至少100000个数据

void choushu()
{
    ll l2=1,l3=1,l5=1;
    a[1]=1;
    for(int i=2;i<120000;i++)
    {
        a[i]=min(a[l2]*2,min(a[l3]*3,a[l5]*5));//注意这里是min不是max
        if(a[i]==a[l2]*2) l2++;
        if(a[i]==a[l3]*3) l3++;
        if(a[i]==a[l5]*5) l5++;
    }
}

int main()
{
    int t;
    cin>>t;
    choushu();
    while(t--)
    {
        int n;
        cin>>n;
        cout<<a[n]<<endl;
    }
    return 0;
}
//走迷宫
#include <iostream>
#include <string>
#include <algorithm>
#include <cstring>

using namespace std;

int n,m;
char map[11][11];//这里是char不是int
int dp[11][11];

int process(int x,int y,int ex,int ey)
{
    if(x==n)
    x=0;
    else if(x==-1)
    x=n-1;
    if(y==m)
    y=0;
    else if(y==-1)
    y=m-1;

    if(map[x][y]=='1')
    return 10000;

    if(x==ex&&y==ey)
    return 0;

    map[x][y]='1';

    if(dp[x][y]!=-1)
    return dp[x][y];

    dp[x][y]=min(min(process(x+1,y,ex,ey),process(x-1,y,ex,ey)),
                 min(process(x,y+1,ex,ey),process(x,y-1,ex,ey)))+1;

    return dp[x][y];
}

int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        cin>>n>>m;

        memset(dp,-1,sizeof(dp));//sizeof要加括号和dp

        for(int i=0;i<n;i++)
        {
            string s;
            cin>>s;
            strcpy(map[i],s.c_str());//少了一个括号。。。
        }
        int sx,sy,ex,ey;

        cin>>sx>>sy>>ex>>ey;

        int result=process(sx,sy,ex,ey);

        if(result!=10001)
        cout<<result<<endl;
        else
        cout<<"die"<<endl;

    }
    return 0;
}
//走迷宫2
#include<cstdio>
#include<algorithm>
#include<iostream>
#include<queue>
using namespace std;
#define ll long long
bool vis[105][105];
char map1[105][105];
int n,m;
int ans[105][105];
int xx[4]= {1,0,0,-1};
int yy[4]= {0,1,-1,0};

typedef struct
{
    int endx,endy;
} NODE;

NODE map2[105][105];

void get_map()
{
    for(int i=0; i<n; i++)
        for(int j=0; j<m; j++)
            cin>>map1[i][j];
}

void init()
{
    for(int i=0; i<105; i++)
        for(int j=0; j<105; j++)
            vis[i][j]=0;
    for(int i=0;i<105;i++)
        for(int j=0;j<105;j++)
            ans[i][j]=3e7+10;
}

int main()
{
    int T;
    cin>>T;
    while(T--)
    {
        int step=0;
        cin>>n>>m;
        get_map();
        init();

        int t;
        cin>>t;

        for(int i=0; i<t; i++)
        {
            int x,y,x1,y1;
            cin>>x>>y>>x1>>y1;
            map2[x][y].endx=x1;
            map2[x][y].endy=y1;
            map1[x][y]='2';
        }
        int sx,sy,ex,ey;
        cin>>sx>>sy>>ex>>ey;
        queue<int>x;
        queue<int>y;
        x.push(sx);
        y.push(sy);
        ans[sx][sy]=0;
        while(!x.empty()||!y.empty())//只有有一个不为空
        {
            if(vis[x.front()][y.front()])//如果已经访问过,弹出
            {
                x.pop();
                y.pop();
                continue;
            }
            if(x.front()==ex&&y.front()==ey)//如果是终点
            {
                break;
            }
            if(map1[x.front()][y.front()]=='2')
            //如果当前格子是传送门入口,传送到出口。
            {
                vis[x.front()][y.front()]=1;
                x.push(map2[x.front()][y.front()].endx);
                y.push(map2[x.front()][y.front()].endy);
                ans[map2[x.front()][y.front()].endx][map2[x.front()][y.front()].endy]=min(ans[map2[x.front()][y.front()].endx][map2[x.front()][y.front()].endy],ans[x.front()][y.front()]+1);
            }
            else
            {
                for(int i=0; i<4; i++)
                {
                    int dx,dy;
                    dx=x.front()+xx[i];
                    dy=y.front()+yy[i];
                    if(!vis[dx][dy]&&dx>=0&&dx<n&&dy>=0&&dy<m&&map1[dx][dy]!='1')
                    //尝试四个方向的移动,如果合法且未访问,入队。
                    {
                        vis[x.front()][y.front()]=1;
                        x.push(dx);
                        y.push(dy);
                        ans[dx][dy]=min(ans[x.front()][y.front()]+1,ans[dx][dy]);
                    }
                }
            }
            x.pop();
            y.pop();

        }
        if(ans[ex][ey]==3e7+10)
            cout<<"die"<<endl;
        else
            cout<<ans[ex][ey]<<endl;
    }
}
//银行的叫号顺序
#include<iostream>
#include<string>
#include<queue>
#include<algorithm>

using namespace std;
typedef pair<int,string> PIS;
//定义一个类型别名 PIS,表示一个包含整数和字符串的 pair,用于存储事件的优先级和名称。


int main() {
	priority_queue<PIS>q;
	int n,realtime=0,time,lev,ret=99999;
	//n 表示事件数量,realtime 表示当前处理时间,time 表示事件发生时间,
	//lev 表示事件优先级,ret 用于确保相同优先级的事件按照输入顺序处理
	string name;
	cin>>n;
	while(n--)
	{
		cin>>time>>lev>>name;
		while(1)
		{
            //将time<=realtime的人全部入队
			if(time<=realtime)
			{
				q.push({lev*100000+ret,name});//体会lev设置为100000和ret为99999的妙处
				ret--;
				break;
			}
			if(!q.empty())//如果每五分钟内没有人则输出上五分钟的人
			{
				cout<<q.top().second<<endl;
				//注意top后面是括号 而不是second后面
				//second 表示这个 pair 对象的第二个元素
				q.pop();
			}
			realtime+=5;
		}
	}
	//在主循环结束后,继续从优先队列中弹出并打印剩余的事件,直到优先队列为空
	while(!q.empty())
	{
		cout<<q.top().second<<endl;
		q.pop();
	}
	return 0;
}
//银行服务
#include <iostream>
#include <algorithm>
#include <queue>

using namespace std;
typedef long long i64;

int main()
{
    int n,off_work;
    cin>>n>>off_work;
    priority_queue<pair<int, string> >q;//注意这里
    int who_is_priority=99999;
    int realtime=0;
    while(n--)
    {
        int time,level;
        string name;
        cin>>time>>level>>name;

        next://注意这里
        if(time<=realtime)
        {
            q.push({level*100000+who_is_priority,name});
            who_is_priority--;
            continue;//注意这里
        }
        if(!q.empty())
        {
            cout<<q.top().second<<endl;
            q.pop();
        }
        realtime+=5;
        goto next;//注意这里
    }
    while(!q.empty()&&realtime<off_work)//注意这里
    {
        cout<<q.top().second<<endl;
        q.pop();
        realtime+=5;
    }
    return 0;
}

 

//勇者斗恶龙
#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    int n,m;
    cin>>n>>m;
    int a[n],b[m];


    while(n!=0||m!=0)
    {
        int i=0,j=0;
        int sum=0;
        
        for(int i=0;i<n;i++)
        cin>>a[i];
        for(int i=0;i<m;i++)
        cin>>b[i];

        sort(a,a+n);
        sort(b,b+m);

        while(i<n&&j<m)
        {
            if(a[i]<=b[j])
            {
                sum+=b[j];//因为前面排序了
                i++;
                j++;
            }
            else
            j++;
        }
        
        if(j==m&&i<n)
        cout<<"Loowater is doomed!"<<endl;
        else
        cout<<sum<<endl;
        cin>>n>>m;
    }
    return 0;
}
//校赛排名
#include <iostream>
#include <algorithm>

using namespace std;

struct Student
{
    int cnt;
    long long time;//注意longlong
    char name[21];
};//注意分号

bool cmp(Student a, Student b)
{
    if(a.cnt != b.cnt)
        return a.cnt > b.cnt;
    else if(a.time != b.time)
        return a.time < b.time;
    else
        return false;//注意false
}

Student student[500000];

int main()
{
    int n;
    scanf("%d", &n);
    for(int i=0; i<n; i++)
        scanf("%d %d %s", &student[i].cnt, &student[i].time, student[i].name);
    stable_sort(student,student+n,cmp);//注意
    for(int i=0; i<n; i++)
        printf("%s\n", student[i].name);
    return 0;
}

20234121 实验二《Python程序设计》实验报告 3、还有就是对ai软件的合理运用,我们不能直接不写,就叫ai代写,我们可以很好的利用ai,可以用它来对我们进行纠正和帮助,真的能提升很大的效率;- 问题2:我在对代码加循环的时候,把true写成了ture,但是我一直没有发现,而且也对以上代码进行了详细的检查,但是也没有发现错误。- 问题1解决方案:我将我的代码对ai进行了询问,很快它就给了我详细的解释,我也就瞬间明白格式错误,而且也告诉了我原因。4、为了在提升一点计算机的难度,我又继续对它编程了复数的运算,使之更复杂一点,okok; 阅读详情

相关推荐

微机实验课-实验二循环程序设计

微机实验课-实验二循环程序设计 William 2018年11月 一、实验介绍          本次实验是使用汇编程序,实现复制和循环程序的设计,并在DOS环境下验证。实验要求有两个,如下。 1.复制:要求将first行中的非负数复制到second行,画出流程图并编写程序。利用DEBUG调试正确。 2.排序:要求将second行中的数据按升序重新排列,画出流程图并编写程序。利用DEBU...

WilliamWang的博客 2万+

python语言程序设计实践教程答案实验二_20184118《Python程序设计》实验二报告

20184118 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级:1841姓名:黄晓雨学号:20184118实验教师:王志强实验日期:2020年4月11日必修/选修: 公选课1.实验内容(一)实验内容设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。考核基本语法、判定语句、循环语句、逻辑运算等知识点。(二)实验要求创建工程项目,使用P...

weixin_40001309的博客 1093

桂电C++面向对象程序设计实验: 实验二 类和对象一

桂电C++面向对象程序设计实验: 实验二 类和对象一 实验内容: (1)有以下程序: /# include using namespace std ; class Time //定义Time类 { public: //数据成员为公用的 int hour ; int minute ; i...

老权仔的博客 4406

20231425 李泽儒《Python程序设计》实验二报告

print("结果:", exponentiation(num1, num2))choice = input("请输入选择(1/2/3/4/5/6/7/8/9): ")print("结果:", logarithm(num1, base))print("结果:", subtract(num1, num2))print("结果:", multiply(num1, num2))print("结果:", divide(num1, num2))print("结果:", add(num1, num2))

2301_80296206的博客 1341

SpringBoot3.X及SpringAi和jdk17以上版本集成MCP协议供大模型调用sse协议

MCP(Model Context Protocol,模型上下文协议)是由 Anthropic 推出的开源协议,旨在实现大型语言模型(LLM)与外部数据源和工具的无缝集成,用来在大模型和数据源之间建立安全双向的链接。目标是成为 AI 领域的“HTTP 协议”,推动 LLM 应用的标准化和去中心化。本文主要讲解SpringBoot3.X版本和jdk17版本如何集成MCP协议 后续还有一个SpringBoot2.7和jdk1.8通过solon来实现@Service。

weixin_47247523的博客 788

ZYNQ RFSoC 的DAC如何做到从 0到Fs频段 信号输出

之前一直没太了解 RFSoC 的DAC如何输出在 Fs/2 到 Fs 频率范围内的信号,例如 ZCU216中的 ZU49DR,其RF-DAC最大采样率是 9.85GSPS,如果想输出的信号中心频率在5.8G,它是如何有效输出在第二奈奎斯特区域范围的信号的。

weixin_44630490的博客 1551

python程序设计实验报告实验二_20191108 实验二《Python程序设计》实验报告

20191108 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级: 1911姓名: 朱家婧学号:20191108实验教师:王志强实验日期:2020年4月X12日必修/选修: 公选课1.实验内容设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。考核基本语法、判定语句、循环语句、逻辑运算等知识点2. 实验过程及结果第一步是加减乘除模:imp...

weixin_39725118的博客 513

Gradle进阶:4:结合Sonarqube进行代码审查

作为代码质量检查的流行工具,比如Sonarqube能够检查代码的“七宗罪”,跟代码结合起来能够更好地提高代码的质量,这篇文章将会介绍如何结合gradle和sonarqube对代码质量与测试覆盖率进行分析。

知行合一 止于至善 1万+

【广州大学程序设计基础实验二:函数】

本篇文章详细写了程序设计基础实验二(函数)板块的相关内容,为了让大家尽快学到想要的知识,文章内没有任何废话,只包含源代码和相应的实验结果等。创作不易,多多点赞

STAB_的博客 2064

视觉检测在激光打码字符检测上的检测案例

在机器视觉检测技术中,OCR识别是比较典型的应用,应用的场景也比较丰富,基本上在制造业,每个工厂或者印刷厂都会用到视觉OCR识别检测,OCR字符识别的原理很简单,通过图像分割后,对字符进行学习、命名。在工业相机拍摄图像后,软件进行处理,从而读取结果。 随着技术的发展,激光打标技术被更多的应用在生产过程中,由激光打标代替油墨进行字符印刷,速度更快、效果更好。 但是随之而来的是在视觉检测上带来的影响,目前市面上应用的字符检测设备大多是由集成商单独开发的软件,在检测油墨印刷时,图像上的字符没有断点,非常连贯,所需

视觉检测设备-视觉检测系统-单张检测设备-卷料印品检测 1462

cellchat安装

cellchat

m0_65188455的博客 5443

20212323 实验二《Python程序设计》实验报告

# 20212323 2021-2022-2

weixin_65542523的博客 351

别再只看图了!代谢组学OPLS-DA分析,R2Y和Q2Y到底怎么看才不踩坑?

本文深入解析代谢组学OPLS-DA分析中的关键指标R2Y和Q2Y,揭示如何避免过拟合陷阱。通过详细解读模型解释能力(R2Y)和预测能力(Q2Y),结合置换检验方法,提供完整的模型评估流程与实战建议,帮助研究者获得可靠的分析结果。

weixin_42638178的博客 196

20234202 实验二《Python程序设计》实验报告

通过本次实验使我对python的运算更好地进行了掌握,激发了我未来学习的浓厚兴趣,希望下个实验可以更加精彩!1.根据上课所学习内容用def创建函数,完成加减乘除以及复数加减乘除运算的编写。2.运行程序:分别输入a和b后按下回车键,再输入想运行的符号按下回车。设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。问题一:输入函数格式错误,导致代码无法正常运行。问题二:输入函数的运算符号与实际函数不匹配。解决方法:修改符号直至与正确的函数匹配。解决方法:修改正确的函数的格式。3.将代码托管到码云。

zz14722829399的博客 328

光储微电网混合储能系统的控制策略

随着社会生产力的不断提高,对不可再生资源的大量消耗,人们已经意识到发展可再生能源的重要性,因此微电网技术作为再生能源利用的有效形式被快速发展。蓄电池容量无限大是传统光储微电网混合储能系统控制策略一种理想形式,但实际上蓄电池的容量是有限度的,传统控制策略在蓄电池剩余电量达到阖值时将无法正常使用,由此提出了光储微电网混合储能系统的新型控制策略,又结合实际情况,对开关进行了改进,利用开关与二极管并联,使其拥有四种工作状态,当储能元件剩余电量达到阈值时,可自动恢复电量降低成本,提高并输出电池电能质量。

nhkg888的博客 1733

基于YOLOv10的微小目标检测,多头检测器提升小目标检测精度

引入多头检测器助力YOLOv10,暴力提升小目标检测性能

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 2569

20224102段浩楠 实验二《Python程序设计》实验报告

c1 = eval(input("请输入复数1(eg:1+2j):"))c2 = eval(input("请输入复数2(eg:1+2j):"))a = int(input("请输入a="))b = int(input("请输入b="))a = int(input("请输入a="))b = int(input("请输入b="))a = int(input("请输入a="))b = int(input("请输入b="))a = int(input("请输入a="))

2401_83167813的博客 875

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

python程序设计报告-20191206 实验二《Python程序设计》实验报告

学号 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级: 1912姓名: 陈发强学号: 20191206实验教师:王志强实验日期:2020年4月19日必修/选修: 公选课1.实验内容设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。考核基本语法、判定语句、循环语句、逻辑运算等知识点2. 实验过程及结果pre = '''加减乘除 取模 整...

weixin_37988176的博客 723

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

python实验报告二_20183202 实验二《Python程序设计》实验报告

20183202 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级: 1842姓名: 李思远学号:20183202实验教师:王志强实验日期:2020年4月11日必修/选修: 公选课1.实验内容(1)设计并完成一个完整的应用程序,完成加减乘除摸等运算,功能多多益善。(2)考核基本语法、判定语句、循环语句、逻辑运算等知识点2. 实验过程及结果2.1分析数学计...

weixin_39737111的博客 545

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

大一python实验答案_20192111 实验二《Python程序设计》实验报告

20192111 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级: 1921姓名: 蒋龙腾学号:20192111实验教师:王志强实验日期:2020年4月11日必修/选修: 公选课1.实验内容设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。考核基本语法、判定语句、循环语句、逻辑运算等知识点2. 实验过程及结果import mathi =...

weixin_39694264的博客 737

20231313实验二《Python程序设计》实验报告

1、在初步进行编写中,忽视了程序在运行时可能出现的错误情况,比如除以0、输入无效字符等,需要对这些错误情况进行适当的处理,给出提示信息,2、模运算,需确保理解清楚其定义并正确实现,同时需要注意负数取模的情况。

qq_62532919的博客 526

python实验二报告_20172304 2019-2020-2 《Python程序设计》实验二报告

20172304 2019-2020-2 《Python程序设计》实验二报告课程:《Python程序设计》班级: 1723姓名: 段志轩学号:20172304实验教师:王志强实验日期:2020年4月15日必修/选修: 公选课1.实验内容设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。考核基本语法、判定语句、循环语句、逻辑运算等知识点2. 实验过程及结果首先这个程序是为了实现计算器...

weixin_42500130的博客 459

程序设计分组训练-实验二报告

程序设计分组训练-实验二报告 去发现同类优质开源项目:https://gitcode.com/ 简介 本仓库包含了一个程序设计分组训练的实验二报告资源文件。该文件主要功能是自动生成三元组数据,并在命令行窗口(cmd)中展示。 文件说明 程序设计分组训练-实验二报告: 用于生成三元组数据文件并在cmd窗口中展示的实验报告。 注意事项 请确保在合适的编程环境下运行此报告,以获得正确的输出结果。 ...

gitblog_06742的博客 431

华南农业大学C语言程序设计(实验二)

标题华南农业大学C语言程序设计(实验二) 1117 变量定义,按要求完成程序 时间限制:1000MS 内存限制:65536K 提交次数:4289 通过次数:2746 题型: 填空题 语言: GCC Description 下面给出一个程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 #include "stdio.h" main() { _______________________ /*定义整型变量a和b*/ _______________________ /*定义

怀瑾握瑜 5435

20221328 实验二《Python程序设计》实验报告

课程:《Python程序设计》班级: 2213姓名: 马申明学号:1328实验教师:王志强实验日期:2023年3月23日必修/选修: 公选课。

liudaotongming的博客 367

【JAVA程序设计】 实验二:数组与函数

【JAVA程序设计】 实验二:数组与函数 一、实验目的: 1、学会使用一维与二维数组管理简单数据。 2、学会编写与使用静态函数。 3、学会编写简单的菜单驱动(命令行式)的Java程序 二、实验环境: BlueJ 三、实验内容: 1.定义一个int型的一维数组,数组的长度由键盘输入,为数组中的元素随机赋值。依次完成如下功能: (1) 输出数组中的元素。每行输出最多十个数字,数字之间用Tab键分隔; 代码: import java.util.Scanner; public class work2 { p

w_1106的博客 1642
上一篇: 程序设计实验一
下一篇: 程序设计实验三
zero_019
博客等级 码龄3年 350粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zero_019

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值