Java面向对象5(V~Z)
计算各种图形的周长(接口与多态)(SDUT 3338)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(in.hasNext()){
String str = in.nextLine();
String[] strs = str.split(" ");
double []a = new double [100];
int i;
for(i = 0; i < strs.length; i++)
a[i] = Integer.parseInt(strs[i]);
double x,y,z;
if(i == 1){
x = a[0];
if(x <= 0)
System.out.println("0.00");
else{
Circle c = new Circle(x);
System.out.printf("%.2f\n",c.length());
}
}
else if(i == 2){
x = a[0];
y = a[1];
if(x <= 0)
System.out.println("0.00");
else{
Rectangle r = new Rectangle(x,y);
System.out.printf("%.2f\n",r.length());
}
}
else if(i == 3){
for(i = 0; i < 3; i++){
for(int j = 0; j < i; j++){
if(a[j] > a[j+1]){
double t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
}
}
x = a[0];
y = a[1];
z = a[2];
if(x + y > z ){
if(x <= 0)
System.out.println("0.00");
else{
Triangle T = new Triangle(x,y,z) ;
System.out.printf("%.2f\n",T.length());
}
}
else
System.out.println("0.00");
}
}
in.close();
}
}
interface Shape{
//public void shape();
double length();
}
class Triangle implements Shape{
double x1,y1,z1;
Triangle(double x1, double y1 , double z1){
this.x1 = x1;
this.y1 = y1;
this.z1 = z1;
}
public double length(){
return x1 + y1 + z1;
}
}
class Rectangle implements Shape{
double x,y;
Rectangle(double x, double y){
this.x = x;
this.y = y;
}
public double length(){
return (x + y) * 2;
}
}
class Circle implements Shape{
double z;
Circle(double z){
this.z = z;
}
public double length(){
return 2 * 3.14 * z;
}
}
计算长方形的周长和面积(类和对象)(SDUT 3339)
import java.util.*;
class Rect{
public int n;
public int m;
Rect(int n){
System.out.println(n+" "+n+" "+4*n+" "+n*n);
}
Rect(int n, int m){
System.out.println(n+" "+m+" "+(2*n+2*m)+" "+m*n);
}
}
public class Main{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
while ( scanner.hasNext() ){
String h = scanner.nextLine();
char[] a = h.toCharArray();
int temp = 0;
int i;
for ( i = 0;i < a.length; i++ ){
if ( a[i] == ' ' )
temp = 1;
}
if ( temp == 0 ){
int b = Integer.parseInt(h);
if ( b <= 0 )
System.out.println("0 0 0 0");
else{
Rect h1 = new Rect(b);}
}
else {
String[] h3 = h.split(" ");
int e = Integer.parseInt(h3[0]);
int r = Integer.parseInt(h3[1]);
if ( e <= 0||r <= 0 )
System.out.println("0 0 0 0");
else{
Rect h1 = new Rect(e,r);}
}
}
}
}
X 答答租车系统(面向对象综合练习)(SDUT 3349)
import java.util.*;
class Car
{
int name, money, passenger;
double weight;
public Car(int name, int money, double weight, int passenger)
{
this.name = name;
this.money = money;
this.passenger = passenger;
this.weight = weight;
}
}
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
Car [] c =
{
new Car(0, 5, 0, 800),
new Car(1, 5, 0, 400),
new Car(2, 5, 0, 800),
new Car(3, 51, 0, 1300),
new Car(4, 55, 0, 1500),
new Car(5, 5, 0.45, 500),
new Car(6, 5, 2, 450),
new Car(7, 0, 3, 200),
new Car(8, 0, 25, 1500),
new Car(9, 0, 35, 2000)
};
int peoplesum = 0;
int moneysum = 0;
double weightsum = 0;
int order = sc.nextInt();
if(order == 1)
{
int num = sc.nextInt();
for(int i = 0; i < num; i++)
{
int j = sc.nextInt() - 1;
int day = sc.nextInt();
moneysum += c[j].money * day;
peoplesum += c[j].passenger * day;
weightsum += c[j].weight * day;
}
System.out.println(moneysum + " " + String.format("%.2f", weightsum) + " " + peoplesum);
}
else
{
System.out.println(moneysum + " " + String.format("%.2f", weightsum) + " " + peoplesum);
}
sc.close();
}
}
Y 分数四则运算 (SDUT 3849)
import java.util.Scanner;
import java.text.DecimalFormat;
class Sum {
int x1, y1, x2, y2;
char str;
Sum(int n1, int m1, int n2, int m2, char op) {
x1 = n1;
x2 = n2;
y1 = m1;
y2 = m2;
str = op;
}
int getGcd(int a, int b) {
int n = a, m = b;
while (m > 0) {
int x = n;
n = m;
m = x % m;
}
return n;
}
void getAns() {
int x = getGcd(y1, y2);
int a, b, c, d, ans1 = 0, ans2 = 0;
a = x1;
b = y1;
c = x2;
d = y2;
if (str == '+' || str == '-') {
int lcm = b * d / x;
a = a * d / x;
c = c * b / x;
if (str == '+') {
ans1 = a + c;
} else if (str == '-') {
ans1 = a - c;
}
ans2 = lcm;
if (ans1 < 0)
x = -ans1;
else
x = ans1;
x = getGcd(x, ans2);
if (ans1 % x == 0 && ans2 % x == 0) {
ans1 /= x;
ans2 /= x;
}
} else if (str == '*') {
a = a * c;
b = b * d;
ans1 = a;
ans2 = b;
int temp = getGcd(ans1, ans2);
if (ans1 % temp == 0 && ans2 % temp == 0) {
ans1 /= temp;
ans2 /= temp;
}
} else if (str == '\\') {
int temp = c;
c = d;
d = temp;
a = a * c;
b = b * d;
ans1 = a;
ans2 = b;
int te = getGcd(ans1, ans2);
if (ans1 % te == 0 && ans2 % te == 0) {
ans1 /= te;
ans2 /= te;
}
}
if (ans1 == 0 && ans1 != ans2 || ans2 == 1)
System.out.println(ans1);
else if (ans1 == ans2)
System.out.println(1);
else
System.out.println(ans1 + "/" + ans2);
}
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// DecimalFormat df = new DecimalFormat(".00");
Sum p;
String s;
char op = 0;
while (sc.hasNext()) {
s = sc.next();
int temp = 0;
int xx[] = new int[5];
int top = 0;
int x1, x2, y1, y2;
int len = s.length();
for (int i = 0; i < len; i++) {
if (s.charAt(i) >= '0' && s.charAt(i) <= '9') {
xx[top] = xx[top] * 10 + (s.charAt(i) - '0');
} else {
top++;
if (s.charAt(i) == '+' || s.charAt(i) == '-' || s.charAt(i) == '*' || s.charAt(i) == '\\')
op = s.charAt(i);
}
}
x1 = xx[0];
y1 = xx[1];
x2 = xx[2];
y2 = xx[3];
// System.out.println(x1 + " " + y1 + " " + x2 + " " + y2 + " " + op);
p = new Sum(x1, y1, x2, y2, op);
p.getAns();
}
}
}
Z Shift Dot (SDUT 3848)
import java.util.*;
class Dot {
int x, y;
Dot() {
}
Dot(int n, int m) {
x = n;
y = m;
}
void getAns(int a, int b) {
x += a;
y += b;
}
void Print() {
System.out.println("(" + x + "," + y + ")");
}
}
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int x, y, n, a, b;
while (sc.hasNext()) {
x = sc.nextInt();
y = sc.nextInt();
n = sc.nextInt();
Dot p = new Dot(x, y);
for (int i = 0; i < n; i++) {
a = sc.nextInt();
b = sc.nextInt();
p.getAns(a, b);
}
p.Print();
}
}
}
Java面向对象5(V~Z)的更多相关文章
- Java.lang.NoSuchMethodError: 后带 V/Z等字母的
知道 Java.lang.NoSuchMethodError: 后带 V/Z等字母的 错误,一般都是 jar包冲突引起的,找到冲突的jar包,去掉一个就好
- java 面向对象 2
一.JAVA类的定义 JAVA里面有class关键字定义一个类,后面加上自定义的类名即可.如这里定义的person类,使用class person定义了一个person类,然后在person这个类的类 ...
- Java面向对象 IO (四)
Java面向对象 IO (四) 知识概要: (1)打印流 (2)序列流 SequenceInputStream (3)ObjectInputStream与Ob ...
- Java面向对象 其他对象
Java面向对象 其他对象 知识概要: (1)可变参数 (2)静态导入 (3)System (4)Runtime (5)Date Calendar (6)Math 本 ...
- Java面向对象 集合(下)
Java面向对象 集合(下) 知识概要: (1)Map集合的体系结构 (2)Map集合的方法 (3)HashMap TreeMap (4)集合框架中的常用工具类 ( ...
- Java面向对象 集合(上)
Java面向对象 集合(上) 知识概要: (1)体系概述 (2)共性方法 (3)迭代器 (4)list集合 (5)Set 集合 体系概述: 集 ...
- Java面向对象 继承(上)
Java面向对象 继承 知识概要: (1)继承的概述 (2)继承的特点 (3)super关键字 (4)函数覆盖 (5) 子类的实例化过程 (6) final关键字 (1)继承 ...
- Java面向对象----个人参考资料
Java面向对象 :什么是面向对象.类与对象.封装.构造方法.static关键字.继承.抽象类.接口.多态 一.什么是面向对象 1.面向过程思想 面向过程:(PO,Procedure Oriented ...
- 2017-2018-2 20165318 实验三《Java面向对象程序设计》实验报告
2017-2018-2 20165318 实验三<Java面向对象程序设计>实验报告 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:孙晓暄 ...
- 20145122《Java面向对象程序设计》实验二实验报告
实验名称: Java面向对象程序设计 实验内容: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 PSP时间 步骤 ...
随机推荐
- 安装 Dashboard 插件
Kubernetes Dashboard 是 k8s集群的一个 WEB UI管理工具,代码托管在 github 上,地址:https://github.com/kubernetes/dashboard ...
- getContextPath、getServletPath、getRequestURI、getRealPath、getRequestURL、getPathInfo();的区别
<% out.println("getContextPath: "+request.getContextPath()+"<br/>"); ou ...
- 如何理解归一化(Normalization)对于神经网络(深度学习)的帮助?
如何理解归一化(Normalization)对于神经网络(深度学习)的帮助? 作者:知乎用户链接:https://www.zhihu.com/question/326034346/answer/730 ...
- SpringBoot中获取spring.profiles.active的值
一.网上很多采用@Profile("dev")的方式获取,但是这个是类级别的 二.开发中可能需要代码级别 1.刚开始我想通过classpath下的文件读取方式,麻烦死了,于是换了个 ...
- python 画正态曲线
import numpy as np import matplotlib.pyplot as plt import math # Python实现正态分布 # 绘制正态分布概率密度函数 u = 0 # ...
- Web API与MVC控制器的区别
Web API属于ASP.NET核心平台的一部分,它利用MVC框架的底层功能方便我们快速的开发部署WEB服务.我们可以在常规MVC应用通过添加API控制器来创建web api服务,普通MVC应用程序控 ...
- django inclusion用法
概述: inclusion主要的是生成html标签, 返回的是一个字典,大分部跟simple_tag类似, simple_tag可返回任意类型的值 定义inclusion from django im ...
- 1.JavaWeb 知识点概览
1.tomcat服务器的安装和配置.http协议 1.1 虚拟目录的 /*映射*/(配置Context元素)(server.xml catalina\localhost\) http://blog.c ...
- shell脚本——数组
连续的变量 解决:变量过多的问题,在同一类变量中,不需要定义多个名字,而是以数组的方式来定义 定义数组: declare -I 定义整数 declare -a 定义数组 declare -A 定义嵌套 ...
- Computer Vision_1_Active Appearance Models :Active Appearance Models——1998
此为计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面. 1. Active Appearance Models 活动表观模型和活动轮廓模型基本思想来源 Snake,现在 ...