• 20182323 2019-2020-1 《数据结构与面向对象程序设计》实验四报告


    学号20182323 2019-2020-1 《数据结构与面向对象程序设计》实验四报告

    课程:《程序设计与数据结构》
    班级: 1823
    姓名: 曹骞
    学号: 20182323
    实验教师:王志强
    实验日期:2019年9月30日
    必修/选修: 必修

    1.实验内容

    (一)Java Socket编程

    1.学习蓝墨云上教材《Java和Android编程》“第16章 输入/输出 ”和“第22章 网络”,学习JavaSocket编程
    2.结对编程。结对伙伴A编写客户端SocketClient.java,结对伙伴B编写服务器端。
    3.截图加学号水印上传蓝墨云,代码push到码云,并撰写实验报告。

    (二)Java和密码学

    参考 http://www.cnblogs.com/rocedu/p/6683948.html
    以结对的方式完成Java密码学相关内容的学习(帖子中所有代码和相关知识点需要学习)。提交学习成果码云链接和代表性成果截图,要有学号水印。

    (三)编写有理数/复数计算器

    结对编程,结对伙伴A编写有理数计算器。结对伙伴B编写复数计算器。截图加水印上传蓝墨云,代码push码云

    (四)远程有理数计算器

    结对编程,结对伙伴A编程实现客户端,结果伙伴B实现服务器端。
    客户端通过键盘输入一个有理数计算的公式(例如:1/4 + 1/6 = ),并把该公式以字符串的形式发送给伙伴B(服务器端),服务器端根据字符串计算出结果为5/12,并把结果返回给客户端A,A收到结果后输出结果。截图加水印上传蓝墨云,代码push码云。

    (五)远程复数计算器

    结对编程,结对伙伴B编程实现客户端,结果伙伴A实现服务器端。
    客户端通过键盘输入一个有理数计算的公式(例如:1/4 + 1/6 = ),并把该公式以字符串的形式发送给伙伴A(服务器端),服务器端根据字符串计算出结果为5/12,并把结果返回给客户端B,B收到结果后输出结果。截图加水印上传蓝墨云,代码push码云。

    2. 实验过程及结果

    • java Socket编程:

    • Java和密码学:主要试验利用代码进行简单的凯撒密码加密与解密。

    • 编写有理数/复数计算器:

    • 远程有理数/复数计算器:利用第三个实验和第一个实验。将二者有机结合成为一个可以远程使用的简单远程计算程序。

    3. 实验过程中遇到的问题和解决过程

    • 问题1:服务器启动后客户端无法有效链接。

    • 问题1解决方案:查看ip地址后发现是电脑设置的ip地址不对,导致无法连接。重新修改代码中IP地址数字解决问题。

    • 问题2:客户端输入数据传给服务器后,出现大量错误提示,同时程序错误退出。

    • 问题2解决方案:客户端输入的数据类型与服务器要求的类型不符合,导致服务器的计算程序无法正确处理这一字符串,并将他正确运算。

    其他(感悟、思考等)

    这次实验太难了,怪我国庆没有好好学习。

    参考资料

  • 相关阅读:
    创建类以及引用一个类
    修改hosts文件
    微信第三方登录接口开发
    Android定位
    Leetcode 102. Binary Tree Level Order Traversal
    Leetcode 725. Split Linked List in Parts
    Leetcode 445. Add Two Numbers II
    Leetcode 328. Odd Even Linked List
    Leetcode 237. Delete Node in a Linked List
    Leetcode 234. Palindrome Linked List
  • 原文地址:https://www.cnblogs.com/caoqian1314/p/11633052.html
Copyright © 2020-2023  润新知