Advertisement
Vladislav_Bezruk

Untitled

Apr 8th, 2022
1,285
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.54 KB | None | 0 0
  1. /*
  2. Самостійно придумати абстрактний клас і похідні від нього класи.
  3. Продемонструвати роботу похідних класів.
  4. */
  5. /*
  6.  * Created by SharpDevelop.
  7.  * User: vladyslavbezruk
  8.  * Date: 09.04.2022
  9.  * Time: 0:12
  10. */
  11.  
  12. using System;
  13.  
  14. namespace task_2
  15. {
  16.     abstract class Weapon
  17.     {
  18.         protected double price;
  19.        
  20.         protected Weapon()
  21.         {
  22.             price = 0;
  23.         }
  24.        
  25.         public abstract void input();
  26.        
  27.         public abstract void output();
  28.        
  29.         public abstract void action();
  30.     }
  31.    
  32.     class Machine_gun : Weapon
  33.     {
  34.         private int bullets_count;
  35.        
  36.         public Machine_gun() : base()
  37.         {
  38.             bullets_count = 0;
  39.         }
  40.        
  41.         public override void input()
  42.         {
  43.             Console.WriteLine("Enter info about machine gun:");
  44.             Console.WriteLine("price:");
  45.             price = Convert.ToDouble(Console.ReadLine());
  46.             Console.WriteLine("bullets count:");
  47.             bullets_count = Convert.ToInt32(Console.ReadLine());
  48.             Console.Write('\n');
  49.         }
  50.        
  51.         public override void output()
  52.         {
  53.             Console.WriteLine("Info about machine gun:");
  54.             Console.WriteLine("price: {0}", price);
  55.             Console.WriteLine("bullets count: {0}", bullets_count);
  56.             Console.Write('\n');
  57.         }
  58.        
  59.         public override void action()
  60.         {
  61.             Console.WriteLine("I'm a machine gun. I can shoot");
  62.             Console.Write('\n');
  63.         }
  64.     }
  65.    
  66.     class Grenade : Weapon
  67.     {
  68.         private double range_radius;
  69.        
  70.         public Grenade() : base()
  71.         {
  72.             range_radius = 0;
  73.         }
  74.        
  75.         public override void input()
  76.         {
  77.             Console.WriteLine("Enter info about grenade:");
  78.             Console.WriteLine("price:");
  79.             price = Convert.ToDouble(Console.ReadLine());
  80.             Console.WriteLine("range radius:");
  81.             range_radius = Convert.ToDouble(Console.ReadLine());
  82.             Console.Write('\n');
  83.         }
  84.        
  85.         public override void output()
  86.         {
  87.             Console.WriteLine("Info about grenade:");
  88.             Console.WriteLine("price: {0}", price);
  89.             Console.WriteLine("range radius: {0}", range_radius);
  90.             Console.Write('\n');
  91.         }
  92.        
  93.         public override void action()
  94.         {
  95.             Console.WriteLine("I'm a grenade. I can explose");
  96.             Console.Write('\n');
  97.         }
  98.     }
  99.    
  100.     class Program
  101.     {
  102.         public static void Main(string[] args)
  103.         {
  104.             Weapon machine_gun = new Machine_gun();
  105.             Weapon grenade = new Grenade();
  106.            
  107.             machine_gun.input();
  108.             machine_gun.output();
  109.             machine_gun.action();
  110.            
  111.             grenade.input();
  112.             grenade.output();
  113.             grenade.action();
  114.            
  115.             // TODO: Implement Functionality Here
  116.            
  117.             Console.Write("Press any key to continue . . . ");
  118.             Console.ReadKey(true);
  119.         }
  120.     }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement