Známy program na výmenu dvoch premenných

Delphi & Pascal (česká wiki)
Přejít na: navigace, hledání
Kategorija:

Zrobil: Danciwo
Program: Vymena.pas
Subor exe: Vymena.exe

Známy program na výmenu dvoch premenných. Obsahuje 2 procedúry. Jedna vymieňa premenné s pomocnou premennou, druhá bez nej. Zároveň demonštruje prácu s parametrami volanými referenciou.
{ VYMENA.PAS                                  Copyright (c) Danciwo }
{ Napiste proceduru VYMENA s prislusnymi parametrami, ktora bude    }
{ vymienat obsahy dvoch ciselnych premennych A a B.                 }
{ Zostavte podobnu proceduru (VYMENA2), ale bez pouzitia tretej     }
{ premennej.                                                        }
{ Zadajte dva cele cisla, po kazdom zadanom cisle stlacte klavesu   }
{ enter.                                                            }
{                                                                   }
{ Author: Danciwo                                                   }
{ Date  : 15.02.2008                           http://www.trsek.com }
 
program vymena_prg;
uses crt;
var A,B,i: integer;
 
{Procedura s pouzitim pomocnej premennej}
procedure VYMENA(var x:integer; var y: integer);
  var pom_prem: integer;
begin
  pom_prem:=x;
  x:=y;
  y:=pom_prem;
end;
 
{Procedura bez pouzitia pomocnej premennej}
procedure VYMENA2(var z:integer; var t:integer);
begin
  z:=z+t;
  t:=z-t;
  z:=z-t;
end;
 
begin
 clrscr;
 writeln('Zadajte cele cisla.');
 write('Zadajte cislo A= ');
 readln(A);
 write('Zadajte cislo B= ');
 readln(B);
 writeln('1. Procedura s pomocnou premennou.');
 writeln('2. Procedura bez pomocnej premennej.');
 writeln('Ktoru proceduru chcete pouzit? Napiste jej cislo prosim!');
 readln(i);
 
 if i=1 then 
    VYMENA(A,B) 
 else 
    VYMENA2(A,B);
 
 writeln('A= ',A:2);
 writeln('B= ', B:2);
 writeln('powered by danciwo :)'); 
 readln;
end.