Turbo Pascal
 
Szukanie zaawansowane
   
 
Home Rejestracja FAQ Użytkownicy Grupy Galerie  
 
 


Forum Turbo Pascal Strona Główna Kody źródłowe Cofanie kalendarza o dwa dni
Wyświetl posty z ostatnich:   
       
Napisz nowy temat  Odpowiedz do tematu

Pią 19:49, 03 Mar 2006
Autor Wiadomość
istredd`
Średnio zaawansowany



Dołączył: 14 Lut 2006
Posty: 37
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kraków

Temat postu: Cofanie kalendarza o dwa dni

Było kiedyś takie zadanie na starym forum:

Kod:
program data;

{potrzebuje pomocy dopiero zaczyna m z programowaniem
musze napisac program ktory po wpisaniu numeru miesiąca i dnia w miesiącu wyświetli datę zprzed dwóch dni
luty ma zawsze 28 dni
AAla kalendarz
program musi opierac sie na procedurach}

type
   kalendarz = record
            dd,mm : integer;
            end;

var
   kal : kalendarz;

Function dzien(dz : integer): integer;   
var
   ok : boolean;
   k,d : integer;
begin
   ok := true;
   if (dz = 2) then k := 28 else
      if (dz = 4) or (dz = 6) or (dz = 9) or (dz = 11) then k := 30
      else k := 31;
   Repeat
   Write('Dzień: ');
   Read(d);
   if (d < 1) or (d > k) then ok := false else ok := true;
   Until ok = true;
   dzien := d;
end;

Procedure wczytaj(var  kal : kalendarz);
var
   ok : boolean;
begin
   ok := true;
   Writeln('Podaj datę');
   with kal do
   Repeat
   Write('Miesiąc: ');
   Read(mm);
   if (mm < 1) or (mm > 12) then ok := false else ok := true;
   Until ok = true;
   kal.dd := dzien(kal.mm);
end;

Procedure cofnij(var kal : kalendarz);
var
   tmp,max : integer;
begin
   if kal.dd - 2 > 0 then
   kal.dd := kal.dd - 2 else
   begin
      if kal.mm - 1 < 1 then
      begin
      kal.mm := 12;
      tmp := kal.dd - 2;
      end
      else
         begin
         kal.mm := kal.mm - 1;
         tmp := kal.dd - 2;
         end;
   end;
   if kal.mm = 2 then max := 28 else
      if (kal.mm = 4) or (kal.mm = 6) or (kal.mm = 9) or (kal.mm = 11) then
      max := 30 else max := 31;
   if tmp = 0 then kal.dd := max else if tmp = -1 then kal.dd := max - 1;
end;
   

begin
   Wczytaj(kal);
   Writeln('Dzień: ',kal.dd,' Miesiąc: ',kal.mm);
   Cofnij(kal);
   Writeln('Dzień: ',kal.dd,' Miesiąc: ',kal.mm);
end.


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  
Pon 19:27, 30 Kwi 2007
Autor Wiadomość
Aeermarburlo3
Początkujący



Dołączył: 30 Kwi 2007
Posty: 9
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

Temat postu:

Hardcore sex!
[link widoczny dla zalogowanych]


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  
Napisz nowy temat  Odpowiedz do tematu

 
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


      Do góry  

Strona 1 z 1
Skocz do:  
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group
Avalanche style by What Is Real © 2004
             
Regulamin