zoukankan      html  css  js  c++  java
  • 问题 D: 接口实例(C#,IShape)

    题目描述

    接口实例。接口和类如下图所示,根据给出代码,补写缺失的代码,然后在Program类的静态Main方法中验证所实现的类。

    using System;
    namespace Myinterface
    {
        public interface IShape
        {
            double Perimeter();
            double Area();
        }
        class Circle : IShape
        {
            public double Radius { get; set; }
            public Circle(double r)
            {
                Radius = r;
            }
            public double Area()
            {
                return Math.PI * Radius * Radius;
            }
            public double Perimeter()
            {
                return 2 * Math.PI * Radius;
            }
        }
        class Rectangle : IShape
        {
                /////////////////////////////////////////////////////////////////
                
                //请填写代码,实现输出矩形的面积和周长

                /////////////////////////////////////////////////////////////////
            
        }

        class Program
        {
            static void Main(string[] args)
            {
                double w, h;
                double.TryParse(Console.ReadLine(), out w);
                double.TryParse(Console.ReadLine(), out h);
                Rectangle r = new Rectangle(w, h);
                Console.WriteLine("area={0},Perimeter={1}",r.Area(), r.Perimeter());
            }
        }
    }

    输入

    输入矩形长、高,如
    10
    3

    输出

    area=30,Perimeter=26

    样例输入

    10
    3

    样例输出

    area=30,Perimeter=26

    提示

    需要考虑输入非数字、负数等

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace 接口实例
    {
        public interface IShape
        {
            double Perimeter();
            double Area();
        }
        class Circle : IShape
        {
            public double Radius { get; set; }
            public Circle(double r)
            {
                Radius = r;
            }
            public double Area()
            {
                return Math.PI * Radius * Radius;
            }
            public double Perimeter()
            {
                return 2 * Math.PI * Radius;
            }
        }
        class Rectangle : IShape
        {
            public double Height { get; set; }
            public double Length { get; set; }
            public Rectangle(double l, double h)
            {
                Height = h;
                Length = l;
            }
            public double Area()
            {
                if (Height <= 0 || Length <= 0)
                {
                    return 0;
                }
                return Height * Length;
            }
            public double Perimeter()
            {
                if (Height <= 0 || Length <= 0)
                {
                    return 0;
                }
                return (Height + Length) * 2;
            }
    
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                double w, h;
                double.TryParse(Console.ReadLine(), out w);
                double.TryParse(Console.ReadLine(), out h);
                Rectangle r = new Rectangle(w, h);
                Console.WriteLine("area={0},Perimeter={1}", r.Area(), r.Perimeter());
            }
        }
    }
    

      

  • 相关阅读:
    install jqdatasdk
    分布式唯一ID自增(雪花算法)
    JVM内存布局及GC知识
    double涉及大数据的时候会变成科学计数法
    IDEA中的JUNIT测试
    spring boot 整合 swagger2
    springboot 报错nested exception is java.lang.IllegalStateException: Failed to check the status of the service xxxService No provider available for the service
    解决jar包依赖冲突(idea)
    IDEA中springboot的热部署
    Exception in thread "main" java.lang.AbstractMethodError: org.springframework.boot.context.config.ConfigFileApplicationListener.supportsSourceType(Ljava/lang/Class;)Z
  • 原文地址:https://www.cnblogs.com/mjn1/p/12619083.html
Copyright © 2011-2022 走看看