AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Taschenrechner,Reference-Value

Ein Thema von hotkey · begonnen am 29. Nov 2011 · letzter Beitrag vom 29. Nov 2011
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 13:58
Ich habe mal die Projekt-Quellen formatiert und alle Variablen entsprechend farbig markiert.

rot = globale Variablen
orange = lokale Variablen
grün = Parameter

Dabei ist zu beachten, dass z.B. zahl1 eine völlig andere Variable als zahl1 ist.
Angehängte Dateien
Dateityp: pdf p1.pdf (37,7 KB, 7x aufgerufen)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (29. Nov 2011 um 14:01 Uhr)
  Mit Zitat antworten Zitat
hotkey

Registriert seit: 20. Aug 2011
Ort: Berlin
113 Beiträge
 
Delphi 6 Personal
 
#2

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:04
Wenn ich aber die globalen Variablen entferne , also Zahl1 und Zahl2 , was soll ich dann bei readln und addition() schreiben?

Code:
 if (additionsb='ja') then
   begin
   writeln('Geben Sie die erste Zahl ein: ');
   readln(????);
   writeln('Geben Sie die zweite Zahl ein: ');
   readln(???);
   addition(???);
   end;
EDIT: Hat sich geklärt , danke für die Antworten.
Felix

Geändert von hotkey (29. Nov 2011 um 14:09 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:13
Im Anhang mal der gute alte Papierrechner. Die einzelnen Punkte habe ich im Quelltest markiert.
Evtl. siehst du ja dann, wo dein Fehler liegt.
Delphi-Quellcode:
program p1;
{$AppType Console}

var
  additionsb, subtraktionsb, multib, divb : string;
  zahl1 : integer;
  zahl2 : integer;

function addition( x : integer; y : integer ) : integer;
var
  ergebnis : integer;
  zahl1 : integer;
  zahl2 : integer;
begin
  ergebnis := zahl1 + zahl2; // 5.
  result := ergebnis; // 6.
  writeln( 'Das Ergebnis lautet:' );
  write( ergebnis );
  readln;
end;

begin
  writeln( 'Wollen Sie addieren,subtrahieren,multiplizieren oder dividieren?: ' );
  readln( additionsb, subtraktionsb, multib, divb ); // 1.

  if ( additionsb = 'addieren' )
  then
    begin
      writeln( 'Geben Sie die erste Zahl ein: ' );
      readln( zahl1 ); // 2.
      writeln( 'Geben Sie die zweite Zahl ein: ' );
      readln( zahl2 ); // 3.
      addition( zahl1, zahl2 ); // 4.
    end;

end.
Angehängte Dateien
Dateityp: pdf p1_var.pdf (19,1 KB, 3x aufgerufen)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hotkey

Registriert seit: 20. Aug 2011
Ort: Berlin
113 Beiträge
 
Delphi 6 Personal
 
#4

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:16
Vielen Dank , habs verstanden.

Ich habe den ganzen Code mal schnell verändert , und so finde ich es jetzt besser , viel übersichtlicher und kürzer :

Code:
program Project2;


{$APPTYPE CONSOLE}

  uses sysutils;


   var
   a,b,c:real;
   bestatigung:string;




    function addition(a:real; b:real):real;
     begin
       result:=a+b;
       end;


      function multiplikation(a:real; b:real):real;
       begin
         result := a*b;
         end;


         function division(a:real; b:real):real;
          begin
            result := a/b;
            end;







  begin

    writeln('Taschenrechner - Addition,Multiplikation,Division');
    writeln('Geben Sie die erste Zahl ein: ');
    readln(a);
    writeln('Geben Sie die zweite Zahl: ');
    readln(b);



    writeln('Welche Rechenoperation moechten Sie ausfuehren(z.B.+,-,/): ');
    readln(bestatigung);

     if bestatigung=('+')
      then
       begin
       c:=a+b;
       writeln(addition(a,b));
       readln(c);
      end;

      if bestatigung=('*')
      then
       begin
    writeln(multiplikation(a,b));
    readln(c);
     end;


      if bestatigung=('/')
      then
       begin
    writeln(division(a,b));
    readln(c);
     end;









end.
Felix
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#5

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:19
Und welchen Sinn soll c dabei haben?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:22
ordentlich formatiert sieht das sogar nach was aus ... ja bis auf das mit dem readln(c)
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses sysutils;

var
  a, b, c : real;
  bestatigung : string;

function addition( a : real; b : real ) : real;
begin
  result := a + b;
end;

function multiplikation( a : real; b : real ) : real;
begin
  result := a * b;
end;

function division( a : real; b : real ) : real;
begin
  result := a / b;
end;

begin

  writeln( 'Taschenrechner - Addition,Multiplikation,Division' );
  writeln( 'Geben Sie die erste Zahl ein: ' );
  readln( a );
  writeln( 'Geben Sie die zweite Zahl: ' );
  readln( b );

  writeln( 'Welche Rechenoperation moechten Sie ausfuehren(z.B.+,-,/): ' );
  readln( bestatigung );

  if bestatigung = ( '+' )
  then
    begin
      c := a + b; // ???
      writeln( addition( a, b ) );
      readln( c ); // ???
    end;

  if bestatigung = ( '*' )
  then
    begin
      writeln( multiplikation( a, b ) );
      readln( c ); // ???
    end;

  if bestatigung = ( '/' )
  then
    begin
      writeln( division( a, b ) );
      readln( c ); // ???
    end;

end.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hotkey

Registriert seit: 20. Aug 2011
Ort: Berlin
113 Beiträge
 
Delphi 6 Personal
 
#7

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:30
Eigentlich garkeinen , braucht man nicht..
Felix
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:34
Vielen Dank , habs verstanden.
irgendwie glaube ich das noch nicht so recht ... wenn du das so geschrieben hättest
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses sysutils;

var
  a, b : real;
  bestatigung : string;

function addition( Val1, Val2 : real ) : real;
begin
  result := Val1 + Val2;
end;

function multiplikation( Val1, Val2 : real ) : real;
begin
  result := Val1 * Val2;
end;

function division( Val1, Val2 : real ) : real;
begin
  result := Val1 / Val2;
end;

begin

  writeln( 'Taschenrechner - Addition,Multiplikation,Division' );
  writeln( 'Geben Sie die erste Zahl ein: ' );
  readln( a );
  writeln( 'Geben Sie die zweite Zahl: ' );
  readln( b );

  writeln( 'Welche Rechenoperation moechten Sie ausfuehren(z.B.+,-,/): ' );
  readln( bestatigung );

  if bestatigung = ( '+' )
  then
    begin
      writeln( addition( a, b ) );
    end;

  if bestatigung = ( '*' )
  then
    begin
      writeln( multiplikation( a, b ) );
    end;

  if bestatigung = ( '/' )
  then
    begin
      writeln( division( a, b ) );
    end;

  readln; // auf Tastendruck warten, sonst sieht der Anwender ja nix :o)

end.
dann ja
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hotkey

Registriert seit: 20. Aug 2011
Ort: Berlin
113 Beiträge
 
Delphi 6 Personal
 
#9

AW: Taschenrechner,Reference-Value

  Alt 29. Nov 2011, 14:40
Also vielen Dank , das was du da grade gemacht hast , ist wirklich gut für mich , so kann man es einfacher kapieren , jetzt habe ich es aber kapiert 100 %ig , vielen vielen Dank.
Das wird mich in der Klausur weiterbringen, danke nochmal an alle.
Felix
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz