Đề bài
Nhập ngày tháng năm. Hãy cho biết ngày tháng năm sau đó N ngày.
Phân tích
– Viết một hàm (Ví dụ: Songay) để tìm số ngày của tháng trong năm.
– Nhập vào ngày tháng năm hiện tại và N.
– Cuối cùng, bạn sẽ có được ngày tháng năm sau N ngày 😀
Code mẫu
var d,m,y,n:integer; Function Songay(thang,nam: Integer):Integer; Var sn:Integer; Begin Case thang of 1,3,5,7,8,10,12 : sn:= 31; 4,9,11 : sn:= 30; 2: If (nam MOD 4 = 0) Then sn:= 29 Else sn:= 28; End; Songay:= sn; End; BEGIN Writeln('Nhap ngay thang nam');Readln(d,m,y); Writeln('Nhap N');Readln(N); d:=d+N; While d > Songay(m,y) Do Begin d:= d - Songay(m,y); m:= m+1; IF m > 12 Then Begin m:= 1; y:= y + 1; End; End; Writeln('Ket qua ',d,'/',m,'/',y); Readln; END.
có cách nào mà không dùng fuctions ko ạ???
program day_of_the_week; uses crt; var ngay,thang,nam,thu,KQthu,i,i2,i3: Integer; chu_thu : string; NKN: array[1..12] of integer = (31,28,31,30,31,30,31,31,30,31,30,31); NN: array[1..12] of integer = (31,29,31,30,31,30,31,31,30,31,30,31); begin clrscr; writeln(‘Nhap vao ngay: ‘); readln(ngay); writeln(‘Nhap vao thang: ‘); readln(thang); writeln(‘Nhap vao nam: ‘); readln(nam); thu := 0; for i := 1 to nam do begin if (i mod 4 = 0) and (i mod 100 <> 0) then begin for i2 := 1 to 12 do begin for i3 := 1 to NN[i2] do begin thu := thu + 1; if (i3 = ngay) and (i2 = thang) and (i = nam) then KQthu :=… Xem thêm »