Một bộ ba số tự nhiên được gọi là bộ số Py-ta-go nếu thỏa mãn điều kiện: bình phương một số bằng tổng bình phương hai số còn lại. Ví dụ: Bộ số (3; 4, 5) là một bộ số Pytago vì: 5^2 = 3^2 + 4^2 Yêu cầu: Nhập vào từ bàn phím số nguyên dương X, (1 ≤ X ≤ 103) Kết quả: • In ra màn hình số 1 nếu có thể tách X thành tổng của ba số nguyên dương a, b, c sao cho (a; b; c) là một bộ ba số Py-ta-go. • In ra màn hình số 0 nếu không thể tách X thành tổng của ba số nguyên dương a, b, c sao cho (a; b; c) là một bộ ba số Py-ta-go. Ví dụ: Nhập bàn phím In Kết quả màn hình Giải thích X = 30 1 30 = 5 + 12 + 13 Mà 13^2 = 5^2 + 1^2 bài 2: cho xâu s, đếm số lần xuất hiện các chữ cái trong xau phương pháp: đếm phân phối pascal
2 câu trả lời
Bài 1:
uses crt;
var x,i,j,k,r: longint;
begin
clrscr;
readln(x);
for i:=1 to x do begin
for j:=i to x do begin
k:=x-i-j;
if k<=j then break;
if i*i+j*j=k*k then r=r+1;
end;
end;
writeln(r);
readln;
end.
Bài 2:
uses crt;
var s: ansistring;
cnt: array[char] of longint;
i: longint;
c: char;
begin
clrscr;
readln(s);
for i:=1 to length(s) do inc(cnt[s[i]]);
for i:=1 to 255 do begin
c:=chr(i);
if cnt[c] > 0 then writeln(cnt[c], ' ', c);
end;
readln;
end.
Bài 1:
uses crt;
var x, i, j, k, r: longint;
begin
clrscr;
readln(x);
for i:=1 to x do begin
for j:=i to x do begin
k:=x - i - j;
if k <= j then break;
if i * i + j * j = k * k then inc(r);
end;
end;
writeln(r);
readln;
end.
Bài 2:
uses crt;
var s: ansistring;
cnt: array[char] of longint;
i: longint;
c: char;
begin
clrscr;
readln(s);
for i:=1 to length(s) do inc(cnt[s[i]]);
for i:=1 to 255 do begin
c:=chr(i);
if cnt[c] > 0 then writeln(cnt[c], ' ', c);
end;
readln;
end.
