Câu hỏi:
Giúp em bài tập về nhà Tổng hợp lớp 9 câu hỏi như sau: Nhập vào mảng một chiều,đếm xem có bao nhiêu số cân bằng (pascal)
Trả lời 2:
Gia Sư Hoàng Khang gữi câu trả lời dành cho bạn:
uses crt;
var n,i,d:longint; a:array[1..1000000]of longint;
function kt(a:longint):boolean;
var d1,d2:longint;
begin
d1:=0; d2:=0;
repeat
if a mod 10 mod 2=0 then inc(d1) else inc(d2);
a:=a div 10;
until a=0;
kt:=d1=d2;
end;
begin
clrscr;
write(‘Nhap so luong phan tu: ‘);readln(n);
for i:=1 to n do
begin
write(‘Nhap so thu ‘,i,’: ‘);readln(a[i]);
if kt(a[i]) then inc(d);
end;
writeln(‘Co ‘,d,’ so can bang’);
readln
end.
Trả lời 1:
Gia Sư Hoàng Khang gữi câu trả lời dành cho bạn:
program so_can_bang;
uses crt;
var A:array[1..10000] of longint;
n,i,d:integer;
{—CT-con—}
function kt(k:longint):boolean;
var dc,dl:byte;
m:integer;
begin
dc:=0; dl:=0;
while k>0 do
begin
m:=k mod 10;
if m mod 2=0 then dc:=dc+1 else dl:=dl+1;
k:=k div 10;
end;
if dc=dl then kt:=true else kt:=false;
end;
{—CT-chinh—}
BEGIN
clrscr;
d:=0;
write(‘Nhap so luong phan tu: ‘); readln(n);
d:=0;
for i:=1 to n do
begin
write(‘Nhap so thu ‘,i,’: ‘); readln(A[i]);
if kt(A[i]) then d:=d+1;
end;
write(‘Co ‘,d,’ so can bang’);
readln;
end.