K
Khách

Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.

22 tháng 8 2019

Lời giải:

Nhập mảng phải có nhập số lượng phần tử nữa bạn nhé.

program hotrotinhoc;

const fi='bai5.inp';

fo='bai5.out';

var f: text;

i,j,n,max,max1,max2,max3,max4: longint;

a: array[1..32000] of integer;

function dn(x: integer): integer;

var s: integer;

begin

s:=0; dn:=0;

while x<>0 do

begin

s:=s*10+(x mod 10);

x:=x div 10;

end;

dn:=s;

end;

function nt(x1: integer): boolean;

var j: integer;

begin

nt:=false;

if x1<2 then exit;

for j:=2 to trunc(sqrt(x1)) do

if x1 mod j=0 then exit;

nt:=true;

end;

function tongcs(x2: integer): integer;

var s1: integer;

begin

s1:=0;

while x2<>0 do

begin

s1:=s1+(x2 mod 10);

x2:=x2 div 10;

end;

tongcs:=s1;

end;

function ucln(x3,y: integer) : integer;

var z: integer;

begin

while y<>0 do

begin

z:=x3 mod y;

x3:=y;

y:=z;

end;

ucln:=x3;

end;

procedure ip;

begin

assign(f,fi);

reset(f);

readln(f,n);

for i:=1 to n do

read(f,a[i]);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

max:=0; max2:=0; max3:=0;

for i:=1 to n do

begin

if (dn(a[i])=a[i]) and (a[i]>max) then max:=a[i];

if dn(a[i])>max2 then max2:=dn(a[i]);

if (nt(a[i])) and (tongcs(a[i])>max3) then max3:=a[i];

end;

writeln(f,max);

for i:=1 to n do if dn(a[i])=max2 then

writeln(f,a[i]);

max4:=0;

for i:=1 to n do

for j:=i to n do

if (a[i]<>a[j]) and (ucln(a[i],a[j])>max4) then max4:=ucln(a[i],a[j]);

for i:=1 to n do

for j:=i to n do

if ucln(a[i],a[j])=max4 then writeln(f,a[i],' ',a[j]);

write(f,max3);

close(f);

end;

begin

ip;

out;

end.

22 tháng 8 2019

camr ơn

21 tháng 8 2019

Đợi chút mình đang giải.

21 tháng 8 2019

Đúng rồi , bạn thêm:

const fi='bai3.inp';

fo='bai3.out';

22 tháng 6 2019

Lời giải:

program hotrotinhoc;

const fi='integer.inp';

fo='integer.out';

var a,b,n: integer;

f: text;

procedure ip;

begin

assign(f,fi);

reset(f);

read(f,n);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

writeln(f,trunc(n));

write(f,trunc(n)+1);

close(f);

BEGIN

ip;

out;

END.

23 tháng 8 2019

VD chính xác :

m1.inp m1.out

5

-2 3 5 4 -7

-2 3 5 4 -7

-7 -2 3 4 5

Lời giải :

program hotrotinhoc;

const fi='m1.inp';

fo='m1.out';

var f: text;

i,n,tg : integer;

a: array[1..32000] of integer;

procedure ip;

begin

assign(f,fi);

reset(f);

readln(f,n);

for i:=1 to n do

read(f,a[i]);

close(f);

end;

procedure out;

begin

for i:=1 to n do

write(f,a[i],' ');

writeln(f);

for i:=1 to n-1 do

for j:=i+1 to n do

if a[i]>a[j] then

begin

tg:=a[i];

a[i]:=a[j];

a[j]:=tg;

end;

for i:=1 to n do write(f,a[i],' ');

close(f);

end;

begin

ip;

out;

end.

24 tháng 8 2019

ok

Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương. Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn...
Đọc tiếp

Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương.

Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn nhất.

Dữ liệu vào: File tên HCN.OUT

- Dòng 1 ghi bốn số n, m, p, q được ghi cách nhau bởi dấu cách.

- n dòng tiếp theo, mỗi dòng ghi m số nguyên dương và cách nhau bởi dấu cách.

Dữ liệu ra: File HCN.OUT, chứa 1 dòng ghi một số nguyên duy nhất S là diện tích lớn nhất cần tìm.

HCN.INP

HCN.OUT

4 7 3 3

1 2 3 1 1 3 4

5 3 1 4 0 1 2

4 6 3 4 7 1 1

9 3 8 10 0 1 0

84

Ví dụ:

1

2

3

1

1

3

4

5

3

1

4

0

1

2

4

6

3

4

7

1

1

9

3

8

10

0

1

0

0
Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương. Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn...
Đọc tiếp

Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương.

Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn nhất.

Dữ liệu vào: File tên HCN.OUT

- Dòng 1 ghi bốn số n, m, p, q được ghi cách nhau bởi dấu cách.

- n dòng tiếp theo, mỗi dòng ghi m số nguyên dương và cách nhau bởi dấu cách.

Dữ liệu ra: File HCN.OUT, chứa 1 dòng ghi một số nguyên duy nhất S là diện tích lớn nhất cần tìm.

HCN.INP

HCN.OUT

4 7 3 3

1 2 3 1 1 3 4

5 3 1 4 0 1 2

4 6 3 4 7 1 1

9 3 8 10 0 1 0

84

Ví dụ:

1

2

3

1

1

3

4

5

3

1

4

0

1

2

4

6

3

4

7

1

1

9

3

8

10

0

1

0

1
1 tháng 5 2020

var n,m,i,j,p,q,k,tam:byte;
a:array[1..100,1..100] of integer;
b:array[1..10000] of integer;
f:text;
function tong(x,y:integer):integer;
var i,j:integer;
begin
tong:=0;
for i:=x to x+p-1 do
for j:=y to y+q-1 do
tong:=tong+a[i,j];
exit(tong);
end;
begin
assign(f,'HCN.inp');reset(f);
readln(f,n,m,p,q);
for i:=1 to n do
begin
for j:=1 to m do read(f,a[i,j]);
readln(f);
end;
close(f);
assign(f,'HCN.out');rewrite(f);
k:=0;
for i:=1 to n-q+1 do
begin
for j:=1 to m-p+1 do
begin
inc(k);
b[k]:=tong(i,j);
end;
end;
for i:=1 to k-1 do
for j:=k downto i+1 do
if b[j]>b[j-1] then
begin
tam:=b[j];
b[j]:=b[j-1];
b[j-1]:=tam;
end;
writeln(f,b[1]+b[2]);
close(f);
readln;
end.

vui

Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương. Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn...
Đọc tiếp

Cho một bảng các ô vuông đơn vị có kích thước nxm (n, m ≤ 100; n số hàng, m số cột của bảng). Trên mỗi ô vuông đơn vị chứa các số nguyên dương.

Yêu cầu: Hãy tìm ở bảng trên hai hình chữ nhật (có thể giao nhau nhưng không trùng khít lên nhau) có kích thước pxq (p<n; q<m; p là số hàng, q là số cột của hai hình chữ nhật con) sao cho tổng của tất cả các số trên hai hình chữ nhật là lớn nhất.

Dữ liệu vào: File tên HCN.OUT

- Dòng 1 ghi bốn số n, m, p, q được ghi cách nhau bởi dấu cách.

- n dòng tiếp theo, mỗi dòng ghi m số nguyên dương và cách nhau bởi dấu cách.

Dữ liệu ra: File HCN.OUT, chứa 1 dòng ghi một số nguyên duy nhất S là diện tích lớn nhất cần tìm.

HCN.INP

HCN.OUT

4 7 3 3

1 2 3 1 1 3 4

5 3 1 4 0 1 2

4 6 3 4 7 1 1

9 3 8 10 0 1 0

84

Ví dụ:

1

2

3

1

1

3

4

5

3

1

4

0

1

2

4

6

3

4

7

1

1

9

3

8

10

0

1

0

1
12 tháng 2 2020

bài này làm bằng Pascal hả anh?

13 tháng 2 2020

uk

Câu 15 Cho biết màn hình xuất hiện như thế nào với đoạn chương trình sau: d:=0; For i:=1 to 10 do Begin i:= i+1; Write(d,' '); End; A. 10 B. 11 C. 1 2 3 4 5 6 7 8 9 10 D. 0 0 0 0 0 Câu 24 Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1, s2, 2) thì: A. s1 = ‘123’; s2 =...
Đọc tiếp

Câu 15

Cho biết màn hình xuất hiện như thế nào với đoạn chương trình sau:

d:=0;

For i:=1 to 10 do

Begin

i:= i+1;

Write(d,' ');

End;

A. 10

B. 11

C. 1 2 3 4 5 6 7 8 9 10

D. 0 0 0 0 0

Câu 24

Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1, s2, 2) thì:

A. s1 = ‘123’; s2 = ‘12abc’

B. s1 = ‘ab123; s2 = ‘abc’

C. s1 = ‘1abc23’; s2 = ‘abc’

D. s1 = ‘123’; s2 = ‘a123bc’

Câu 31

Vòng lặp nào có biến đếm tự động tăng lên một đơn vị sau một lần thực hiện câu lệnh?

A. For …to…do…

B. For …downto…do…

C. While…do…

D. Repeat…Until…

Câu 32

xâu kí tự không chứa kí tự nào gọi là:

A. Xâu không;

B. Xâu trắng;

C. Không phải là xâu kí tự

D. Xâu rỗng;

Câu 33

Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì ?

for i := length(str) downto 1 do write(str[i]) ;

A. In từng kí tự ra màn hình theo thứ tự ngược

B. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên.

C. In từng kí tự xâu ra màn hình

D. In xâu ra màn hình

Câu 34

hàm Upcase(ch); cho kết quả là:

A. Xâu ch toàn chữ thương;

B. Biến ch thành chữ thường;

C. Chữ cái in hoa tương ứng với ch;

D. Xâu ch toàn chữ hoa;

Câu 35

Với khai báo như sau:

Type mang=array[1..100] of integer;

Var a,b:mang;

c:array[1..50] of integer;

Câu lệnh nào dưới đây đúng nhất?

A. b:=c;

B. a:=c;

C. a:=b;

D. c:=b;

Câu 36

Cho đoạn chương trình sau
If(a< >0) then x:=9 div a

Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?

A. x=0;

B. x là không xác định

C. x=1

D. x= -1

Câu 37

Cho St là biến chuỗi, sau khi thực hiện hai lệnh :
St:= Copy( 'PASCAL VERSION 5.5' , 8, 7) ;
Write(St);
- Kết qủa in lên màn hình là:

A. VERSION

B. PASCAL

C. 5.5

D. VERSION 5.5

Câu 38

với xâu kí tự ta có thể:

A. So sánh hai xâu kí tự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

B. Gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

C. So sánh và gán một biến xâu cho biến xâu.

D. So sánh hai xâu kí tự;

Câu 39

Var A; string[20]; Xâu A có thể chứa?

A. 256 kí tự

B. 20 kí tự

C. Báo lỗi

D. 255 kí tự

Câu 40

Đoạn chương trình sau đưa ra màn hình kết quả gì?

For i:=1 to 10 do write(I,’’);

A. Đưa ra 10 dấu cách

B. 12345678910

C. 10 9 8 7 6 5 4 3 2 1

D. Không đưa ra kết quả gì

Câu 41

Đoạn chương trình sau đây dùng để thực hiện công việc gì?

For i:=1 to n do

If i mod 2 = 0 then Writeln(A[i],’ ‘);

A. In ra màn hình giá trị của các phần tử có chỉ số chẵn trong mảng

B. In ra màn hình giá trị của các phần tử có giá trị chẵn trong mảng

C. In ra màn hình tất cả các phần tử trong mảng

D. Tất cả đều đúng

Câu 42

Cho đoạn chương trình sau
If (a<>0) then x:=9 div a Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?

A. x=0;

B. x= -1

C. x là không xác định

D. x=1

Câu 43

thủ tục Insert(S1,S2,n) thực hiện công việc gì?

A. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1;

B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2;

C. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1;

D. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1;

Câu 44

Cho khai báo biến:
Var A : array[1..5] of Integer;
Chọn lệnh đúng :

A. A := 10 ;

B. A[2] := -6 ;

C. A(3) := 6 ;

D. A[1] := 4/3 ;

Câu 45

Hai xâu kí tự được so sánh dựa trên:

A. Mã của từng kí tự trong các xâu lần lượt từ trái sang phải;

B. Độ dài tối đa của hai xâu;

C. Số lượng các kí tự khác nhau trong 2 xâu;

D. Độ dài thực sự của hai xâu;

Câu 46

Để tìm vị trí xuất hiện đầu tiên của xâu ‘hoa’ trong xâu s ta có thể viết?

A. S1:=’hoa’; I:=pos(s1,’hoa’);

B. I:=pos(s,’hoa’);

C. I:=pos(‘hoa’,’hoa’);

D. I:=pos(’hoa’,s);

Câu 47

phần tử đầu tiên của xâu kí tự mang chỉ số là:

A. Không có chỉ số

B. 0

C. Do người lập trình khai báo

D. 1

Câu 48

Var A: array[1..10] of integer;

Chọn câu lệnh sai trong các câu lệnh sau:

A. A[1]:= 2.5;

B. A[4]:=0;

C. A[2]:= 30;

D. A[3]:=-5;

Câu 49

Sau khi thực hiện đoạn chương trình sau, thì biến X có giá trị là bao nhiêu?
A:= 4 ; B: = 1; X:= 2 ;
IF A + B > 5 THEN X := X + A + B; WRITE (X);

A. 7

B. 0

C. 2

D. 5

Câu 50

để đếm số kí tự là kí tự chữ số trong xâu s, đoạn chương trình nào trong các đoạn chương trình sau thực hiện công việc này (biến d dùng để đếm)

A. d:=0; for i:=1 to length(s) do if (s[i] =’0’) and(s[i]=’9’) then d:=d+1;

B. d:=0; for i:=1 to length(s) do if (s[i] >=0) and(s[i]<=9) then d:=d+1;

C. d:=0; for i:=1 to length(s) do if (s[i] =0) and (s[i]=9) then d:=d+1;

D. d:=0; for i:=1 to length(s) do if (s[i] >=’0’) and(s[i]<=’9’) then d:=d+1;

em xin cảm ơn .

1
30 tháng 4 2020

Câu 15

Cho biết màn hình xuất hiện như thế nào với đoạn chương trình sau:

d:=0;

For i:=1 to 10 do

Begin

i:= i+1;

Write(d,' ');

End;

A. 10

B. 11

C. 1 2 3 4 5 6 7 8 9 10

D. 0 0 0 0 0

Không có đáp án đúng : đáp án đúng 0 0 0 0 0 0 0 0 0 0 0

Câu 24

Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1, s2, 2) thì:

A. s1 = ‘123’; s2 = ‘12abc’

B. s1 = ‘ab123; s2 = ‘abc’

C. s1 = ‘1abc23’; s2 = ‘abc’

D. s1 = ‘123’; s2 = ‘a123bc’

Câu 31

Vòng lặp nào có biến đếm tự động tăng lên một đơn vị sau một lần thực hiện câu lệnh?

A. For …to…do…

B. For …downto…do…

C. While…do…

D. Repeat…Until…

Câu 32

xâu kí tự không chứa kí tự nào gọi là:

A. Xâu không;

B. Xâu trắng;

C. Không phải là xâu kí tự

D. Xâu rỗng;

Câu 33

Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì ?

for i := length(str) downto 1 do write(str[i]) ;

A. In từng kí tự ra màn hình theo thứ tự ngược

B. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên.

C. In từng kí tự xâu ra màn hình

D. In xâu ra màn hình

Câu 34

hàm Upcase(ch); cho kết quả là:

A. Xâu ch toàn chữ thương;

B. Biến ch thành chữ thường;

C. Chữ cái in hoa tương ứng với ch;

D. Xâu ch toàn chữ hoa;

Câu 35

Với khai báo như sau:

Type mang=array[1..100] of integer;

Var a,b:mang;

c:array[1..50] of integer;

Câu lệnh nào dưới đây đúng nhất?

A. b:=c;

B. a:=c;

C. a:=b;

D. c:=b;

Câu 36

Cho đoạn chương trình sau
If(a< >0) then x:=9 div a

Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?

A. x=0;

B. x là không xác định

C. x=1

D. x= -1

Câu 37

Cho St là biến chuỗi, sau khi thực hiện hai lệnh :
St:= Copy( 'PASCAL VERSION 5.5' , 8, 7) ;
Write(St);
- Kết qủa in lên màn hình là:

A. VERSION

B. PASCAL

C. 5.5

D. VERSION 5.5

Câu 38

với xâu kí tự ta có thể:

A. So sánh hai xâu kí tự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

B. Gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

C. So sánh và gán một biến xâu cho biến xâu.

D. So sánh hai xâu kí tự;

Câu 39

Var A; string[20]; Xâu A có thể chứa?

A. 256 kí tự

B. 20 kí tự

C. Báo lỗi

D. 255 kí tự

Câu 40

Đoạn chương trình sau đưa ra màn hình kết quả gì?

For i:=1 to 10 do write(I,’’);

A. Đưa ra 10 dấu cách

B. 12345678910

C. 10 9 8 7 6 5 4 3 2 1

D. Không đưa ra kết quả gì

Câu 41

Đoạn chương trình sau đây dùng để thực hiện công việc gì?

For i:=1 to n do

If i mod 2 = 0 then Writeln(A[i],’ ‘);

A. In ra màn hình giá trị của các phần tử có chỉ số chẵn trong mảng

B. In ra màn hình giá trị của các phần tử có giá trị chẵn trong mảng

C. In ra màn hình tất cả các phần tử trong mảng

D. Tất cả đều đúng

Câu 42

Cho đoạn chương trình sau
If (a<>0) then x:=9 div a Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?

A. x=0;

B. x= -1

C. x là không xác định

D. x=1

Câu 43

thủ tục Insert(S1,S2,n) thực hiện công việc gì?

A. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1;

B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2;

C. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1;

D. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1;

Câu 44

Cho khai báo biến:
Var A : array[1..5] of Integer;
Chọn lệnh đúng :

A. A := 10 ;

B. A[2] := -6 ;

C. A(3) := 6 ;

D. A[1] := 4/3 ;

Câu 45

Hai xâu kí tự được so sánh dựa trên:

A. Mã của từng kí tự trong các xâu lần lượt từ trái sang phải;

B. Độ dài tối đa của hai xâu;

C. Số lượng các kí tự khác nhau trong 2 xâu;

D. Độ dài thực sự của hai xâu;

Câu 46

Để tìm vị trí xuất hiện đầu tiên của xâu ‘hoa’ trong xâu s ta có thể viết?

A. S1:=’hoa’; I:=pos(s1,’hoa’);

B. I:=pos(s,’hoa’);

C. I:=pos(‘hoa’,’hoa’);

D. I:=pos(’hoa’,s);

Câu 47

phần tử đầu tiên của xâu kí tự mang chỉ số là:

A. Không có chỉ số

B. 0

C. Do người lập trình khai báo

D. 1

Câu 48

Var A: array[1..10] of integer;

Chọn câu lệnh sai trong các câu lệnh sau:

A. A[1]:= 2.5;

B. A[4]:=0;

C. A[2]:= 30;

D. A[3]:=-5;

Câu 49

Sau khi thực hiện đoạn chương trình sau, thì biến X có giá trị là bao nhiêu?
A:= 4 ; B: = 1; X:= 2 ;
IF A + B > 5 THEN X := X + A + B; WRITE (X);

A. 7

B. 0

C. 2

D. 5

Câu 50

để đếm số kí tự là kí tự chữ số trong xâu s, đoạn chương trình nào trong các đoạn chương trình sau thực hiện công việc này (biến d dùng để đếm)

A. d:=0; for i:=1 to length(s) do if (s[i] =’0’) and(s[i]=’9’) then d:=d+1;

B. d:=0; for i:=1 to length(s) do if (s[i] >=0) and(s[i]<=9) then d:=d+1;

C. d:=0; for i:=1 to length(s) do if (s[i] =0) and (s[i]=9) then d:=d+1;

D. d:=0; for i:=1 to length(s) do if (s[i] >=’0’) and(s[i]<=’9’) then d:=d+1;

uses crt;

var a:array[1..100]of byte;

i,n,t:byte;

begin

clrscr;

write('n='); readln(n);

for i:=1 to n do

begin

write('a[',i,']='); readln(a[i]);

end;

{----------------------------cau-a----------------------------}

t:=0;

for i:=1 to n do

t:=t+a[i];

writeln(t);

{---------------------------------cau-b--------------------------------}

for i:=1 to n do write(a[i]:4);

readln;

end.

6 tháng 4 2020

Cảm ơn ad

CHUYÊN ĐỀ : CÁC BÀI TOÁN VỀ THỜI GIAN (Nhập xuất trên file) 1/ ĐỔI GIỜ Dữ liệu vào : -Dòng 1: ba số h m s tương ứng với số giờ, phút, giây -Dòng 2 : số G là số giây Dữ liệu ra : -Dòng 1: In ra một số S1 là số giây đổi ra từ số giờ, số phút, số giây tương ứng -Dòng 2 : In ra ba số h1 m1 s1 là số giờ, số phút và số giây tương ứng với số giây G Ví dụ...
Đọc tiếp

CHUYÊN ĐỀ : CÁC BÀI TOÁN VỀ THỜI GIAN

(Nhập xuất trên file)

1/ ĐỔI GIỜ

Dữ liệu vào :

-Dòng 1: ba số h m s tương ứng với số giờ, phút, giây

-Dòng 2 : số G là số giây

Dữ liệu ra :

-Dòng 1: In ra một số S1 là số giây đổi ra từ số giờ, số phút, số giây tương ứng

-Dòng 2 : In ra ba số h1 m1 s1 là số giờ, số phút và số giây tương ứng với số giây G

Ví dụ :

DOIGIO.INP

DOIGIO.OUT

0 50 31

8147

3031

2 15 47

2/ XÂU THỜI GIAN

Một xâu kí tự biểu diễn thời gian là xâu kí tự bao gồm các số và các chữ h, m, s tương ứng với giờ, phút và giây.

Ví dụ : cho xâu 1h50m24s nghĩa là : 1 giờ 50 phút 24 giây.

Cho một xâu kí tự biểu diễn thời gian, em hãy cho biết thời gian đó bằng bao nhiêu giây ?

Ví dụ :

XAUTHOIGIAN.INP

XAUTHOIGIAN.OUT

1h50m24s

6624s

3/CỘNG, TRỪ THỜI GIAN

Nhập hai lượng thời gian (mỗi lượng dưới dạng giờ, phút, giây)

In ra tổng hai thời gian, và hiệu hai thời gian (thời gian lớn trừ thời gian bé)

Ví dụ :

ADDTIME.INP

ADDTIME.OUT

2h43m18s

0h54m23s

3h37m41s

1h48m55s

11h25m3s

23h4m19s

34h29m22s

11h39m16s

4/AI CHẠY NHANH NHẤT

Trong một cuộc thi chạy người ta đánh số thứ tự các vận động viên từ 1 đến N, và ghi lại thời gian chạy của từng vận động viên tương ứng.

Nhiệm vụ của em là tìm ra số thứ tự của người chạy nhanh nhất

Dữ liệu vào : Gồm N + 1 dòng

-Dòng 1: Ghi N là số lượng các vận động viên

Dòng 2 ..Dòng N + 1: Dòng i +1 ghi thời gian chạy của vận động viên thứ i (giờ, phút, giây)

Dữ liệu ra :

-Dòng 1: Ghi số K là số thứ tự của vận động viên chạy nhanh nhất, nếu có nhiều vận động viên chạy nhanh nhất thì ghi tất cả các thứ tự tương ứng trên cùng một dòng

Ví dụ :

CHAYNHANH.INP

CHAYNHANH.OUT

5

1h24m56s

2h08m01s

1h32m0s

0h59m34s

1h15m49s

4

5/NĂM NHUẬN

-Nhập vào một số nguyên dương N

Hãy kiểm tra xem năm N có là năm nhuận hay không ?

-Nếu có ghi ‘Yes’

-Nếu không thì ghi ‘No’ và năm nhuận gần năm N nhất là năm nào ? In độ chênh lệch tương ứng

Ví dụ :

NAMNHUAN.INP

NAMNHUAN.OUT

1994

Yes

1999

No

+1

6/(5.1)SỐ NGÀY CỦA MỘT THÁNG

Nhập vào số tháng.

In ra số ngày của tháng đó.

Ví dụ :

DAYSOFM.INP

DAYSOFM.OUT

12

31

2 1990

28

7/(5.2) NGÀY HỢP LỆ

Nhập vào ba số a b c tương ứng là ngày tháng năm .

Hãy kiểm tra xem ngày đó có hợp lệ không

(Thế nào là ngày tháng hợp lệ ?)

Ví dụ :

DAYLIFE.INP

DAYLIFE.OUT

12 8 2013

1

31 4 1999

0

8/(5.3) NGÀY HỢP LỆ PRO

Nhập vào một xâu kí tự chỉ bao gồm các chữ số từ 0 đến 9 biểu diễn một ngày nào đó có thể hợp lệ hay không

Ví dụ :

- xâu 2311990 biểu diễn ngày 23 tháng 1 năm 1990, dễ thấy xâu kí tự này không thể biểu diễn hợp lệ một ngày tháng nào khác ?

- xâu 2112013 biểu diễn hai ngày khác nhau là :

ngày 2 – 11 – 2013 và ngày 21 – 1 2013

- xâu 5442014 không biểu diễn một tháng nào hợp lệ.

DAYLIFEPRO.INP

DAYLIFEPRO.OUT

2122013

Yes

2 – 11 – 2013

21 – 1 – 2013

5442014

No.

9/ TỔNG SỐ NGÀY

Tính tổng số ngày tính từ ngày A tháng B đến ngày C tháng D trong cùng một năm

Dữ liệu vào :

-Dòng 1: hai số nguyên A và B (A: số ngày, B: số tháng).

-Dòng 2: hai số nguyên C và D (C: số ngày, D: số tháng).

Dữ liệu ra :

-Dòng 1: tổng số ngày

Ví dụ :

SUMDAYS.INP

SUMDAYS.OUT

16 3

20 4

36

10/ SẮP XẾP NGÀY

Cho một danh sách N ngày (ngày-tháng-năm) .

Hãy sắp xếp các ngày theo thứ tự từ xa nhất đến gần nhất.

Dữ liệu vào :gồm N + 1 dòng

-Dòng 1: Ghi số nguyên dương N

-Dòng 2 .. Dòng N+1 : mỗi dòng ghi ba số A, B và C tương ứng với ngày – tháng – năm.

Dữ liệu ra :

-N dòng, mỗi dòng là một ngày – tháng – năm đã được sắp xếp.

Ví dụ :

SORTDATE.INP

SORTDATE.OUT

4

15 4 2013

8 9 2014

15 1 2003

7 2 1999

7 2 1999

15 1 2003

15 4 2013

8 9 2014

10

23 1 1900

02 12 2000

14 7 545

20 10 545

02 1 545

10 3 1900

27 4 2000

12 1 1900

12 5 2000

1 1 545

1
17 tháng 9 2019

Mình sẽ nêu ý tưởng nhé.

1/ Bạn chỉ cần áp dụng

1h=60p ; 1p=60 giây thôi

Ý 1: Bạn đổi h và p ra

Ví dụ : g=g+h*60*60;

g:=g+p*60;

Ý 2: Như ý 1 bạn chỉ cần chia tối đa của phút là 60 nếu > thì + dồn cho giờ

2/ Bạn đổi xâu sang thành số và nếu s[1] hoặc s[2] là số thì chuyển qua biến giờ . Tiếp theo chuyển phút. Và nhân như theo ý 1 bài 1.

3/ Áp dụng ý tưởng các câu 1 và 2 .

Các bài còn lại tương tự

17 tháng 9 2019

ok