Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 2 odgovora
  • 3.739 pregleda

Najnovija ↓

razlika datuma ,pascal 13.12.2009. u 22:15 · pre 205 meseci #1
Zadatak je da se ispiše broj dana između dva datuma(uključujući i ta dva dana).Pogledajte kod,jer je greška uvijek oko 5-20 dana.Ali nikako da vidim u čemu je problem...Ideja je da računa od ''nulte godine''(ovdje 1980) do prvog datuma,pa do drugog i razlika te dvije vrijednosti je traženi rezultat

Code:
program razlikadatuma1;
var
        d1,d2,m1,m2,g1,g2,r,r1,r2:integer;
function prestupna(g:integer):integer;
var
        p:integer;
begin
         if ((g mod 4=0) and (g mod 100<>0)) or (g mod 400=0)then p:=1
                                                             else p:=0;
         prestupna:=p;
end;
function godina(d,m,g:integer):integer;
var
        i,r:integer;
begin
        r:=0;i:=1980;
        while i<g  do begin
                        r:=r+365+prestupna(g);
                        i:=i+1;
                       end;
        godina:=r;
end;
function mjesec(d,m,g:integer):integer;
var
        j,r:integer;
begin
        r:=d;
        for j:=1 to (m-1) do begin
                           case(m) of
                                1,3,5,7,8,10,12: r:=r+31;
                                2: r:=r+28+prestupna(g);
                                4,6,9,11: r:=r+30;
                           end;
                             end;
        mjesec:=r;
end;
begin
        writeln('unesi prvi datum');
        readln(d1,m1,g1);
        writeln('unesi drugi datum');
        readln(d2,m2,g2);
        r1:=godina(d1,m1,g1)+mjesec(d1,m1,g1);
        r2:=godina(d2,m2,g2)+mjesec(d2,m2,g2);
        if (r1>=r2) then r:=r1-r2+1
                    else r:=r2-r1+1;
        writeln('razlika dana je ',r);
        readln;
end.


Re: razlika datuma ,pascal 14.12.2009. u 02:39 · pre 205 meseci #2
U funkciji godina, umesto:
Code:

r:=r+365+prestupna(g);

treba da stoji:
Code:

r:=r+365+prestupna(i);


a u funkciji mjesec, umesto:
Code:

case(m) of

treba da stoji:
Code:

case(j) of

Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme