PASCAL

Programovacie jazyky, rady, poradňa...
rsmiso
Novice
Novice
Príspevky: 4
Registrovaný: 09 dec 2009, 10:19

PASCAL

Príspevok od používateľa rsmiso »

mam spravit program v pascale......


zadanie::::

Zrealizujte rekurzívne aj nerekurzívne riešenie (ak sa dá) programu, ktorý zabezpečí pomocou rekurzívnej procedúry (funkcie) výpis reťazca v normálnom tvare a hneď k nemu aj obrátene.

takto som to spravil bez rekurzie::

Kód: Vybrať všetko

program retazec;
uses crt;
procedure ret(s:string);
var t:string;
    i:integer;
 begin
 t:='';
 for i:=length(s) downto 1 do t:=t+s[i];
 writeln('retazec obratene : ',t);
 end;

var s:string;
begin
clrscr;
Write('Zadaj rertazec : ');
readln(s);
ret(s);
readkey;
end

s rekurziou to neviem bo je to kratky programik a neviem co by som do rekurzie dal......


napiste niekto ci to moze byt takto a ci sa to da spravit aj pomocou rekurzie.

dakujem.....
eaten
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 891
Registrovaný: 23 jan 2006, 19:59

Príspevok od používateľa eaten »

ja by som to spravil takto:

Kód: Vybrať všetko

program retazec;
var s:string;

function ret (s:string) : string;
    begin
      if length(s)>0 then
        ret:=s[length(s)] + ret(copy(s,1, length(s)-1)) ;
    end;

begin
  readln(s);  
  write(ret(s));
  readln;
end.
rsmiso
Novice
Novice
Príspevky: 4
Registrovaný: 09 dec 2009, 10:19

Príspevok od používateľa rsmiso »

ďakujem



fakt je ze pascal nie je moja silna stranka..... este raz diky
Napísať odpoveď