Java实习一

简单的二元一次方程求解

import java.lang.Math;
import java.util.Scanner;
public class Solve{
    public static void main(String args[]){
        Scanner reader = new Scanner(System.in);
        int a = reader.nextInt();
        int b = reader.nextInt();
        int c = reader.nextInt();
        double ans1 = 0.0, ans2 = 0.0;
        double det = b * b - 4 * a * c;
        if(a == 0 && b != 0){
            System.out.println("该方程只有一个根:" + -1*c/b);
            return ;
        }
        if(a == 0 && b == 0){
            System.out.println("没有解");
            return ;
        }
        if(det < 0){
            System.out.println("没有解");
            return ;
        }
        else if(det == 0){
            ans1 = -1*b/(2*a);
            System.out.println("该方程只有一个根:" + ans1);
        }else{
            det = Math.sqrt(det);
            ans1 = -1*b + det;
            ans1 /= 2.0*a;
            ans2 = -1*b - det;
            ans2 /= 2.0*a;
            System.out.println("该方程有且仅有两个:");
            System.out.println("第一个根为:" + ans1);
            System.out.println("第二个根为:" + ans2);
        }
    }

}

简单的学生类

package student;

import java.lang.String;
import java.util.Scanner;

class SchoolStudent{
    String name;
    int grade;
    void set(String name, int grade){
        this.name = name;
        this.grade = grade;
    }
    SchoolStudent get(SchoolStudent st){
        st.name = this.name;
        st.grade = this.grade;
        return st;
    }
    SchoolStudent(String name, int grade){
        this.name = name;
        this.grade = grade;
    }
    SchoolStudent(){
        this.name = "";
        this.grade = 0;
    }
}
    public class Student{
        public static void main(String args[]){
            while(true){
                Scanner reader = new Scanner(System.in);
                System.out.println("姓名:");
                String name = reader.nextLine();
                System.out.println("成绩:");
                int grade = reader.nextInt();
                SchoolStudent tom = new SchoolStudent(name,grade);
                System.out.println("学生姓名:" + tom.name);
                System.out.println("成绩:" + tom.grade);
            }
        }
}

五子棋

五子棋文件

import java.util.Scanner;

public class wuziqi
{
    static int maxn = 16;
    private static char[][] map = new char[maxn][maxn];
    private static char[] baihei= {'○','●'};
    private static int[] tox = {-1,0,-1,-1,1,1,0,1};
    private static int[] toy = {0,-1,-1,1,-1,1,1,0};

    public static void init()
    {
        for(int i=1; i<maxn; i++)
            for(int j=1; j<maxn; j++)
                map[i][j] = '+';
    }
    public static void paint()
    {
        for(int i=1; i<maxn; i++)
        {
            for(int j=1; j<maxn; j++)
            {
                System.out.print(map[i][j]);
            }
            System.out.println();
        }
    }
    public static boolean isLegal(int i, int j)
    {
        if(i>15 || i<1 || j>15 || j<1)
        {
            return false;
        }
        return true;
    }

    private static int isWin(int p,int x,int y)
    {
        for(int i=0; i<4; i++)
        {
            int sum = 1;
            int xx = x+tox[i];
            int yy = y+toy[i];
            while(map[xx][yy]==baihei[p%2] && isLegal(xx,yy))
            {
                sum++;
                xx = xx+tox[i];
                yy = yy+toy[i];
            }
            xx = x+tox[7-i];
            yy = y+toy[7-i];
            while(map[xx][yy]==baihei[p%2] && isLegal(xx,yy))
            {
                sum++;
                xx = xx+tox[7-i];
                yy = yy+toy[7-i];
            }
            if(sum>=5)
                return 1;
        }
        return 0;
    }
    public static void main(String[] args)
    {
        init();
        int cnt = -1; //白先
        while(true)
        {
            System.out.println("请输入落棋的坐标,以X Y的形式:");
            Scanner reader = new Scanner(System.in);
            int x1 = reader.nextInt();
            int y1 = reader.nextInt();
            while(!isLegal(x1,y1) || map[x1][y1] != '+')
            {
                System.out.println("请您重新输入落棋的坐标:");
                reader = new Scanner(System.in);
                x1 = reader.nextInt();
                y1 = reader.nextInt();
            }
            cnt++;
            map[x1][y1] = baihei[cnt%2];
            paint();
            if(isWin(cnt,x1,y1)==1)
            {
                System.out.println("恭喜您赢了");
                break;
            }
            if(cnt == 15*15-1)
            {
                System.out.println("平局");
                break;
            }
        }
    }
}
时间: 2024-10-24 17:58:32

Java实习一的相关文章

从零基础到拿到网易Java实习offer,我做对了哪些事

作为一个非科班小白,我在读研期间基本是自学Java,从一开始几乎零基础,只有一点点数据结构和Java方面的基础,到最终获得网易游戏的Java实习offer,我大概用了半年左右的时间.本文将会讲到我在这半年里做对了哪些事情. 前言 研究生时期的方向选择 对于即将读研的同学来说,一般有两件事很重要,一件事是选择导师,一件事是选择方向. 我就读于华中科技大学,主修软件工程专业,我在刚读研的时候最头疼的也是这两件事情.首先说明一下,我读的是专硕,所以实验室一般不搞科研,有部分导师会带项目,由于我不打算在

在b站自学Java找到了Java实习

前段时间我朋友介绍我看一套b站Java教程 说这个教程是b站口碑最好的 我去看了一段时间 确实讲的非常好 这套是求知讲堂出的 网址:https://www.bilibili.com/video/av61604219  每天都在坚持在b站自学2-3个小时 现在已经找到了Java实习 有想跟我一起自学Java的 一起学习 加油 原文地址:https://www.cnblogs.com/chenfeng123123/p/11773791.html

双非菜鸟的Java实习面试经历..

因为比较菜,作为土著就想留在杭州(现在想想实习而已也许应该出去拼一拼的..),因此没啥互联网公司的面经(51笔试凉蘑菇街简历凉),但感觉混了这么久还是得在这里留下点什么,就写一下恒生和大华的实习面试经验吧.. 恒生-交易所事业部: 2个面试官面5个人..说实话虽然面试形式很奇怪,但压力确实小点,时间有点遥远记得不是很清楚,说下记住的 1.自我介绍(在校经历.项目,感觉这种情况下本科生面对研究生劣势很大..),会针对每个人的简历提点项目相关的问题. 2.每个人举例两个碰到过的异常 3.cookie

关于前段时间的Java实习面试总结

前言:关于前段时间(大概在五月下旬)的3+1面试,一直想做个总结,但是后面接踵而来的实验.考试.做课程设计,不得不把这事搁在现在来完成. 3+1面试总结 3+1,是学校与企业联合培养人才的一种方案,面向大三的学生.这一次,我们计算机专业和网络工程专业一共大概500多人,而实习岗位只有80个,还是有一点竞争的.毕竟学院要求不可以自己去外面找实习,只能在这里抢或者留在学校学习.说什么我都不想在大四呆在学校了. 清晰回忆起5月19日的下午,我带着准备好了的简历,提前30多分钟来到学院楼,企业也陆陆续续

阿里巴巴 2016 java 实习岗位笔试题(昨天出炉)

1 Hadoop是当下大数据处理的事实标准之一,具有广泛的应用场景.作为Hadoop生态基础的HDFS分布式文件系统,它具有极高的容错性,适合部署在廉价的机器上,并能提供高吞吐量的数据访问能力,专为大规模数据存取而设计. 请用Java程序来模拟HDFS的三个应用场景:写文件.读文件.Node节点单点故障.场景1为必选,场景2和3可选但必需延续场景1的实现方案.程序请使用JDK原生API来实现. 问题1:请用文字阐述你的设计方案. 问题2:请用Java程序来分别实现你的方案. 2 优惠券是目前较为

Java实习二

链表(java实现) Link.java public class Link{ private Node first; public Link(){ this.first = null; } //判断是否为空 public boolean isEmpty(){ if(this.first == null) return true; return false; } //插入头结点 public void insertHeadNode(int data){ Node tmp = new Node(d

一次java实习笔试题

创建对象的方式有几种?是什么? 答案 商品价格用什么类型表示 Java语言提供了另外一种数据类型BigDecimal,可以表示精确的浮点数,适合用作财务计算的数据类型.但是需要注意的是,在使用BigDecimal的时候,BigDecimal有多个重载的构造方法能表示精度的值,只有用参数为String类型的构造方法才能表示. int可以强转成byte类型吗,会出现什么问题 可以,但是很容易数字越界,byte只有-128到127 常用的集合 List Set Map详细 进程和线程的关系,创建线程有

为期15天的JAVA实习

感谢西安智悦信息科技有限公司提供优良环境与技术指导. -------------------------------------- 项目运行软件 sqlyog+myeclipse2015 附件大小  25MB 内容包含 1.数据库设计文本 2.项目文件 3.解说ppt 4.其他文件 -------------------------------------- 夜行百里路,只为在前川! 文件下载站点 http://down.51cto.com/data/2228155/

第二次java实习笔试(小公司)总结

映象最深刻的是第一题, 34的17次方对6取余, 结果是多少? A.2 B.3 C.4 D.5 看到题我蒙了一下,,要算出来吗?..17次方还是算了吧,而且还没给草稿纸. 那么,怎么办呢? 34除以6的余数为4,,那么30的17次方是肯定能整除6的,而余数会以4的17次方那出来,,可以成功的简化问题,, !!但是,我脑子突然抽风了,,4的17次方,我竟然拿来4*17=68,在地铁上突然想到的我,突然有点想跳下去的冲动(开玩笑哈:P) 回到正题,4的17次方对6求余..首先4除以6等于0余4.,,