C#

  • Tvary
  • Banka
Tvary
  • program.cs
  • Tvary_Knihovna
program.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using TvaryLibrary;


namespace Tvary

{

    internal class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("------Obdelnik------");

            Obdelnik o1 = new Obdelnik(4, 5);

            Console.WriteLine(o1.ToString());

            Console.WriteLine("Obsah je: " + o1.VypocitatObsah());

            Console.WriteLine("Obvod je: " + o1.VypocitatObvod());

            o1.Nakreslit();

            Console.WriteLine();


            Console.WriteLine("------Ctverec------");

            Ctverec c1 = new Ctverec(9, 9);

            Console.WriteLine(c1.ToString());

            Console.WriteLine("Obsah je: " + c1.VypocitatObsah());

            Console.WriteLine("Obvod je: " + c1.VypocitatObvod());

            c1.Nakreslit();

            Console.WriteLine();


            Console.WriteLine("------Kruh------");

            Kruh k1 = new Kruh(60);

            Console.WriteLine(k1.ToString());

            Console.WriteLine("Obsah je: " + k1.VypocitatObsah());

            Console.WriteLine("Obvod je: " + k1.VypocitatObvod());

            k1.Nakreslit();

        }

    }

}

Tvary_Knihovna
  • Ctverec.cs
  • Kruh.cs
  • Obdelnik.cs
  • Tvar.cs
Ctverec.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace TvaryLibrary

{

    public class Ctverec : Obdelnik

    {

        public Ctverec() : base()

        {

        }

        public Ctverec(int sirka, int vyska) : base(sirka, vyska)

        {

            this.vyska = sirka;

        }

        public override double VypocitatObsah()

        {

            return vyska * vyska;

        }

        public override double VypocitatObvod()

        {

            return 2 * (vyska + vyska);

        }

        public override string ToString()

        {

            return String.Format("tvar: ctverec | ") + base.ToString();

        }

    }

}

Kruh.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace TvaryLibrary

{

    public class Kruh : Tvar

    {

        public Kruh()

        {


        }

        public Kruh(int sirka)

        {

            this.sirka = sirka;

            this.vyska = sirka;

        }

        public override void Nakreslit()

        {

            Console.WriteLine("V konzoli není jednoduché kruh nakreslit");

        }


        public override double VypocitatObsah()

        {

            return Math.PI * sirka * sirka;

        }


        public override double VypocitatObvod()

        {

            return Math.PI * 2 * sirka;

        }

        public override string ToString()

        {

            return string.Format("tvar: kruh |") + base.ToString();

        }

    }

}

Obdelnik.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace TvaryLibrary

{

    public class Obdelnik : Tvar

    {

        public Obdelnik() : base()

        {

        }

        public Obdelnik(int sirka, int vyska) : base(sirka, vyska)

        {

        }

        public override void Nakreslit()

        {

            for (int i = 0; i < sirka; i++)

            {

                for (int e = 0; e < vyska; e++)

                {

                    Console.Write(" # ");

                }

                Console.WriteLine();

            }

           

        }

        public override double VypocitatObsah()

        {

            return sirka * vyska;

        }

        public override double VypocitatObvod()

        {

            return 2 * (sirka + vyska);

        }

        public override string ToString()

        {

            return  String.Format("tvar: obdelnik | ") + base.ToString();

        }

    }

}

Tvar.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace TvaryLibrary

{

    public abstract class Tvar

    {

        protected int sirka;

        protected int vyska;


        public Tvar()

        {

        }

        public Tvar(int sirka)

        {

            this.sirka = sirka;

        }

        public Tvar(int sirka, int vyska)

        {

            this.sirka = sirka;

            this.vyska = vyska;

        }

        public abstract void Nakreslit();

        public abstract double VypocitatObvod();

        public abstract double VypocitatObsah();

        public override string ToString()

        {

            return String.Format("sirka: {0} | vyska: {1} | ", sirka, vyska);

        }


    }

}

Banka
  • program.cs
  • Banka_Knihovna
program.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using Banka_Knihovna;


namespace Banka_Knihovna

{

  class Program

  {

    static void Main(string[] args)

    {

      List<Ucet> seznamUctu = new List<Ucet>();


      Console.Write("Zadej číslo účtu: ");

      string cisloUctu = Console.ReadLine();

      Console.Write("Zadej majitele účtu : ");

      string majitel = Console.ReadLine();


      try

      {

        Console.Write("Zadej zůstatek na účtu: ");

        double zustatek = double.Parse( Console.ReadLine() );

        Ucet u = new Ucet(cisloUctu, majitel, zustatek);

        seznamUctu.Add(u);

      }

      catch (Exception ex)

      {

        Console.WriteLine("Chyba na vstupu, účet nebyl vytvořen.");

      }



      SporiciUcet sporUc = new SporiciUcet("222222", "Jana Dlouha", 4400, 4.4);

      seznamUctu.Add(sporUc);

      DebetniUcet debetUc = new DebetniUcet("333333", "Olda Novy", 12500, 2000);

      seznamUctu.Add(debetUc);


      Console.WriteLine("\nVýpis účtu :");

      foreach (Ucet ucet in seznamUctu)

      {

        Console.WriteLine(ucet);

      }


      Console.WriteLine("\nTEST1: Vložit 10000Kc na účet 1:");

      Console.WriteLine(seznamUctu[0].Vlozit(10000));


      Console.WriteLine("\nTEST2: Vybrat 14000Kc ze všech účtu :");

      foreach (Ucet ucet in seznamUctu)

      {

        Console.WriteLine( ucet.Vybrat(14000) );

      }


      Console.WriteLine("\nTEST3: Na všechny účty připište úrok:");

      foreach (Ucet ucet in seznamUctu)

      {

        //ucet.PripsatUrok();

        if (ucet is SporiciUcet)

        {

          SporiciUcet su = ucet as SporiciUcet;

          Console.WriteLine( su.PripsatUrok() );

        }

        else

        {

          Console.WriteLine("Transakci nelze provést, účet není spořící.");

        }

      }


      Console.WriteLine("\nVýpis účtů:");

      foreach (Ucet ucet in seznamUctu)

      {

        Console.WriteLine(ucet);

      }



    }

  }

}

Banka_Knihovna
  • Ucet.cs
  • SporiciUcet.cs
  • DebetniUcet.cs
Ucet.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace Banka_Knihovna

{

    public class Ucet : Object

    {

        // - const int KODBANKY

        // # string cislo

        // # string majitel

        // # double zustatek

        private const int KODBANKY = 1234;

        protected string cislo;

        protected string majitel;

        protected double zustatek;


        // + Ucet (cislo, majitel, zustatek)

        public Ucet(string cislo, string majitel, double zustatek)

        {

            this.cislo = cislo;

            this.majitel = majitel;

            this.zustatek = zustatek;

        }


        // + Ucet (cislo, majitel)

        public Ucet(string cislo, string majitel)

        {

            this.cislo = cislo;

            this.majitel = majitel;

        }


        // + string Viozit (castka)

        public string Vlozit(double castka)

        {

            this.zustatek += castka;

            return string.Format("Na účet {0} byla připsána částka {1} Kč", this.VratCisloUctuCele(), castka);

        }


        // + string Vybrat (castka)

        public virtual string Vybrat(double castka)

        {

            if (this.zustatek >= castka)

            {

                this.zustatek -= castka;

                return string.Format("Z účtu {0} byla vybrána částka {1} Kč. Zůstatek je {2} Kč", this.VratCisloUctuCele(), castka, this.zustatek);

            }

            else

            {

                return string.Format("Nedostatek prostředků na účtu {0}, transakce nebyla dokončena.", this.VratCisloUctuCele());

            }


        }


        // # string VratCisloUctuCele ()

        protected string VratCisloUctuCele()

        {

            return string.Format("{0}/{1}",this.cislo,KODBANKY);

        }


        // + string ToString ()

        public override string ToString()

        {

            return string.Format("Účet: {0}, Majitel: {1}, Zůstatek: {2} Kč", this.VratCisloUctuCele(),this.majitel, this.zustatek);

        }

    }

}

SporiciUcet.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace Banka_Knihovna

{

    public class SporiciUcet : Ucet

    {

        // - double urokova sazba

        private double urokovaSazba;


        // + SporiciUcet (cislo, majitel, urokovaSazba

        public SporiciUcet(string cislo, string majitel, double urokovaSazba)

            :base(cislo, majitel)

        {

            this.urokovaSazba = urokovaSazba;

        }


        // + SporiciUcet (cislo, majitel, zustatek, urokovaSazba)

        public SporiciUcet(string cislo, string majitel, double zustatek, double urokovaSazba)

            : base(cislo, majitel, zustatek)

        {

            this.urokovaSazba = urokovaSazba;

        }


        // + string PripsatUrok ()

        public string PripsatUrok()

        {

            double urok = (this.urokovaSazba / 100.0) * this.zustatek;

            this.Vlozit(urok);

            return string.Format("Na účet {0} byl připsán úrok {1} %. Aktuální zůstatek: {2} Kc", this.VratCisloUctuCele(), this.urokovaSazba, this.zustatek);

        }


        // + string ToString ()

        public override string ToString()

        {

            return "Spořící " + base.ToString() + String.Format(", urokova sazba: {0}%", this.urokovaSazba);

        }

    }

}


DebetniUcet.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace Banka_Knihovna

{

    public class DebetniUcet : Ucet

    {

        // - double debet

        private double debet;


        // + DebetniUcet (cislo, majitel, debet)

        public DebetniUcet(string cislo, string majitel, double debet)

            :base(cislo, majitel)

        {

            this.debet = debet;

        }


        // + DebetniUcet (cislo, majitel, zustatek, debet)

        public DebetniUcet(string cislo, string majitel, double zustatek, double debet)

            : base(cislo, majitel, zustatek)

        {

            this.debet = debet;

        }


        // + string Vybrat (castka)    

        public override string Vybrat(double castka)

        {

            if (this.zustatek + this.debet >= castka)

            {

                this.zustatek -= castka;

                return string.Format("Z účtu {0} byla vybrána částka {1}. Aktuální zůstatek je {2} Kč",VratCisloUctuCele(),castka,this.zustatek);

            }

            else

            {

                return string.Format("Nedostatek prostředků na účtu {0}, transakce nebyla dokončena. Aktuální zůstatek je {1} Kč", this.VratCisloUctuCele(), this.zustatek);

            }

        }


        // + string ToString ()

        public override string ToString()

        {

            return "Debetní " + base.ToString() + string.Format(", debet: {0} Kc", this.debet);

        }

    }

}


Java

  • Banka
  • Tvary
Banka
  • Program.java
  • Ucet.java
  • SporiciUcet.java
  • DebetniUcet.java
Program.java

package eu.teleinformatika;


public class Program {


  public static void main(String[] args) {

    System.out.println("Projekt banka - Java");


    Ucet u1 = new Ucet("U122312","Pepa",69000);

    System.out.println(u1.toString());

    System.out.println(u1.vybrat(50000));

    System.out.println(u1.vlozit(10000));

    System.out.println(u1.toString());


    System.out.println();


    Ucet u2 = new Ucet("U564916","Z Depa",1000);

    System.out.println(u2.toString());

    System.out.println(u2.vybrat(50000));

    System.out.println(u2.vlozit(10000));

    System.out.println(u2.toString());


    System.out.println();


    SporiciUcet s1 = new SporiciUcet("S621361","Yeetr",50666,5.6);

    System.out.println(s1.toString());

    System.out.println(s1.vybrat(20000));

    System.out.println(s1.vlozit(1000));

    System.out.println(s1.pripsatUrok());

    System.out.println(s1.toString());

    System.out.println();



    DebetniUcet d1 = new DebetniUcet("D162915","Tomíno",6243,1500);

    System.out.println(d1.toString());

    System.out.println(d1.vybrat(15500));

    System.out.println(d1.vlozit(1000));

    System.out.println(d1.toString());

  }

}

Ucet.java

package eu.teleinformatika;


public class Ucet {


    //clenske promenne a konstanta

    private final int KODBANKY = 1234;

    protected String cislo;

    protected String majitel;

    protected double zustatek;


    //konstruktory

    public Ucet(String cislo, String majitel, double zustatek)

    {

        this.cislo = cislo;

        this.majitel = majitel;

        this.zustatek = zustatek;

    }


    public Ucet(String cislo, String majitel)

    {

        this(cislo, majitel, 77000);

    }


    //metody

    protected String vratCisloUctuCele()

    {

        return String.format("%S/%S", this.cislo, KODBANKY);

    }


    @Override

    public String toString()

    {

        return String.format("Ucet [%s, majitel: %s, zustatek: %f Kc]",

                this.vratCisloUctuCele(),

                this.majitel,

                this.zustatek);

    }


    public String vlozit(double castka)

    {

        this.zustatek += castka;

        return String.format("Na ucet %s byla vlozena castka %f Kc. Aktualni zustatek: %f Kc",

                this.vratCisloUctuCele(),

                castka,

                this.zustatek);

    }


    public String vybrat(double castka)

    {

        if (this.zustatek >= castka)

        {

            this.zustatek -= castka;

            return String.format("Z uctu %s byla vybrana castka %f Kc. Aktualni zustatek: %f Kc",

                    this.vratCisloUctuCele(),

                    castka,

                    this.zustatek);

        }

        else

        {

            return String.format("Nedostatek prostredku na uctu %s, transakce nebyla dokoncena. Aktualni zustatek: %f Kc",

                    this.vratCisloUctuCele(),

                    this.zustatek);

        }

    }

}

SporiciUcet.java

package eu.teleinformatika;


public class SporiciUcet extends Ucet {

  //clenske promenne

  private double urokovaSazba;


  public SporiciUcet(String cislo, String majitel, double urokovaSazba)

  {

    this(cislo, majitel, 88000, urokovaSazba);

  }


  public SporiciUcet(String cislo, String majitel, double zustatek, double urokovaSazba)

  {

    super(cislo, majitel, zustatek);


    this.urokovaSazba = urokovaSazba;

  }


  //metody

  @Override

  public String toString()

  {

    return "Sporici " + super.toString() + String.format(", urokova sazba: %f %%", this.urokovaSazba);

  }


  public String pripsatUrok()

  {

    double urok = (this.urokovaSazba / 100.0) * this.zustatek;

    this.vlozit(urok);

    return String.format("Na ucet %s byl pripsan urok %s %%. Aktualni zustatek: %f Kc",

        this.vratCisloUctuCele(),

        this.urokovaSazba,

        this.zustatek);

  }

}

DebetniUcet.java

package eu.teleinformatika;


public class DebetniUcet extends Ucet{

  //clenske promenne

  private double debet;


  //konstruktory

  public DebetniUcet(String cislo, String majitel, double debet)

  {

    super(cislo, majitel);

    this.debet = debet;

  }


  public DebetniUcet(String cislo, String majitel, double zustatek, double debet)

  {

    super(cislo, majitel, zustatek);

    this.debet = debet;

  }


  //metody

  @Override

  public String toString()

  {

    return "Debetni " + super.toString() +

        String.format(", debet: %f Kc", this.debet);

  }


  //Vybrat dodelat

  @Override

  public String vybrat(double castka)

  {

    if (this.zustatek + this.debet >= castka)

    {

      this.zustatek -= castka;

      return String.format("Z uctu %s byla vybrana castka %s Kc. Aktualni zustatek: %f Kc",

          this.vratCisloUctuCele(),

          castka,

          this.zustatek);

    }

    else

    {

      return String.format("Nedostatek prostredku na uctu %s, transakce nebyla dokoncena. Aktualni zustatek: %f Kc",

          this.vratCisloUctuCele(),

          this.zustatek);

    }

  }

}

Tvary
  • program.java
  • Tvar.java
  • Obdelnik.java
  • Ctverec.java
  • Kruh.java
program.java

package eu.teleinformatika;


public class Program

{

  public static void main(String[] args)

  {

    System.out.println("-----Projekt tvary java------");

    Obdelnik o1 = new Obdelnik(5, 2);


    Ctverec c1 = new Ctverec(6);


    Kruh k1 = new Kruh(78);


    Tvar[] poleTvaru = new Tvar[4];

    poleTvaru[0] = o1;

    poleTvaru[1] = o1;

    poleTvaru[2] = c1;

    poleTvaru[3] = k1;


    for(int i = 0; i < poleTvaru.length; i++)

    {

      poleTvaru[i].nakreslit();

      System.out.println( poleTvaru[i].toString());;

      System.out.println( "obvod je " + poleTvaru[i].vypocitatObvod());;

      System.out.println( "obsah je " + poleTvaru[i].vypocitatObsah());;

      System.out.println("-----------");

    }

  }

}

Tvar.java

package eu.teleinformatika;


public abstract class Tvar

{

    protected int sirka;

    protected int vyska;


    public Tvar()

    {

        this.sirka = 0;

        this.vyska = 0;

    }


    public Tvar(int sirka)

    {

        this.sirka = sirka;

        this.vyska = sirka;

    }


    public Tvar(int sirka, int vyska)

    {

        this.sirka = sirka;

        this.vyska = vyska;

    }


    public abstract void nakreslit();


    public abstract double vypocitatObvod();


    public abstract double vypocitatObsah();


    @Override

    public String toString()

    {

        return String.format(" tvar: sirka=%s, vyska=%s", this.sirka, this.vyska);

    }


}


Obdelnik.java

package eu.teleinformatika;


public class Obdelnik extends  Tvar

{

    public Obdelnik()

    {

        super();

    }

    public Obdelnik(int sirka, int vyska)

    {

        super(sirka, vyska);

    }

    @Override

    public  void nakreslit()

    {

        for (int y = 0; y < this.vyska; y++)

        {

            for (int x = 0; x < this.sirka; x++)

            {

                System.out.print("X");

            }

            System.out.println();

        }

    }

    @Override

    public  double vypocitatObvod()

    {

        double obvod = 2 * (this.sirka + this.vyska);

        return obvod;

    }

    @Override

    public  double vypocitatObsah()

    {

        return this.sirka * this.vyska;

    }

    @Override

    public String toString()

    {

        return "obdelnik je" + super.toString();

    }

}


Ctverec.java

package eu.teleinformatika;


public class Ctverec extends Obdelnik

{

    public Ctverec()

    {

        super();

    }

    public Ctverec(int sirka)

    {

        super(sirka, sirka);

    }

    @Override

    public String toString()

    {

        return "Ctverec je" + super.toString();

    }

}


Kruh.java

package eu.teleinformatika;


public class Kruh extends  Tvar

{

    public Kruh()

    {

        super();

    }

    public Kruh(int sirka)

    {

        super(sirka);

    }

    @Override

    public void nakreslit()

    {

        System.out.println("Neni jednoduche nakreslit kruh v console");

    }

    @Override

    public double vypocitatObvod()

    {

        double r = (double)this.sirka / 2.0;

        double obvod = 2 * 3.14 * r;

        return obvod;

    }

    @Override

    public double vypocitatObsah()

    {

        double r = (double)this.sirka / 2.0;

        double obsah = Math.PI * r * r;

        return obsah;

    }

    @Override

    public String toString()

    {

        return "Kruh je" + super.toString();

    }

}



Zadání

Zadání Banka

Zadání Tvary

Counter