Donnerstag, 30. Juni 2011

C# Klassen Beispiel Bruchrechnung

using System;

public class Bruch {
      int zaehler,                 // wird automatisch mit 0 initialisiert
          nenner = 1;
      string etikett = "";    // die Ref.typ-Init. auf null wird ersetzt, siehe Text

      public Bruch(int zpar, int npar, string epar) {
            zaehler = zpar;
            Nenner  = npar;
            etikett = epar;
      }

      public Bruch() {}

      public int Zaehler {
            get {
                  return zaehler;
            }
            set {
                  zaehler = value;
            }
      }

      public int Nenner {
            get {
                  return nenner;
            }
            set {
                  if (value != 0)
                        nenner = value;
            }
      }

      public string Etikett {
            get {
                  return etikett;
            }
            set {
                  if (value.Length <= 40)
                        etikett = value;
                  else
                        etikett = value.Substring(0, 40);
            }
      }

    public void Kuerze() {
        // größten gemeinsamen Teiler mit dem Euklids Algorithmus bestimmen
        // (performante Variante mit Modulo-Operator)
        if (zaehler != 0) {
            int rest;
            int ggt = Math.Abs(zaehler);
            int divisor = Math.Abs(nenner);
            do {
                rest = ggt % divisor;
                ggt = divisor;
                divisor = rest;
            } while (rest > 0);
            zaehler /= ggt;
            nenner /= ggt;
        }
    }

    public void Addiere(Bruch b) {
          zaehler = zaehler*b.nenner + b.zaehler*nenner;
          nenner = nenner*b.nenner;
          Kuerze();
    }

      public bool Addiere(int zpar, int npar, bool autokurz) {
            if (npar != 0) {
                  zaehler = zaehler * npar + zpar * nenner;
                  nenner = nenner * npar;
                  if (autokurz)
                        Kuerze();
                  return true;
            } else
                  return false;
      }

      public bool Frage() {
            try {
                  Console.Write("Zaehler: ");
                  int z  = Convert.ToInt32(Console.ReadLine());
                  Console.Write("Nenner : ");
                  int n = Convert.ToInt32(Console.ReadLine());
                  Zaehler = z;
                  Nenner = n;
                  return true;
            } catch {
                  return false;
            }
      }
     
      public void Zeige() {
            string luecke = "";
            for (int i=1; i <= etikett.Length; i++)
                  luecke = luecke + " ";
            Console.WriteLine(" {0}   {1}\n {2} -----\n {0}   {3}\n",
                              luecke, zaehler, etikett, nenner);
/*          int ll = Math.Max(zaehler.ToString().Length,
                                  nenner.ToString().Length);
            for (int i=1; i <= ll; i++)
                  strich = strich + "-";
            Console.WriteLine(" {0} {1}\n {2} {3}\n {0} {4}\n",
                              luecke, zaehler, etikett, strich, nenner);
*/
      }
}



ANWENDUNG
using System;
class BruchRechnung {
    static void Main() {
        Bruch b1 = new Bruch(1, 2, "b1 = ");
      
        Bruch b2 = new Bruch();
        b1.Zeige();
        b2.Zeige();
        Console.ReadLine();
        b1.Frage();
        b1.Zeige();
      
       
       
    }
}

C# Ist Palindrom Funktion


  public static bool isPalindrom(string s)
    {
      bool erg = true; //zu false

      for (int i = 0; i < s.Length / 2; i++)
      {
        if (s[i] != s[s.Length - 1 - i])
        {
          erg = false;
          break;
        }
      }

      return erg;
    }

EPT Elektro Prozessor Technik Assambler Befehle


Befehl
Seite  x von 20 der Befehlsliste
ADD
4
ACALL
17
ANL
8
CJNE
15
DA   A
7
DEC
5
DIV
6
DJNZ
15
INC
5
JB
14
JC
14
JNB
14
JNC
14
JZ
14
JNZ
14
LCALL
17
LJMP
13
MOV
1
MOVC
2
MUL
6
ORL
8
PUSH
18
POP
18
RET
18
RETI
18
RL
10
RR
10
SETB
11
SJMP
13
XRL
9
 Inhaltsverzeichniss