7-11 sdut-oop-2 Shift Dot(类和对象) (10 分)
Posted ~晚风微凉~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了7-11 sdut-oop-2 Shift Dot(类和对象) (10 分)相关的知识,希望对你有一定的参考价值。
给出平面直角坐标系中的一点,并顺序给出n个向量,求该点根据给定的n个向量位移后的位置。
设计点类Point,内含:
(1)整型属性x和y,表示点的横坐标和纵坐标;
(2)带参构造方法,便于使用初始值构造该类对象;
(3)点移动的方法move(x1,y1),其 中x1和y1表示移动的向量,该方法返回移
(4)动后的新的点对象
(5)展示点对象的字符串方法toString(),以“(横坐标,纵坐标)”的形式。
输入格式:
多组输入。
第一行是三个整数x,y,n,表示点的坐标(x,y),和向量的个数n。
接下来n行,每行两个数xi,yi,表示第i个向量。
题目中所有数据不会超出整形范围。
输出格式:
对于每组输入,输出一行,形式为:"(x,y)",表示点的最终点位置的横坐标和纵坐标。
输入样例:
0 0 1
2 3
0 0 2
1 2
2 3
输出样例:
(2,3)
(3,5)
import java.util.Scanner;
class Point{
int x,y;//成功后,试一下同时弄两个
public Point(int x,int y){
this.x=x;
this.y=y;
}
public void Move(int x,int y){
this.x+=x;
this.y+=y;
}
public String toString(){
return "("+this.x+","+this.y+")";
}
}
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int x,y,n,xi,yi;
while(in.hasNextLine())
{
Point a=new Point(in.nextInt(),in.nextInt());
n=in.nextInt();
while(n-->0)
{
a.Move(in.nextInt(),in.nextInt());//a.莫忘莫忘
}
System.out.println(a.toString());
}
}
}
其实也可以不需要创建类,这个有点像C语言的函数
(然后我并没有按题目要求的,其中的Move方法去返回它的新的点对象)
以上是关于7-11 sdut-oop-2 Shift Dot(类和对象) (10 分)的主要内容,如果未能解决你的问题,请参考以下文章