-
Cho dãy n số nguyên dương a1, a2, …, an và số nguyên dương S. Hãy đếm xem có bao nhiêu cặp phần tử (ai, aj) (i <> j) thỏa mãn ai + aj ...
-
Xét xâu S chỉ bao gồm các kí tự ngoặc mở ‘(‘ và ngoặc đóng ‘)’. Xâu S xác định một cách đặt ngoặc đúng, nếu thỏa mãn các điều kiện: · Tổng ...
-
Cho trước số nguyên dương n. Viết chương trình kiểm tra xem có bao nhiêu số nguyên dương nhỏ hơn hoặc bằng n nguyên tố cùng nhau với n (nghĩ...
-
Phân tích số nguyên dương thành tổng các số hạng của dãy Fibonaci sao cho ít số hạng nhất (các số hạng không được trùng nhau). Xem clip hư...
-
Nhập xâu s chỉ chứa các chữ cái viết hoa. Đếm xem s có bao nhiêu kí tự khác nhau. Input · Dòng 1: số test t · t dòng sau: mỗi dòng 1 xâu ...
-
Tìm X biết: 10 + 11 + 12 + 13 + ... + X = 5106 ------ Hướng dẫn giải: Hãy cố gắng nhớ lại công thức tính tổng dãy tăng có quy luật (số đ...
-
Một dãy được gọi là đối xứng gương nếu các phần tử cách đều đầu và cuối thì bằng nhau. Cho dãy số A(N). Hãy tìm một dãy con các phần tử liên...
-
Đề thi tin học trẻ bảng C tỉnh Quảng Bình năm 2009 Trong máy tính, để tiết kiệm bộ nhớ, người ta thường tìm cách nén dữ liệu. T...
-
(Tuyến sinh phổ thông năng khiếu 2007) Yêu cầu: Hãy tìm số âm lớn nhất X trong dãy.Cho một dãy gồm N số nguyên a1, a2, …, aN, mỗi số có gi...
-
Thầy Quách Văn Lượm Điện thoại, Zalo: 0915080405 Facebook: https://www.facebook.com/qvluom Group trao đổi giải thuật: Giải bài tập ...
program o;
Trả lờiXóauses crt;
function laso(s:string):boolean;
var a,b:integer;
begin
val(s,a,b);
if b=1 then
begin
delete(s,1,1);
val(s,a,b);
end;
exit(b=0);
end;
function so(s:string):real;
var b:longint; a:real;
begin
val(s,a,b);
if b=1 then
begin
delete(s,1,1);
val(s,a,b);
a:=1/a
end;
exit(a);
end;
function daun(s:string):string;
begin
exit(copy(s,1,pos('x',s)-1));
end;
function cuoin(s:string):string;
begin
exit(copy(s,pos('x',s)+1,length(s)-pos('x',s)));
end;
function dau(s:string):string;
begin
exit(copy(s,1,pos('+',s)-1));
end;
function cuoi(s:string):string;
begin
exit(copy(s,pos('+',s)+1,length(s)-pos('+',s)));
end;
function cong(s:string):boolean;
begin
exit(pos('+',s)>0);
end;
function daut(s:string):string;
begin
while pos('-',s)>0 do
s[pos('-',s)]:='@';
while pos('@',s)>0 do
begin
insert('-',s,pos('@',s)+1);
s[pos('@',s)]:='+';
end;
exit(s);
end;
function dauch(s:string):string;
begin
while pos(':',s)>0 do
s[pos(':',s)]:='@';
while pos('@',s)>0 do
begin
insert(':',s,pos('@',s)+1);
s[pos('@',s)]:='x';
end;
exit(s);
end;
function tinh(s:string):real;
begin
if laso(s) then tinh:=so(s) else
if cong(s) then tinh:=tinh(dau(s))+tinh(cuoi(s)) else
tinh:=tinh(daun(s))*tinh(cuoin(s));
end;
begin
clrscr;
write (tinh(dauch(daut('1+2+3x3:9'))):0:2);
readln;
end.