Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > Sonstige Programmiersprachen

Sonstige Programmiersprachen Das Sammel-Forum für alle weiteren Programmiersprachen wie z.B. Assembler, Delphi, Pascal, C# (C-Sharp), Java usw.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26908, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3325, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 309, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7641, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 22, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 56, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 145, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 70, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50944, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22.05.2011, 20:38   #1 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 22.05.2011
Beiträge: 1
Frage Dev Pascal Bruchrechnung

Hallo,
in der Schule sollten wir in Informatik ein Programm zur Bruchrechnung schrieben.

Hier ist das Programm:

Code:
PROGRAM Berechnung;
Uses Crt;

VAR c,z1,z2,n1,n2,zeg,neg : INTEGER;
    erg : REAL;
    op, Frage : char;


PROCEDURE eingabe;
BEGIN
  textcolor(white);
  ClrScr;
  textcolor(lightgreen);
  Writeln('             Berechnung von zwei Bruechen');
  Writeln('             ---------------------------');
  textcolor (white);
  Writeln; Writeln;
  Write(' Erster Zaehler : ');Readln(z1);
  Write(' Erster Nenner : ');Readln(n1);
  Write(' Zweiter Zaehler : ');Readln(z2);
  Write(' Zweiter Nenner : ');Readln(n2);
  Writeln('Welche Operation moechten Sie ausfuehren? (+,-,* oder /)');
  Read (op);
  Writeln;
END;


PROCEDURE ggT  (a, b : INTEGER; VAR c : INTEGER);
 VAR rest : INTEGER;

 BEGIN
   REPEAT
    rest := a MOD b;
    IF rest = 0
       THEN c := b
       ELSE BEGIN
            a := b;
            b := rest;
          END;
   UNTIL rest = 0
 END;

PROCEDURE kgV (a,b : INTEGER; var c : INTEGER);
  BEGIN
    ggT(a,b,c);
    c := a*b div c;
  END;

PROCEDURE ausgabe;
  BEGIN
    Writeln ('Aus ',z1/n1 : 4:3,' ',op,' ',z2/n2 : 4:3,' ist ',erg : 4:3,' berechnet worden !!!!');
    Readln;
  END;


PROCEDURE addition;
var f,g : INTEGER;
begin
     if n1<>n2 then
         begin
             kgV(n1,n2,c);
             f := c div n1;
             g := c div n2;
             z1 := z1*z2;
             z2 := z2*g;
             zeg := z1+z2;
             neg := c;
         end
     else
         begin
         zeg := z1+z2;
         neg := n1;
         end;
     erg := (z1/n1)+(z2/n2);
     ausgabe;
end;

PROCEDURE subtraktion;
var f,g : INTEGER;
begin
     if n1<>n2 then
         begin
             kgV(n1,n2,c);
             f := c div n1;
             g := c div n2;
             z1 := z1*z2;
             z2 := z2*g;
             zeg := z1-z2;
             neg := c;
         end
     else
         begin
         zeg := z1-z2;
         neg := n1;
         end;
     erg := (z1/n1)-(z2/n2);
     ausgabe;
end;

PROCEDURE mal;
BEGIN
  zeg := z1 * z2;
  neg := n1 * n2;
  erg := (zeg)/(neg);
  ausgabe;
END;

PROCEDURE geteilt;
BEGIN
  zeg := z1 * n2;
  neg := n1 * z2;
  erg := (zeg)/(neg);
  ausgabe;
END;


procedure analyse;
VAR frequenz : INTEGER;
BEGIN
    CASE op OF
    '+' : addition;
    '-' : subtraktion;
    '*' : mal;
    '/' : geteilt;
  ELSE
  Sound (Frequenz);
  Writeln('Falsche Eingabe bei der Operation!');
  Writeln('Bitte starten Sie das Programm neu!');
  Readln;
  Nosound;
  end;
end;

BEGIN
  repeat
   eingabe;
   analyse;
   Writeln;

   textcolor(white);
   Write('Moechten Sie neustarten?');
   textcolor(lightgreen);
   Write(' J(a)');
   textcolor(white);
   Write(' oder');
   textcolor(lightred);
   Write(' N(ein)');
   textcolor(white);
   Write (' ?:  ');
   textcolor(white);
   Readln(Frage)
  until (Frage <> 'j') and (Frage <> 'J');
END.
Unser Lehrer meinte, dass wir jetzt Parameter einbringen sollen. Kann mir da vielleicht jemand helfen?

danke im vorraus

Geändert von Frabbing (22.05.2011 um 23:51 Uhr) Grund: Codetags gesetzt
thebreaker10 ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 22.05.2011, 22:20   #2 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Xzeer
 
Registriert seit: 08.02.2007
Ort: Wuppertal
Alter: 20
Beiträge: 707
Standard

Ich könnte mir jetzt höchstens vorstellen, dass den Proceduren, die du ja schon geschrieben hast, jetzt per Parametern die zu berechnenden Zahlen übergeben werden sollen.

Beispiel:

Code:
PROCEDURE Summe(X: Integer; Y: Integer);
Var Ergebnis: Integer;
BEGIN
   Ergebnis = X + Y;
END;
Hoffe ich konnte helfen. Schon lange nicht mehr mit Turbo Pascal programmiert...
__________________
Xzeer
Xzeer ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > Sonstige Programmiersprachen

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
pascal afae5454wt4 Sonstige Programmiersprachen 12 10.03.2008 19:52
Os in C oder Pascal _,.-°*''*°-.,_ Sonstige Programmiersprachen 1 16.04.2006 20:22
Ausgabeumleitung in Pascal powerweb Sonstige Programmiersprachen 0 10.03.2006 15:46
try...except... bei pascal aDm1n Sonstige Programmiersprachen 0 21.02.2006 22:45
Turbo Pascal 7.0 GAST SEIN Windows 95/98/ME/2000/NT 4 26.06.2004 10:31



Alle Zeitangaben in WEZ +2. Es ist jetzt 05:00 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2