PDA

View Full Version : giai ho em bai tap nay voi



CuBin1992
12-11-2010, 18:09
giai bai tap neu n la so le thi thuc hien phep tinh sau 1+3+5+7+...n
con neu n la so chan thi thuc hien phep tinh sau 2+4+6+8+...n
voi n nhap tu ban phim

cac anh giai ho em voi huhu

nguyenthong1593
13-11-2010, 17:11
bài này đơn giản nè! hjhj mình xin đưa ra cách giải của mình!
program a;
uses crt;
var n:integer;
procedure nhap(var n:integer);
begin
clrscr;
writeln(' Nhap vao 1 so n ');
readln(n);
end;
function xet(var n:integer):boolean;
var x:boolean;
begin
x:=flase;
if n mod 2 =0 then x:=true;
xet:=x;
end;
procedure xuly(n:integer);
var s:longint; i:integer;
begin
s:=0;
if xet(n) then
for i:=1 step 2 to n do s:=s+i
else
for i:=2 step 2 to n do s:=s+i;
writeln(' ket qua la ',s:5);
readln;
end;
begin
nhap(n);
xuly(n);
readln;
end.

Chú ý! Step 2 có nghĩa là vòng lập for sẽ có bước nhảy là 2 chứ không như mặc định là 1 nữa!

Có gì sai xót mong bạn bỏ qua cho nha! Các bác ơi có gì thì xin chỉ giáo thêm nha! Em còn đang là học sinh là thôi!
Rất mong được các bác chỉ giáo cho em thêm nữa !

Binhthcslt
23-11-2010, 09:21
bài này bạn dùng chương trình con làm cho nó phức tạp quá (tất nhiên theo mình là hay). Nên dùng Lệnh For bình thường và lệnh If là xong thôi.